任务介绍
2025 Make Blocks第一期的任务包括嵌入式微控制器和HMI(人机接口),其实对于一个完成的应用,控制与人机交互的必不可少的,本次我们也是要完成这两方面的设计,这次最终想要完成的一个应用是有关热成像方面的,肯定是要有个主控的嵌入式芯片,并能正常的显示热成像,所有第一阶段的任务正好是我们要实现这个内容的必须模块。
模块介绍
由于本次的设计具有一定阶段性(共6期,12个主题),所以我们对于未使用的引脚暂时不进行处理,根据整个活动的不断进展,通过在上期模块基础上不断升级来添加任务主题。
本次任务的功能模块一共有两部分:
第一部分是主控单元,这里我们选择的是市场上非常成熟的嵌入式产品——STM32F103VCT6,其具有丰富的接口能够让我们可以更好的应对后面的内容扩展,通过搭建单片机最小系统使其能够正常工作,这里我们通过USB进行供电,在通过一个可控LED进行系统运行展示(例如blink,主要进行阶段性功能测试),主控单元还包括时钟电路,复位电路、SWD调试接口等等;
第二部分是人机交互模块,包括一个TFT显示屏以及一个多功能按键作为媒介。
STM32F103VCT6芯片DigiKey链接:https://www.digikey.cn/zh/products/detail/stmicroelectronics/STM32F103VCT6/2035333
原理图和PCB模块介绍
原理图
PCB
本次属于第一阶段设计,主要功能是能实现主控单元的控制,以及交互单元的控制。为了单片机的正常运行本阶段通过USB进行供电,不过USB过来的是5V,单片机的供电要求是3.3V,所以在供电的地方还需要LDO进行转换。然后就是晶振电路、复位电路、调试电路等最小系统基本电路。USB接口进行了接口保护,增加了TVS等保护器件,同时供电引脚增加保险进行安全保护。
交互单元包括TFT接口以及TFT的背光控制,按键的输入等内容。
PCB设计过程中需要注意,首先是板子版型选择,一般可以直接是长方形或者其他规矩图形,我在长方形的基础上进行了扩展,主要是为了保护按键、USB口等突出器件,通过屏幕的安放合理放置FPC接口并以此为基准进行器件的布局,首先需要考虑的就是USB、按键、接口等器件的位置,注意相关器件不要干涉。然后就是布线的先后顺序了,先进行重要线路的布置,比如TFT的并口数据线、USB数据线、复位线等等,相对来说电源相关线不着急。接下来就是覆铜了,本次选择了中间位置进行覆铜操作,覆铜接地,通过打孔的方式对重要线路进行了保护。
本次设计增加了一个供电指示灯,当整个系统有电的时候电量,不受单片机的控制,还有一个三色灯,有单片机进行控制,用于验证单片机系统的可用性。本次选择的单片机为STM32F103VCT6,100pin,所以还有很多的引脚没有使用,目前暂时不处理。
3D效果图
模块主要性能指标和管脚定义
主要性能指标
类型 | 热成像系统第一期(主控单元+交互单元) |
核心芯片 | STM32F103VCT6 |
内核 | Arm Cortex-M3 |
时钟频率 | 72MHz |
SRAM | 48K |
Flash | 256K |
IO数量 | 80 |
板卡尺寸 | 72mm x 56mm |
供电电压 | 4.5V~5.5V |
输出信号电平 | 3.3V |
管脚定义
TFT屏接口
管脚编号 | 管脚名 | 管脚属性 |
1 | VCC-TFT | P |
2 | GND | P |
3 | —— | —— |
4 | —— | —— |
5 | —— | —— |
6 | VCC-MCU | P |
7 | PE10/DB7 | I/O |
8 | PE9/DB6 | I/O |
9 | PE8/DB5 | I/O |
10 | PE7/DB4 | I/O |
11 | PD1/DB3 | I/O |
12 | PD0/DB2 | I/O |
13 | PD15/DB1 | I/O |
14 | PD14/DB0 | I/O |
15 | PD4/RD | I/O |
16 | PD5/WR | I/O |
17 | PD11/RS | I/O |
18 | PD7/CS | I/O |
19 | -/TE | I/O |
20 | PD13/RST | I/O |
21 | GND | P |
22 | GND | P |
板上设置及标识
标记 | 名称 | 默认状态 | 描述 |
D1 | PWR | 亮 | 指示是否供电 |
D2 | LED | 灭 | 用户控制三色LED |
eZ-PLM上新建物料和项目的截图
使用了eZ-PLM系统上传了自己的工程文件,方便保存记录各个版本,也可随时查阅,系统里查阅不到的物料也支持手动添加。
物料添加展示图
项目详情图
心得体会
本次的活动目前来看分了好多期,相当于把一个完整的设计按照模块化的方法进行了差分,可以让大家有更多的时间进行,毕竟一个完整的设计还是比较耗时耗力,本次限时挑战选择了一个非常成熟的芯片进行了设计,为了满足显示的控制接口,选择了这款带有FSMC功能的STM32F103,本次准备模块化设计但是最终还是会把他们整合到一块完成的板子上,首期设计顺利。这次也接触了一个相对开源的硬件设计管理平台,还是挺不错的,收获满满。