电路图概念
术语:
- sch:schematic,原理图
- PCB:Printed Circuit Board,印刷电路板
- footprint:脚印、足迹,表示元件在电路板上的外形
- component:元件图,电子元件的示意图
1. 实物
以LED为例,有多种多样的LED:有插针的,有贴片的
以电阻为例,有多种多样的电阻:
电源也有多种多样:
2. 实物连接
要点亮一个LED,怎么连线?用实物来描述的话,示例如下:
当我们更换元件,比如把LED换为贴片LED,难道连线图又要重新绘制吗?
不需要,我们首先抽象出元件图。
3. 元件图
3.1 元件图示例
以LED为例,无论它的外形如何,都有共同点:有两个引脚(触点),一正一负。
可以抽象出这样的图:
上面2个都可以用来表示LED,左边的形象。
如果你不想花时间绘制形象的元件图,可以使用类似右边的样例:重点在于引脚。
对于电阻、电源也有类似的元件图:
3.2 芯片引脚标记
怎么表示一个芯片的引脚?可以通过引脚号(pin number),也可以通过引脚名(pin name)。
举例:AT24C02实物图
查看它的芯片手册,可以看到引脚的描述图,如下:
在元件图里,pin number最重要,必须有pin number。
pin name可以省略,但是提供pin name可以让人容易理解。
比如EEPROM芯片的元件图:
-
U1:位号,第1个元件。'U’一般用来表示元件,'R’表示电阻,'C’表示电容
-
AT24C02A:芯片型号
4. 原理图
使用抽象出来的元件图,绘制得到的连线图,被称为原理图:
使用这样的原理图,可以应对不同外形的实物。
在原理图中,不方便连线时可以用网络(net),比如下图:
- R1右边的引线放了一个net,名为:led_ctrl
- LED左边的引线也放了一个net,名字也是:led_ctrl
- 相同名字的net,表示它们之间是直接连在一起的
5. PCB封装图
原理图上只是把元件的连线绘制了出来,还需要解决这些问题:
- 元件长什么样?贴片的?还是插脚的?
- 元件摆放在电路板上什么位置
- 它们之间的连线多宽、形状、走向
比如下图是LED的PCB封装图:左边是贴片LED,右边是插针LED。
PCB上元件封装实物示例:
6. 设计电子产品的步骤
- 设计原理图
- 根据功能决定使用什么芯片
- 根据芯片手册绘制元件图
- 把元件图摆出来,连接引脚
- 设计PCB图
- 根据芯片手册绘制封装图
- 布局:在PCB设计图上,根据原理图的元件清单,把对应元件的封装图摆放出来
- 布线:在PCB设计图上,根据原理图里的连线,绘制电线连接元件
- 生产PCB
- 为了不泄露设计,PCB图要转换为gerber文件
- 把gerber文件发给PCB工厂
- 贴片/焊接
- 购买元件
- 在贴片厂进行焊接
7. 示例
概念:
- 元件图:把元件抽象出来,是一个示意图,主要关注它的引脚
- 原理图:元件之间怎么连线
- PCB封装图:元件引脚的外观
- PCB:最终的电路板
7.1 原理图示例
有了元件图,我们可以把多个元件摆在一张图纸上,元件之间连线:得到原理图,比如:
7.2 PCB图示例
有了PCB封装图,我们可以把原理图中各个元件摆放在PCB图上,根据原理图来绘制电线:得到PCB图。
7.3 PCB实物示例
有了PCB图,就可以发给工厂生产,得到真实的电路板(PCB):
7.4 成品(焊接元件后)
把元件焊接到PCB上去之后,得到成品,如下:
硬件接口的四大类
参考书籍:
- 《微机原理》:侧重于计算机结构
- 《数字电子技术基础 》:侧重于门电路
1. GPIO和门电路
GPIO:general peripheral input/ouput,通用的外设输入、输出接口。
这类电路通常只使用一个引脚:
-
可以设置为输出
- 可以输出高、低电平
- 比如用来控制LED
-
也可以设置为输入
- 可以读取引脚电平,判断当前是高电平还是低电平
- 比如用来判断按键是否被按下
-
可以接上各类晶体管(二极管、三极管等)实现逻辑运算
-
例子
2. 协议类
比如:UART、I2C、SPI、Nand、TFT LCD。
如果两个设备之间要传输的数据比较复杂,可以约定一些规则。这类接口被称为"协议类"接口。
当然可以只使用一条GPIO引脚来传输复杂的数据,比如红外遥控器、温度传感器等。
也可使用多条线路来传输数据,比如UART、I2C、SPI等。
比如TFT LCD的接口线将近30条。
例子:
-
I2C接口
-
硬件连接
-
I2C协议
-
3. 类似内存的接口(ram-like)
比如:Nor Flash、SDRAM、DDR、网卡DM9000等。
- 内存:可以读写某个地址上的数据,所以必定有这些信号
- 地址总线
- 数据总线
- 读/写信号
- 片选:ram-like接口上可以接多个设备,互相之间不能干扰,选中哪个设备哪个设备才能响应
- 很多设备也采用类似内存的接口,比如Nor Flash、8080接口的LCD
- 例子
4. 模拟电路
数字电路上传输的电压值只有2类取值,比如
- 2.xV到3.3V,抽象为逻辑值1
- 0V到1.xV,抽象为逻辑值0
模拟电路上传输的电压可以是各种各样的,比如以下两个电路:
- ADC电路中:可以读取滑动电阻器上的触点电压值
- DAC电路中:可以输出不同的电压值,用来控制LED的亮度(数字电路里LED只有亮、灭两个状态)
配套视频网站:
B站:https://www.bilibili.com/video/BV17g411F7oR?p=3
嵌入式开发板硬件操作入门—韦东山