电子点阵设计课程的课堂记录与笔记
一、8*8点阵显示图形所用主要器件
1.1 8*8点阵
(1)内部结构
点阵存在两种不同的类型:
①左图为(行)共阳;
②右图为(行)共阴。
工艺和使用上二者无差别,需要在使用前进行测试确认其属性。
在后续取子模时,如果行接的是二极管的阳极,列接的是二极管的阴极,则采用行扫描时列取模方式即为阳码,采用列扫描时行的取模方式即为阴码。对应的若行接二极管阴极,列接二极管阳极,则采用行扫描时取模方式为阴码,采用列扫描时取模方式为阳码。
(2)8*8点阵工作原理及控制
8*8点阵显示图形实质上是利用行列分别输入的01信号,选通某一确定节点上的发光二极管,进行发光。
以行共阳LED点阵为例,只要其对应的RO、CO轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则只需ROW(1)= 1,COL(1)= 0,即9脚给高电平、13脚给低电平。
图中POS1-8对应8*8点阵的8的阳极接口,NEG1-8对应8*8点阵的8的阴极接口。
阳极由时钟电路给入扫描信号,阴极连接74HC595输出的8位信号,在每一扫描周期内进行选通。
(3)8*8LED点阵扩展为16*16LED点阵
显然,需要4片8*8点阵屏进行拼装。
同一列2片8*8点阵屏,阴极并联;同一行2片8*8点阵屏,阳极并联。
1.2 74LS138
(1)概述
74LS138 为3线-8线译码器,共有74LS138D和74LS138N两种线路结构型式。74LS138D为军用,74LS138N为民用。
(2)功能简介
① 当一个选通端(E1)为高电平,另两个选通端(/E2)和(/E3)为低电平时,可将地址端(A0、A1、A2)的二进制编码在Y0至Y7对应的输出端以低电平译出。(即输出为Y0至Y7的非)比如:A2A1A0=110时,则Y6输出端输出低电平信号。
② 利用 E1、/E2和/E3可级联扩展成 24 线译码器;若外接一个反相器还可级联扩展成 32 线译码器。
③ 若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器。
④ 可用在8086的译码电路中,扩展内存。
(3)基本参数
(4)引脚说明
① A0~A2:地址输入端
② E1:选通端
③ /E2、/E3:选通端(低电平有效)
④ Y0~Y7:输出端(低电平有效)
⑤ VCC:电源正
⑥ GND:地
⑦ A0~A2对应Y0——Y7:A0,A1,A2以二进制形式输入,然后转换成十进制,对应相应Y的序号输出低电平,其他均为高电平。
(5)真值表
输入 |
输出 |
||||||||||||
E1 |
/E2 |
/E3 |
A2 |
A1 |
A0 |
/Y0 |
/Y1 |
/Y2 |
/Y3 |
/Y4 |
/Y5 |
/Y6 |
/Y7 |
× |
1 |
× |
× |
× |
× |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
× |
× |
1 |
× |
× |
× |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
× |
× |
× |
× |
× |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1.3 74LS161
(1)概述
4HC161和74LS161都是常用的四位二进制可预置的同步加法计数器,74HC161是CMOS型,74LS161是TTL型。它可以灵活的运用在各种数字电路,以及单片机系统中实现分频器等很多重要的功能。
(2)功能简介
⑧ 异步清零功能:当/CLR=0时,不论有无时钟脉冲CLK和其他信号输入,计数器被清零,即QD~QA=0000。
⑨ 同步并行置数功能:当/CLR=1,/LD=0时,在输入时钟脉冲CLK上升沿的作用下,并行输入的数据dcba被置入计数器,即QD~QA=DBCA。
⑩ 计数功能:当/LD=/CLR=ENP=ENT=1,当CLK端输入计数脉冲时,计数器进行二进制加法计数
⑪ 保持功能:当/LD=/CLR=1时,且ENP和ENT中有“0”时,则计数器保持原来状态不变。
(3)基本参数
(4)引脚说明
⑫ A~D:并行输入
⑬ ENP:计数启用并行输入
⑭ ENT:计数启用涓流输入
⑮ CLK:时钟输入
⑯ /LD:为同步置数控制端
⑰ /CLR:异步清零控制端
⑱ QA~QD:并行输出
⑲ RCO:进位输出输出
(5)真值表
/CLR |
/LD |
ENT |
ENP |
工作模式 |
L |
X |
X |
X |
清零 |
H |
L |
X |
X |
置数 |
H |
H |
H |
H |
计数 |
H |
H |
L |
X |
保持(不变) |
H |
H |
X |
L |
保持(不变) |
1.4 AT28C64B高性能EEPROM
(1)概述
AT28C64B是一个高性能的电可擦除和可编程只读只读存储器( EEPROM)中。它的内存64K是由8位,8,192字。与Atmel先进的非易失性CMOS技术,该器件还提供制造访问时间为150 ns的只有220毫瓦的功耗。当该装置是取消选择,在CMOS待机电流小于100微安。
(2)特点及参数
l 快速读取访问时间:150纳秒
l 自动页写操作
- 内部地址和数据锁存为64字节
l 快速写周期时间
- 页写周期时间: 10 ms最大(标准),2 ms最大(选项)
- 1到64字节页写操作
l 低功耗
- 40毫安工作电流
- 100 μA CMOS待机电流
l 硬件和软件数据保护
l 数据轮询和切换位写检测结束
l 高可靠性的CMOS技术
- 耐力: 100,000次
- 数据保存:10年单5V±10%供应
l CMOS和TTL兼容输入和输出
l JEDEC批准字节宽引脚
l 工业温度范围
l 绿色(无铅/无卤化物)的包装选项
(3)引脚结构
AO- A12:地址
CE:芯片使能
OE:输出使能
WE:写使能
I/00- I/07:数据输入输出
NC:无连接
DC:不连接
1.5 Max7219多位LED显示驱动器
(1)概述
MAX7219 是美国MAXIM 公司推出的多位LED 显示驱动器,采用3 线串行接口传送数据,可直接与单片机接口连接,用户能方便修改其内部参数,以实现多位LED 显示。它内含硬件动态扫描电路、BCD译码器、段驱动器和位驱动器。此外,其内部还含有8X8 位静态RAM,用于存放8 个数字的显示数据。显然,它可直接驱动64 段LED点阵显示器。当多片MAX7219 级联时,可控制更多的LED 点阵显示器。显示的数据通过单片机数据处理后,送给MAX7219 显示。
(2)功能简介
一片MAX7219可驱动8个7段(包括小数点共8段)数字LED、LED条线图形显示器、或64个分立的LED发光二级管。该芯片具有10MHz传输率的三线串行接口可与任何微处理器相连,只需一个外接电阻即可设置所有LED的段电流。它的操作很简单,MCU只需通过模拟SPI三线接口就可以将相关的指令写入MAX7219的内部指令和数据寄存器,同时它还允许用户选择多种译码方式和译码位。此外它还支持多片7219串联方式,这样MCU就可以通过3根线(即串行数据线、串行时钟线和芯片选通线)控制更多的数码管显示。
(3)关键特性
l 10MHz串行接口
l 独立的LED段控制
l 译码/非译码位选择
l 150µA低功耗关断(数据保持)
l 数字和模拟亮度控制
l 上电时处于全灭状态
l 驱动共阴极LED显示器
l 段驱动器的摆率限制功能有助于降低EMI (MAX7221)
l SPI、QSPI、MICROWIRE串行接口(MAX7221)
l 24引脚DIP和SO封装
(4)外部引脚分配和功能及内部结构
① 外部引脚分配
DIN:串行数据输入端
DOUT:串行数据输出端,用于级连扩展
LOAD/CS:数据装载信号输入
CLK:移位时钟脉冲输入
DIG0~DIG7:8位LED位选线,从共阴极LED中吸入电流
SEGA~SEGG:7段驱动
SEG DP:小数点驱动
ISET:硬件亮度调节端
V+:正电源
GND:接地
② 内部结构
(5)串行数据格式
16位地址/数据移位寄存器接收串行数据,实现串/并变换。16位数据含义如下:
D7~D0:写入内部RAM和功能寄存器的数据。
D8~D11:内部RAM和功能寄存器地址。
D12~D15:无定义。
地址译码器是一个4~16线译码器,用于选择数据存放单元,在LOAD端口信号作用下,将接收数据送入指定单元;
8字节双端口静态存储器存放接收数据和提供动态显示数据;
B译码和不译码电路对RAM数据进行BCD译码或直接送显示;
段码电流参考电路、亮度脉冲产生调制器实现对显示器的亮度控制,段码电流参考电路由硬件调节显示器亮度;动态扫描控制器实现由硬件控制动态扫描显示。
LED段/位驱动器提供显示器的1段和1位点亮时的电流。
(6)可寻址的数据寄存器和控制寄存器
① 内部RAM地址01 ~ 08H分别对应于DIGO一DIG7。
② 译码方式寄存器(地址09H):该寄存器的8位二进制数的各位分别控制8个LED显示器的译码方式。当高电平时,选择BCD-B译码模式,当低电平时选择不译码模式(即送来数据为字型码)。
③ 扫描界限寄存器(地址0BH):该寄存器中DO ~ D3位数据设定值为0 ~ 7H,设定值表示显示器动态扫描个数位1 ~ 8。
④ 亮度控制寄存器(0AH):共有16级可选择,用于设置LED的显示亮度,从0xX0~0xXF
⑤ 停机寄存器(地址0CH):当D0=0时,MAX721 处于停机状态;当D0=1时,MAX7219处于正常工作状态。
⑥ 显示测试寄存器(地址0FH):当D0=0时,MAX7219 按设定模式正常工作;D0=1时,MAX7219处于测试状态。在该状态下,不管MAX7219处于什么模式,全部LED将按最大亮度显示。
(7)读写时序
MAX7129是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。
MAX7129的控制字格式如下:
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 (MSB) |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 (LSB) |
X |
X |
X |
X |
地址Address |
数据Data |
如图,工作时,MAX7219规定一次接收16位数据,在接收的16位数据中:D15~D12可以与操作无关,可以任意写入,D11~D8决定所选通的内部寄存器地址,D7~D0为待显示数据或是初始化控制字。在CLK脉冲作用下,DIN的数据以串行方式依次移入内部16位寄存器,然后在一个LOAD上升沿作用下,锁存到内部的寄存器中。注意在接收时,先接收最高位D16,最后是D0,因此,在程序发送时必须先送高位数据,在循环移位。工作时序图见下图:
由于51是8位单片机故需要分两次来送数据。
二、8*8点阵显示爱心原理
2.1LED点阵扫描显示方式
LED一般采用扫描式显示,主要分为三种方式:点扫描、行扫描、列扫描。
充分利用人眼的暂留效应,实现动画效果,同时扫描时应注意亮灯留存时间,即扫描的间隔,一般控制于0.05至0.2秒水平。
详细实现如下:
(1)点扫描
逐点进行信号输入,效率低,不常用。
(2)行扫描
行扫描即是先让第一行全部置于有效位,再送对应亮灯位置所需的列码。随后按按一定扫描间隔,用同样的方法依次显示所有行,8行显示完成即完成一次完整的行扫描。
(3)列扫描
列扫描即是先让第一列全部置于有效位,再送对应亮灯位置所需的列码。随后按按一定扫描间隔,用同样的方法依次显示所有列,8列显示完成即完成一次完整的列扫描。
2.2使用MAX7219驱动LED点阵接线方式电路原理图
行扫描模式
2.3使用74LS138、74LS161、AT28C64驱动LED点阵接线方式电路原理图
ROM从IO0-IO7输出8位二进制码,到8*8点阵的NEGDP、NEG A-NEG G,驱动点阵阳极。3-8译码器输出,进行逐行给二极管阴极0电平的行扫描模式。
三、8*8点阵显示爱心项目实施
3.1使用MAX7219驱动LED点阵
(1)接线方式
(2)程序实现流程图
(3)项目代码
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
//定义MAX7219端口
sbit Max7219_pinCLK = P2^2;
sbit Max7219_pinCS = P2^1;
sbit Max7219_pinDIN = P2^0;
uchar code disp1[8]={0x66,0x99,0x81,0x81,0x42,0x24,0x18,0x00};//爱心
//设定延迟时间,单位毫秒
void Delay_xms(uint x)
{
uint i,j;
for(i=0;i<x;i++) //两层空循环
for(j=0;j<112;j++)
;
}
//向Max7219(U3)写入字节
void Write_Max7219_byte(uchar DATA)
{
uchar i;
Max7219_pinCS = 0; //LOAD/CS引脚低电平,数据写入使能
for(i=8;i>=1;i--)
{
Max7219_pinCLK = 0; //移位时钟低电平输入
Max7219_pinDIN = DATA&0X80; //数据输入与80相与,取最高位
DATA = DATA<<1;
Max7219_pinCLK = 1; //移位时钟脉冲高电平输入,将数据写入内部存储器
}
}
//向Max7219写入数据
void Write_Max7219(uchar address,uchar dat)
{
Max7219_pinCS = 0; //LOAD/CS引脚低电平,数据写入使能
Write_Max7219_byte(address);//写入地址
Write_Max7219_byte(dat); //写入数据
Max7219_pinCS = 1; //LOAD/CS引脚高电平,数据装载使能
}
//初始化Max7219
void Init_Max7219(void)
{
Write_Max7219(0x09,0x00); //初始化译码寄存器,低电平选择不译码模式
Write_Max7219(0x0a,0x03); //初始化亮度控制寄存器,选择03档亮度(0-16档可选)
Write_Max7219(0x0b,0x07); //初始化扫描界限寄存器,输入07表示动态扫描个数为8
Write_Max7219(0x0c,0x01); //初始化停机寄存器,输入01,MAX7219处于正常工作状态
Write_Max7219(0x0f,0x00); //初始化显示测试寄存器,输入0,按设定模式正常工作
}
//主函数
void main(void)
{
uchar i;
Delay_xms(50); //延迟50ms
Init_Max7219(); //初始化Max7219
for(i=1;i<9;i++) //循环扫描显示
Write_Max7219(i,disp1[i-1]); //在i行输入存储爱心点阵对应行的数据
(4)实验结果
3.2使用74LS138、74LS161、AT27C64等驱动点阵的基础电路Proteus仿真结果
3.3使用74LS138、74LS161、AT28C64驱动LED点阵
(1)接线方式
(2)程序实现流程图
(3)项目代码
① 在ROM模拟部分进行图形的二进制数组定义
...
code byte memory[8] = { 0x66,0x99,0x81,0x81,0x42,0x24,0x18,0x00 };
② 定义写字节函数,并调用模拟ROM函数实现像物理载体MAX7219写数据
//向Max7219写入字节
void Write_Max7219_byte(byte DATA)
{
byte i;
Max7219_CS = 0;
for(i=8;i>=1;i--)
{
Max7219_CLK = 0;
Max7219_DIN = DATA&0X80;
DATA = DATA<<1;
Max7219_CLK = 1;
}
}
//向Max7219写入数据 地址限制在了8位 读者可自行调整
void Write_Max7219(byte address, byte dat)
{
Max7219_CS = 0;
Write_Max7219_byte(address);
Write_Max7219_byte(dat);
Max7219_CS = 1;
}
void Init_Max7219(void) //初始化Max7219芯片
{
Write_Max7219(0x09,0x00);
Write_Max7219(0x0a,0x03);
Write_Max7219(0x0b,0x07);
Write_Max7219(0x0c,0x01);
Write_Max7219(0x0f,0x00);
}
③ 主函数实现输出图形
void main(void)
{
byte i;
Delay(50);
Init_Max7219();
for(i=1;i<9;i++) //这里的示例语句将向点阵输出一次显示 如果想要一直显示则应该将其放入真循环
{
Write_Max7219(i,GetRomData(i - 1));
}
}
(4)实验结果
四.用单片机模拟ROM的方法
4.1简介
ROM芯片,是数字电路的重要组成成分之一。想要在电路中读取储存好的数据,就必须要用到相应的ROM芯片。ROM芯片的规格和型号极其繁多,再加上有些ROM芯片难以获取,甚至于某些芯片早已停产,无论是测试还是使用时都很不方便。因此可以采取使用单片机代替ROM芯片的办法,一是因为常见的单片机,例如C51,C52等系列产量很大,容易获取;二是仅需要修改程序就可适用于各种场景;三是可以在无储存器芯片的情况下进行预先的电路测试,方便调试等。下面将会以C52系列的STC89C52单片机模拟AT28C64EEROM芯片为例,讲述如何使用单片机进行ROM芯片的模拟和替代。
4.2模拟ROM方法
(1) 原理简介
单片机模拟ROM芯片的原理是,使得ROM芯片的引脚输入与单片机对应的引脚一致时,储存的数据一致,输出的数据相一致。但单片机的内部的RAM通常仅用于存储程序运行时的数据,通常规格较小。因此用于模拟ROM芯片所用到的单片机的储存空间,其实是单片机的ROM部分。本质上来讲,这里使用单片机来模拟的是一块连续的储存空间,而不是ROM芯片的各种物理特性,例如擦除方式等,单片机的ROM部分在生产时实际上使用的是Flash器件。
注意ROM芯片的控制位对输出数据的影响。注意ROM芯片OE等控制位发生作用的电平高低,以及这些控制位之间决定芯片当前状态的优先级。这一点需要在程序中写入相应的控制流。另外当ROM芯片的引脚处于高阻态时,应当不能向引脚内输入数据。
关于ROM芯片所附带的其他各种功能,例如保证数据安全性的检测,防止数据信号波动等功能,不在本题目的讨论范围内,因此不加赘述。
(2) 模拟方法
在这里我们使用C52系列的单片机,具体型号为STC89C52,模拟AT28C64 EEROM芯片储存数据。利用程序(见后文)使得单片机的功能与ROM芯片相一致。将所需的程序和数据写入单片机内。当单片机工作时,按照映射的引脚,读取CE,OE等控制位的信号,当处于相应的状态时,单片机将读取地址引脚上的数据,然后将将其在程序预留的空间中对应地址的数据读出,将其输出到I/O引脚上。这里的程序将AT28C64芯片的地址接口和控制位映射到了STC89C52单片机的P0,P2端口上;将AT28C64芯片的输入输出接口映射到了单片机的P1端口上。程序启动之后,单片机将会持续地读入控制位的信号。
当单片机的P2:5引脚,即模拟的CE引脚接入高电平时,P1端口,即模拟的I/O端口将处于高阻态,无法输入输出数据;当P2:6即模拟OE处于低电平,或者P2:7模拟WE处于高电平时,单片机将会向P1即模拟的I/O端口输出数据,输出的数据来自于模拟地址引脚上信号决定的储存位置。至此,完成了对ROM芯片数据存储功能的模拟。
实际操作中有一些地方需要注意。首先,未接入的端口是无法确定其电平的高低的,所以不用的端口应该统一接到低电平处,否则可能产生错误。例如,在不使用高地址位时,如果不将其接到低电平处,会使得程序读取到错误的地址,从而输出错误的数据。
其次,单片机模拟的ROM,是处于不断刷新的状态之中的。每次循环程序所用的时间决定了刷新的频率,这一频率与读取ROM的单片机不尽相同,从而使得信号不同步,某些时候需要进行延时的调整。所以对ROM的这一模拟并不能精确地反映ROM工作的状态。一般情况下单片机调用自身的ROM即可。
五.AT28C64芯片
5.1基本原理
AT28C64是一种高性能的,可电擦除的编程只读储存器,即EEROM芯片。它总储存空间为64Kbit,按照8K字,每个字8bit的方式进行组织。该芯片可提供150ns内的高速存取,工作功率低至220mW。当片选信号为高电位,芯片待机时的电流小于100uA。
该芯片有13根地址线,数据宽度为8bit,读取方式类似于静态随机存取储存器,即SROM,不需要任何外加的元器件,在写入前自动擦除。当CE和OE为低电平,WE为高电平时,由地址引脚上数据决定的储存单元中的数据被读出。无论CE或OE哪一个控制位为高电平时,输出引脚上都呈现为高阻状态。这种双信号控制机制给设计者防止总线冲突带来灵活性。
CE信号为芯片选择信号,实际上也作为电源控制信号。当其为高电平时,储存器芯片进入低功耗待机状态,这时储存器芯片呈现出高阻状态,并与OE信号无关。
为了确保数据的完整性与安全性,特别是在上电和掉电过程中,AT28C64采用了以下方法实现数据保护:
利用内部检测电路对电源电压Vcc进行检测。当芯片检测到的电压低于规定的阈值时,芯片将禁止内部非易失性程序初始化。芯片内部有一个信号滤波电路,可以防止信号波动。
在上电和掉电期间都可以通过保持WE或者CE为高电平,或者OE为低电平来*字节写入周期。
此外,AT28C64EEROM芯片还有识别查询数据位完成写入周期的功能,芯片识别功能,全片擦除功能等,但这些功能与本文的目标关系不大,因此不赘述。
5.2 AT28C64引脚图
5.3引脚功能说明
引脚 |
功能 |
A0-A12 |
地址线 |
CE |
片选信号,低电平有效 |
OE |
输出信号,低电平有效 |
WE |
写入信号,低电平有效 |
I/O0- I/O7 |
输入输出线 |
VCC |
接电源 |
GND |
接地 |
NC |
无连接 |
六.程序代码
6.1 ROM模拟部分
#include<stdio.h>
#include<reg52.h>
#define byte unsigned char
#define uint unsigned int
sbit A0=P0^0; //定义地址线
sbit A1=P0^1;
sbit A2=P0^2;
sbit A3=P0^3;
sbit A4=P0^4;
sbit A5=P0^5;
sbit A6=P0^6;
sbit A7=P0^7;
sbit A8=P2^0;
sbit A9=P2^1;
sbit A10=P2^2;
sbit A11=P2^3;
sbit A12=P2^4;
sbit _CE = P2^5; //定义片选信号
sbit _OE = P2^6; //定义输出信号
sbit _WE = P2^7; //定义写入信号
sbit D0=P1^0; //定义数据线
sbit D1=P1^1;
sbit D2=P1^2;
sbit D3=P1^3;
sbit D4=P1^4;
sbit D5=P1^5;
sbit D6=P1^6;
sbit D7=P1^7;
code byte memory[8] = { 0x66,0x99,0x81,0x81,0x42,0x24,0x18,0x00 }; //在程序中定义ROM需要写入的内容 //注意写入内容的长度,读取时注意读取数组的界限以防越界
//这里的示例用8个字节长度的内容
uint GetAddress() //从地址线上读取地址
{
uint A = P0; //这里的示例因为内容的长度较短,只使用低8位的地址
/*
uint A = P0;
uint t = P2;
t <<= 3; //高位地址只取5位
t >>= 3;
A += t;*/ //读者可以自行根据需要用到的地址线长度,重写程序和用到的引脚来改变读取的地址长度
return A;
}
void Refresh()
{
uint A = GetAddress();
if(_CE) //片选信号为高电平时不输出内容
{
return;
}
if(!_OE || _WE) //OE信号为高电平时,向数据端口输出数据
{
P1 = memory[A];
}
}
void main()
{
while(1) //单片机不断刷新以更新数据状态
{
Refresh();
}
}
6.2时序与逻辑
时序图以地址0-5的数据为例:
由于单片机模拟ROM的刷新频率远高于电路中地址段的时钟信号频率,因此可以认为数据的输出变化是即时的。
当地址端口数据发生变化时,只有当CE和OE信号同时处于低电平时,模拟ROM才会接受地址端口上的数据。
随即模拟ROM将会读取地址线上的数据,将其作为地址,单片机程序将会读取代码中写入储存空间相应地址的数据然后将其输出到数据端口。
七.74HC595芯片介绍
7.1基本原理
74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7'输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。
7.2 74HC595芯片引脚图
如图7.1所示为74HC595芯片的引脚图。
7.3 74HC595引脚功能说明
符号 |
引脚 |
描述 |
Q0-Q7 |
第15脚,第1-7脚 |
8位并行数据输出 |
GND |
第8脚 |
地 |
Q7’ |
第9脚 |
串行数据输出 |
/MR |
第10脚 |
主复位(低电平有效) |
SH_CP |
第11脚 |
数据输入时钟线 |
ST_CP |
第12脚 |
输出存储器锁存时钟线 |
/OE |
第13脚 |
输出有效(低电平有效) |
DS |
第14脚 |
串行数据输入 |
VCC |
第16脚 |
电源 |
7.4 74HC595芯片时序图
如图7.2所示为74HC595芯片时序图。
7.5 74HC595芯片内部电路图
如图7.3所示为74HC595芯片内部电路图。
7.6 74HC595芯片真值表
输入管脚 |
输出管脚 |
||||
SER |
SRCLK |
/SRCLR |
RCLK |
/OE |
|
X |
X |
X |
X |
H |
QA-QH输出高阻 |
X |
X |
X |
X |
L |
QA-QH输出有效值 |
X |
X |
L |
X |
X |
移位寄存器清零 |
L |
上升沿 |
H |
X |
X |
移位寄存器存储L |
H |
上升沿 |
H |
X |
X |
移位寄存器存储H |
X |
上升沿 |
H |
X |
X |
移位寄存器状态保持 |
X |
X |
X |
上升沿 |
X |
移位寄存器锁存状态值 |
X |
X |
X |
下降沿 |
X |
移位寄存器状态保持 |
7.7芯片的使用方法
74HC595的数据端:
Q0--Q7: 八位并行输出端,可以直接控制数码管的8个段。
Q7': 级联输出端。将它接下一个595的DS端。
DS: 串行数据输入端,级联的话接上一级的Q7'。
74HC595的控制端说明:
/MR(10脚): 低电平时将移位寄存器的数据清零。通常接到VCC防止数据清零。
SH_CP(11脚):上升沿时数据寄存器的数据移位。Q0->Q1->Q2-->Q3-->...-->Q7;下降沿移位寄存器数据不变。
ST_CP(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常我将ST_CP置为低电平,当移位结束后,在ST_CP端产生一个正脉冲,更新显示数据。
/OE(13脚): 高电平时禁止输出(高阻态)。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。
具体工作方式 :
第一步:目的:将要准备输入的位数据移入74HC595数据输入端上。
方法:送位数据到74HC595。
第二步:目的:将位数据逐位移入74HC595,即数据串入。
方法:SH_CP产生一上升沿,将DS上的数据移入74HC595移位寄存器中,先送低位,后送高位。
第三步:目的:并行输出数据。即数据并出
方法:ST_CP产生一上升沿,将由DS
上一篇:
搞定Verilog时序逻辑硬件建模设计:深入理解同步与异步复位
下一篇:
必备!硬件工程师笔试题目汇总
推荐阅读
-
电子点阵设计课程的课堂记录与笔记
-
小红书大产品部架构 小红书产品概览--经过性能、稳定性、成本等多个维度的详细评估,小红书最终决定选择基于腾讯云星海自研硬件的SA2云服务器作为主力机型使用。结合其秒级的快速扩缩、超强兼容和平滑迁移能力,小红书在抵御上亿次用户访问、保证系统稳定运行的同时,也实现了成本的大幅降低。 星海SA2云服务器是基于腾讯云星海的首款自研服务器。腾讯云星海作为自研硬件品牌,通过创新的高兼容性架构、简洁可靠的自主设计,结合腾讯自身业务以及百万客户上云需求的特点,致力于为云计算时代提供安全、稳定、性能领先的基础架构产品和服务。如今,星海SA2云服务器也正在为越来越多的企业提供低成本、高效率、更安全的弹性计算服务。 以下是与小红书SRE总监陈敖翔的对话实录。 问:请您介绍一下小红书及其主要商业模式? 小红书是一个面向年轻人的生活方式平台,在这里,他们发现了向上、多元的真实世界。小红书日活超过 3500 万,月活跃用户超过 1 亿,日均笔记曝光量达 80 亿。小红书由社交平台和在线购物两大部分组成。与其他线上平台相比,小红书的内容基于真实的口碑分享,播种不止于线上,还为线下实体店赋能。 问:围绕业务发展,小红书的系统架构经历了怎样的变革和演进? 系统架构变化不大,影响最深的是资源开销。过去三年,资源开销大幅增加,同比增长约 10 倍。在此背景下,我们努力进行优化,包括很早就开始使用 K8S 进行资源调度。到 18 年年中,绝大多数服务已经完全实现了容器化。 问:目前小红书系统架构中的计算基础设施建设和布局是怎样的? 我们目前的建设方式可以简单描述为星型结构。腾讯云在上海的一个区是我们的计算中心,承载着我们的核心数据和在线业务。在外围,我们还有两个数据中心进行计算分流,同时承担灾备和线上业务双活的角色。 与其他新兴电子商务互联网公司类似,小红书的大部分计算能力主要用于线下数据分析、模型训练和在线推荐等平台。随着业务的发展,对算力的需求也在加速增长。
-
反传销网8月30日发布:视频区块链里的骗子,币里的韭菜,杜子建骂人了!金融大V周召说区块链!——“一小帮骗子玩一大帮小白,被割韭菜,小白还轮流被割,割的就是你!” 什么区块链,统统是骗子 作者:周召(知乎金融领域大V,毕业于上海财经大学,目前任职上海某股权投资基金合伙人) 有人问我,区块链现在这么火,到底是不是骗局? 我的回答是: 是骗局。而且我并不是说数字货币是骗局,而是说所有搞区块链的都是骗局。 -01- 区块链是一种鸡肋技术 人类社会任何技术的发明应用,本质都是为了提高社会的生产效率。而所谓区块链技术本质不过是几种早已成熟的技术的大杂烩,冗余且十分低效,除了提高了洗钱和诈骗的效率以外,对人类社会的进步毫无贡献。 真正意义上的区块链得包含三个要素:分布式系统(包括记账和存储),无法篡改的数据结构,以及共识算法,三者互为基础和因果,就像三体世界一样。看上去挺让人不明觉厉的,而经过几年的瞎折腾,稍微懂点区块链的碰了几次壁后都已经渐渐明白区块链其实并没有什么卵用,区块链技术已经名存实亡,沦为了营销工具和传销组织的画皮。 因为符合上述定义的、以比特币为代表的原教旨区块链技术,是反效率的,从经济学角度来说,不但不是一种帕累托改进,甚至还可以说是一种帕累托倒退。 原教旨区块链技术的效率十分低下,因为要遍历所有节点,只能做非常轻量级的数据应用,一旦涉及到大量的数据传输与更新,区块链就瞎了。 一方面整条链交易速度会极慢,另一方面数据库容量极速膨胀,考虑到人手一份的存储机制,区块链其实是对存储资源和能源的一种极大的浪费。 这里还没有加上为了取得所谓的共识和挖矿消耗的巨大的能源,如果说区块链技术是屎,那么这波区块链投机浪潮可谓人类历史上最大规模的搅屎运动。 区块链也验证不了任何东西。 所谓的智能合约,即不智能,也非合约。我看有人还说,如果有了智能合约,就可以跟老板签一份放区块链上,如果明年销售业绩提升30%,就加薪10%,由于区块链不能篡改,不能抵赖,所以老板必须得执行,说得有板有眼,不懂行的愣一看,好像还真是那么回事。 但仔细一想,问题就来了。首先,在区块链上如何证明你真的达到了30%业绩提升?即便真的达到老板耍赖如何执行? 也就是说,如果区块链真这么厉害,要法院和仲裁干什么。 人类社会真正的符合成本效益原则的是代理制度。之前有人说要用区块链改造注册会计师行业,我不知道他准备怎么设计,我猜想他思路大概是这样的,首先肯定搞去中心化,让所有会计师到链上来,然后一个新人要成为注册会计师就要所有会计师同意并记录在链上。 那我就请问了,我每天上班累死累活,为什么还要花时间去验证一个跟我无关的的人的专业能力?最优做法当然是组织一个委员会,让专门的人来负责,这不就是现在注册会师协会干的事儿吗?区块链的逻辑相当于什么事情都要拿出来公投,这个绝对是扯淡的。 当然这么说都有点抬举区块链了,区块链技术本身根本没有判断是非能力,如果这么高级的人工智能,靠一个无脑分布式记账就能实现的话,我们早就进入共产主义社会了。 虽然EOS等数字货币采用了超级节点,通过再中心化的方式提高效率,有点行业协会的意思,是对区块链原教旨主义的一种修正,但是依然无法突破区块链技术最本质的局限性。有人说,私有链和联盟链是区块链技术的未来,也是扯淡,因为区块链技术没有未来。如果有,说明他是包装成区块链的伪区块链技术。 区块链所涉及的所有底层技术,不管是分布式数据库技术,加密技术,还是点对点传输技术等,基本都是早已存在没什么秘密可言的技术。 比特币系统最重要的特性是封闭性和自洽性,他验证不了任何系统自身以外产生的信息的真实性。 所谓系统自身产生的信息,就是数据库数据的变动信息,有价值的基本上有且只有交易信息。所以说比特币最初不过是中本聪一种炫技的产物,来证明自己对几种技术的掌握,你看我多牛逼,设计出了一个像三体一样的系统。因此,数字货币很有可能是区块链从始至终唯一的杀手应用。 比特币和区块链概念从诞生到今天已经快10年了,很多人说区块链技术在爆发的前夜,但这个前夜好像是不是有点过长了啊朋友,跟三体里的长夜有一拼啊。都说区块链技术像是90年代初的互联网,可是90年代初的互联网在十年发展后,已经出现了一大批伟大的公司,阿里巴巴在99年都成立了,区块链怎么除了币还是币呢? 正规的数字货币未来发展的形式无外乎几种,要么就是论坛币形式,或者类似股票的权益凭证等。问题是论坛币和股票之前,本来也都电子化了,区块链来了到底改变了什么呢? 所有想把TOKEN和应用场景结合起来的人最后都很痛苦,最后他们会发现区块链技术就是脱裤子放屁,自己辛苦搞半天,干嘛不自己作为中心关心门来收钱?最后这些人都产生了价值的虚无感,最终精神崩溃,只能发币疯狂收割韭菜,一边嘴里还说着我是个好人之类的奇怪的话。 因此,之前币圈链圈还泾渭分明,互相瞧不起,但这两年链圈逐渐坐不住了,想着是不是趁着泡沫没彻底破灭之前赶快收割一波,不然可能什么都捞不着了。 前段时间和一个名校毕业的链圈朋友瞎聊天,他说他们“致力于用区块链技术解决数字版权保护问题”,我就问他一个问题,你们如何保证你链的版权所有权声明是真实的,万一盗版者抢先一步把数据放在链上怎么办。他说他们的解决方案是连入国家数字版权保护中心的数据库进行验证…… 所以说区块链技术就是个鸡肋,研究到最后都会落入效率与真实性的黑洞,很多人一头扎进链圈后才发现,真正意义上的区块链技术,其实什么都干不了。 -02- 不是蠢就是坏的区块链媒体 空气币和区块链的造富神话,让区块链自媒体也开始迎风乱扭。一群群根本不知道区块链为何物的妖魔鬼怪纷纷进驻区块链自媒体战场,开始大放厥词胡编乱造。 任何东西,但凡只要和区块,链,分,分布式,记账,加密,验证,可追溯等等这些个关键词沾到哪怕一点点,这些所谓的区块链媒体人就会像狗闻到了屎了一样疯狂地把区块链概念往上套。 这让我想起曾经一度也是热闹非凡的物联网,我曾经去看过江苏一家号称要改变世界的“物联网”企业,过去一看是生产路由器的,我黑人问号脸,对方解释说没有路由器万物怎么互联,我觉得他说得好有道理,竟无言以对。 好,下面让我们进入奇葩共赏析时间,来看看区城链媒体经常有哪些危言耸听的奇谈怪论 区块链(分布式记账)的典型应用是*?? 正如前面所说,真正意义上的区块链分布式记账,不光包括“记”这个动作,还包括分布式存储和共识机制等。而*诞生远远早于区块链这个词的出现,勉强算是“分布式编辑”吧,就被很多区块链媒体拿来强行充当区块链技术应用的典范。 其实事实恰恰相反,*恰恰是去中心化失败的典范,现在如果没有精英和专业人士的编辑和维护,*早就没法看了。 区块链会促进社会分工?? 罗振宇好像就说过类似的话,虽然罗振宇说过很多没有逻辑的话,但这句话绝对是最没逻辑思维的。很多区块链自媒体也常常用这句话来忽悠老百姓,说分工代表效率提高社会进步,而区块链“无疑”会促进分工,他们的理由仅仅是分工和分布式记账都共用一个“分”字,就强行把他们扯到一起。 实际情况恰恰相反,区块链是逆分工的,区块链精神是号召所有人积极地参与到他不擅长也不想掺合的事情里面去。 区块链不能像上帝一样许诺他的子民死后上天国,只能给他们许诺你们是六度人脉中的第一级,我可以赚后面五级人的钱,你处于金字塔的顶端。
-
41 个下载免费 3D 模型的最佳网站-使用说明:使用权限可能因型号而异。因此,在下载文件之前,请仔细检查每个下载页面上的许可证和使用权限。 17. Clara.io Clara.io 是一个创建 3D 内容的全球平台,也是一个培养新 3D 艺术家的社区。Clara.io 提供+100,000个免费的3D模型,包括OBJ,Blend,STL,FBX,DAE,Babylon.JS,Three.JS格式,用于 Clara.io,Unity 3D,Blender,Sketchup,Cinema 4D,3DS Max和Maya。 使用说明:免费,标准和专业帐户仅供个人使用,如果您需要将 clara.io 用于商业用途,请与销售团队联系。 18. 3DExport 3DExport是一个市场,您可以在其中购买和销售用于CG项目的3D模型,3D打印模型和纹理。它提供15 +不同的3D格式供下载,如3DS MAX(.max),Cinema4D(.c4d),Maya(.mb,.ma),Lightwave(.lwo),Softimage(.xsi),Wavefront OBJ(.obj),Autodesk FBX(.fbx)等。它还提供15种不同的语言! 使用说明:免费下载仅供个人和非商业用途。 19. 3D Warehouse 3D Warehouse是一个开放的库,允许用户共享和下载SketchUp 3D模型,用于建筑,设计,施工和娱乐!任何人都可以免费制作,修改和重新上传内容到3D仓库,您可以找到任何您能想到的东西,如家具,电子产品,室内产品等。 使用说明:3D Warehouse中的所有模型都是免费的,因此任何人都可以下载文件以用于SketchUp甚至其他软件,如AutoCAD,Revit和ArchiCAD。 20. CadNav.com CadNav是CGI平面设计师和CAD / CAM / CAE工程师的在线3D模型库,我们提供超过50000 +免费3D模型和CAD模型下载。在CadNav网站上,您可以下载高质量的多边形网格3D模型,3D CAD实体对象,纹理,Vray材料,3D作品,CAD图纸等。 使用说明:免费下载仅供个人和非商业用途。 21. All3dfree.net 就像网站名称一样,它提供免费的3D模型,还包括Vray材料,CAD块,2d和3d纹理集合,无需注册即可免费下载。它是不断更新的,因此您可以查找或请求3DS,MAX,C4D,skp,OBJ,FBX,MTL等格式的模型。 使用说明:所有资源均不允许用于商业用途,否则您将承担责任。 22. Hum3D 自2005年以来,Hum3D帮助来自3多个国家的80D艺术家节省3D建模时间,并制作逼真的3D模型,用于电影,视频游戏,AR应用程序和可视化。所有模型均由首席3D艺术家进行验证,他们检查其是否符合专业要求和最新的3D建模标准。 使用说明:免费下载仅供个人和非商业用途。 23. Artist-3D.com 艺术家-3D 库存的免费 3D 模型下载按通用类别排序。它为人体解剖学、汽车、家具、火箭、卫星等模型提供 AutoDesk 3DS Max 格式。您还可以在浏览他们的网站时找到教程和类似类型的建模。 使用说明:使用权限可能因型号而异。因此,在下载文件之前,请仔细检查每个下载页面上的许可证和使用权限。 24. Free the models 就像本网站的标题一样,它为3d应用程序和3d游戏引擎提供免费的内容模型。您可以为您的任何项目找到许多有趣且有用的模型!它提供3ds,wavefront,bryce,poser,lightwave,md2和unity3d格式的模型。还有一个很棒的纹理集合,可以在您最喜欢的建模和渲染程序中使用。 使用说明:您从这里下载的所有内容都可以免费使用,除非它不能包含在另一个免费的网络或CD收藏中,也不能单独出售。否则,您可以在商业游戏,3D应用程序或渲染作品中使用它。您不必提供信用,但如果您这样做,那就太好了。 25. Resources.blogscopia 本网站由一家名为Scopia的公司创建。他们制作3D图像和视频,您可以找到许多为CGI工作的信息架构设计的模型,所有这些都可以在现实生活中使用。您可以免费下载它们,但是,如果您想一次下载它们,您可以支付 3 到 9 欧元。 使用说明:您可以免费下载模型部分的所有文件。每个压缩文件都包含您也可以在此处找到的许可证。基本上,您可以对文件执行任何操作。唯一的限制是不归属于Scopia的重新分发。 26.ambientCG 1000+公共领域PBR材料适合所有人!环境CG是使用许多不同的方法和资产类型创建的,例如照片纹理(PBR),贴花(PBR),图集(PBR),照片纹理(普通),物质存档(SBSAR),雕刻画笔,3D模型和地形。您可以在所有项目中*使用它们! 使用说明:在 ambientCG 上提供下载的所有 PBR 材料、画笔、照片和 3D 模型均根据知识共享 CC0 1.0 通用许可提供。您可以复制、修改、分发和执行作品,即使是出于商业目的,也无需征得许可。信用将不胜感激。 不要满足于平庸的大理石纹理 - 立即使用我们的免费PBR大理石纹理升级您的3D设计。 27.Pixar One Twenty Eight 这是一个提供官方动画行业经典纹理的网站:皮克斯,创建于 1993 年,该纹理库包括 128 个重复纹理,现在免费提供。 它包含您来到的纹理,包括砖块和动物毛皮。肯定会有一些你可以使用的东西。 使用说明:皮克斯动画工作室的《Pixar One Twenty Eight》根据知识共享署名4.0国际许可协议进行许可。即使出于商业目的,您也可以重新混合、调整和构建您的作品,只要您以相同的条款对新创作进行信用和许可。 访问数以千计的免费纹理并提升您的设计游戏 - 立即开始下载! 28. 3DXO 即使有近 620 个免费贴纸可供下载,3DXO 也不是最大的资源,但它的内容非常有用,不需要注册。无论是简单的墙壁或地板,还是一些奇怪的小东西,您都需要的纹理都可以在此网站上看到。 使用说明:使用权限可能因型号而异。因此,在下载文件之前,请仔细检查每个下载页面上的许可证和使用权限。 29. 3DModelsCC0 3DModelsCC0 与其他产品的不同之处在于它包含超过 250+ 个高质量 3D 模型,并且本网站上的所有内容都是免费的,完全是公共领域!使用我们的模型时无需信用或归属! 使用说明:为每个人提供完全免费的公共领域内容。 30.Sketch up texture club Sketchup Texture Club是一个非营利性的教育和信息门户网站,由3D社区的图像促进协会管理,特别强调面向学生和建筑和室内设计专业人士的可视化和渲染技术,以及所有正在学习3D可视化的人。 使用说明:您无需支付版税或使用费。纹理可以免费下载和使用。不允许将纹理作为竞争产品出售或重新分发,即使图像被修改也是如此。 31. FlippedNormals FlippedNormal 是一个提供计算机图形和 3D 资产的市场,您可以找到许多用于雕刻、建模、纹理、概念艺术、3D 模型、游戏资产或课程的高级资产! 使用说明:使用权限可能因型号而异。因此,在下载文件之前,请仔细检查每个下载页面上的许可证和使用权限。 32. NASA 3D NASA 3D网站是一个在线门户,提供与太空和各种NASA任务相关的大量三维模型和模拟。该网站是用户友好的,并提供有关每个型号的详细信息。该网站允许用户探索和下载几种不同格式的模型,包括 OBJ、STL 和 FBX,只需单击下载按钮即可。 使用说明: 要下载模型,只需单击模型页面上的下载按钮并选择所需的格式。 33. 3DAGOGO (Astroprint) 3DAGOGO 是一个提供广泛 3D 模型的网站,包括角色、车辆和建筑物。3DAGOGO 的独特功能之一是它专注于适合 3D 打印的模型,使其成为希望创建物理原型或模型的设计师的绝佳资源。要使用 3DAGOGO,设计师只需在网站上搜索他们正在寻找的模型类型,然后下载 STL 格式的文件。 使用说明: 要使用 3DAGOGO,只需搜索所需的 3D 模型类型并下载 STL 格式的文件。根据需要自定义模型,并确保在将其用于商业目的之前检查使用权限。 34. FreeCAD FreeCAD是一款了不起的3D建模软件,可让您在计算机上创建令人难以置信的3D设计。该软件可免费下载和使用,它提供了广泛的工具和功能,可用于创建用于各种目的的3D模型。 该网站易于浏览,您可以找到开始使用FreeCAD的所有必要信息。此外,该网站还提供一系列教程和指南,可帮助您了解 3D 建模的来龙去脉。 使用说明: 要下载模型,请访问网站并从库中选择所需的模型。该网站还提供了一系列使用该软件的教程和指南。 35. Pinshape Pinshape是一个提供一系列3D打印模型的网站。网站上提供的型号质量很高,因此您可以确保您的最终印刷产品看起来很棒。该网站提供了广泛的模型,包括从家居用品到小雕像和珠宝的所有物品。 但这还不是Pinshape所能提供的全部!该网站还允许用户上传和共享自己的3D模型。这意味着您不仅可以下载出色的模型,还可以通过分享自己的设计为社区做出贡献。此外,Pinshape 提供了一系列自定义选项,因此您可以调整和调整模型以满足您的特定需求。 使用说明: 要下载模型,请在网站上创建一个帐户,搜索所需的模型,然后单击下载按钮。该网站还为每种型号提供了一系列定制选项。 36.Yeggi Yeggi 提供了大量免费的 3D 模型,您可以下载各种格式的模型,例如 STL、OBJ 和 FBX。该网站易于使用,您可以按关键字、类别或特定网站搜索模型。 Yeggi 对于任何寻找 3D 模型的人来说都是一个很好的资源。它提供了大量的模型集合,从日常物品到复杂的机械,以及介于两者之间的一切。该网站的收藏量在不断增长,每天都有新的型号增加。 使用说明: 要下载模型,请在网站上搜索所需的模型,然后单击下载按钮。该网站还提供指向托管模型的原始网站的链接。 37. Open3DModel 来自开放3D模型的图像 Open3DModel具有各种类别的模型,包括建筑,车辆和角色。无论您需要建筑物,汽车还是人的3D模型,都可以在此网站上找到。 该网站易于浏览,您可以按类别或关键字搜索模型。每个模型都附带预览图像和详细信息,例如文件格式、大小和多边形数量。此信息可以帮助您选择适合您需求的模型。 使用说明: 要下载模型,请访问网站,从库中选择所需的模型,然后单击下载按钮。 使用最好的 3D 资产管理工具简化您的 3D 制作流程。立即试用它们,将您的 3D 项目提升到一个新的水平! 38. 3DExport 对于那些为其 3D 设计项目寻找 3D 模型、纹理和其他资源的人来说,该平台是一个很好的资源。该网站有大量模型可供选择,包括 3D 打印对象、游戏资产等。用户可以按类别、文件格式或价格范围浏览,以找到适合其项目的完美资源。此外,3DExport 还提供一系列教程和其他 3D 资源,以帮助用户提高技能并创建更令人印象深刻的设计。 使用说明: 要使用 3DExport,只需创建一个帐户并浏览可用型号。您可以按类别、格式和价格进行搜索,以找到所需的型号。找到喜欢的模型后,只需下载它并开始在您的项目中使用它。 39.Blend Swap Blend Swap是一个社区驱动的市场,提供与Blender软件兼容的各种免费3D模型。该平台允许用户共享和下载模型、纹理和其他资产,以便在他们的项目中使用。 使用说明: 创建免费帐户后,您可以浏览社区上传的大量3D模型。当您找到要使用的一个时,只需下载它并将其导入您选择的 3D 软件即可。 40. 3DShook 3DShook 是一个高级 3D 模型市场,提供一系列用于建筑、游戏等各个行业的高质量模型。该平台提供基于订阅的模型,具有不同的定价计划,允许用户访问一系列模型。 使用说明: 注册免费帐户后,只需浏览3D模型库,选择您喜欢的模型,然后以您需要的格式下载它们。 41. Smithsonian X 3D 史密森尼 X 3D 对于正在寻找历史文物和文物的高质量 3D 模型的设计师来说,这是一个独特的资源。该平台提供了大量3D模型,这些模型是根据史密森尼博物馆和研究中心中的真实物体扫描创建的。 使用说明:
-
设计与实现在线课堂课程订购微信小程序的研究(包含源码、配置和文档)-研究背景和意义
-
在线课堂课程订购微信小程序的设计与实现(附源码 配置 文档)