本例是在STM32F103C8T6最小系统板上扩展TFT板,实现SD卡的快速读写。
1、新建项目
工程结构
新项目
将原理图添加到项目中
将 PCB 添加到项目中
项目中添加原理图库(我这里找到了现成的,添加即可)
将PCB封装库添加到工程中
然后调用原理图库中已有的模块开始绘制原理图。
2. 绘制原理图 (1) 最小系统板设计
最小系统是单片机工作的最低要求。 它不包含外围控制,原理简单。 最小系统分析是嵌入式系统入门的基础。
最小系统主要由电源、时钟、调试、复位、启动和控制芯片组成。
我们依次画出这些部分
电力系统
一般3.3V LDO供电加多个0.01uf去耦电容
时钟电路
晶振+启动电容+(反馈电阻MΩ级)
复位电路
上电复位,上电瞬间,电容充电,RESET出现短暂低电平。 该低电平的持续时间由电阻器和电容器决定。 计算方法如下:t=1.1RC(固定计算公式)1.110K0.1uF=1.1ms,所需复位信号持续时间约为1ms。
调试/下载接口
STM32有两个调试接口,JTAG是5针,SWD是2线串口(共四线)。 我们这里使用SWD模式。
另外,USB用于程序编程和数据输出:也可连接电脑USB口,用于小负载驱动供电。
USB转串口通常采用CH340G芯片。 该芯片用于将计算机的USB映射为串口。 注意电脑上要安装串口驱动,否则无法正常识别。
启动电路
M3核心器件有3种启动方式,M4核心器件有4种启动方式。 通过BOOT0和BOOT1级别进行选择。
1) 用户闪存=芯片内置的闪存。
2)SRAM=芯片内置的RAM区域,即存储器。
3)系统内存=芯片内部的特定区域。 芯片出厂时,在该区域预设了一个Bootloader,即俗称的ISP程序。 芯片出厂后,任何人都无法修改或擦除该区域的内容,即该区域是一个ROM区域,使用USART1作为通信口。
最小系统板
详细信息请参见芯片数据手册
(2)扩展SD卡
由于C8T6没有SDIO接口,所以我们使用SPI协议来模拟SDIO的方法。
我们使用SPI接线将SD卡扩展至最小的系统板。 接线方法
SD卡针脚
C8T6针
数据3/CS
SPI_CS
命令/指令
SPI_MOSI
时钟脉冲
SPI_时钟
数据0/DO
SPI_MISO
示意图概述
(3)编译示意图
设计完成的示意图如下:
画好原理图后,我们就可以开始准备生成PCB了。
编译项目并自动发现错误
编译完成后,没有弹出错误信息,说明原理图中没有发现错误。
我们点击右下角的Panels,打开消息面板,查看具体信息。
检查一切无误后,我们就可以生成PCB了。
3.绘制PCB (1)导入PCB
选择设计并选择生成PCB文件
单击以验证更改
当检测状态栏完全检查完毕,即没有错误时,单击执行更改。
最后PCB文件导入成功,如图。
我们点击红框,直接删除,将组件拖入黑框内
(2) PCB布局
3D 视图预览(正面)
后退
(3) PCB走线
AD提供了强大的自动接线功能,而且这个最小系统板要求简单,不需要手动接线规则。 我们只需要在自动接线之前设置一些电气特性即可。
在设计规则中
设置间距
设置线宽
对于一般信号线,我们默认设置为10mil;
不过对于电源线来说,我们需要更大的线宽,以保证其能够更加稳定的工作。 我们的首选是15m; 所以我们需要创建一个新的电力网络规则并将其优先级设置为最高。
在“线宽”列中,单击“新建规则”
只需点击下图即可设置新规则。
设置过孔直径和孔径尺寸
设置完一些基本的电气特性后,就可以开始自动布线了
查看自动路由效果,有提升消息提示路由成功,没有路由不成功的情况。
(4)镀铜层
顶层
底层
3D预览
(5)DRC电气规则检查
至此,我们的PCB就已经完成了,但是在实际打样之前最好检查一下原理图是否有错误以及其他小错误。
总结
在此示例中,简要讨论了 PCB 布局和布线。 这是因为小编天赋不大,对这些操作不熟悉,所以我只展示最终的结果。
时隔一年,我又画了PCB板。 最后一块 PCB 失败。 这次有机会又画了一遍,对AD有了更深入的了解。 此PCB示例没有样品测试,只是随机绘制,因此可能存在问题,仅供参考。