一、选题
老师给了5个题目,选题阶段大概有一个月的时间。选取题目时一定要根据自身基础仔细评估难度,确保自己能通过学习做出大部分内容,以免浪费大量时间导致最后来不及更换题目。
在赵茂泰老师主编的《智能仪器原理及应用》(第4版)书中介绍了智能仪器组成原理和一些常见应用,这些应用中就包括了DVM(数字电压表)的设计指标与基本组成原理,我的设计指标主要就是根据这本书里的介绍设定的。另外,书中还有一些其他应用如数字万用表等,大家可以自己去查看。
经过仔细评估,我选定电压表设计这个题目,并确定了下列指标与功能:
1.量程:测量范围为直流电压0~200V,分为200mV,2V,20V,200V共4挡。
2.位数:3位半。
3.精确度:这里用相对误差表示,指标为±2%。
4.分辨率:0.05%,分辨力为0.1mV。
5.测量速度:2次/s。
6.功能:自动量程转换,超量程 警,复位功能,OLED 屏幕显示,指示灯。
在填写指标时尽量将指标写大些,例如这里我把误差设定成2%,实际做出的作品误差是1%左右,比预定指标还要好得多,一定要给自己留有余地,否则最后实现不了的话只会扣分。
二、方案设计
初步的具体方案为:
以STM32F103C8T6为主控芯片,基于标准库函数开发程序,用芯片内置12位A/D配合外围量程转换电路实现多量程电压测量功能,OLED模块(I2C通信)显示电压值,蜂鸣器 警,LED指示灯,按键复位等。
这里设计方案时我主要参考的书籍仍然是上面提到的《智能仪器原理及应用》这本书。结合此方案画出大致的系统框图,如图2-1所示。

图2-1 系统总体方案框图
总体方案确定之后就可以着手进行相关知识的学习了。
三、自学过程及经验
1、首先,STM32是个啥/h3>
不知道怎么办然是学习了。于是我在学校图书馆开始找相关的书籍,最终找到了野火的《 STM32库(标准库)开发实战指南–基于STM32F103》(书名大致是这个,不必过于纠结)。
前面几章就是介绍STM32的,这下对STM32有了基本的认识。在看到编程开发那块,我觉得只看书太枯燥了,于是到B站找了一下视频,直接找到了野火官方出的教学视频,然后跟着视频学了大概半个月。
并不是所有视频都要看一遍,而是针对性学习自己感觉项目开发过程中可能会用到的知识。如果后面发现要用到其他知识还可以回来继续补充。
在学习视频的过程中我也知道了一些资源的获取途径,野火、正点原子官方 站都有相关技术文档,他们都是是免费公开的,包括我上面提到的《 STM32库(标准库)开发实战指南–基于STM32F103》这本书的PDF版。
经过以上部分的学习,我们需要用到的STM32标准库开发相关知识就基本掌握了。再结合 络搜索和一些官方开发板的原理图(如战舰、指南者之类),可以用Altium Designer(简称AD)软件画出适合自己的STM32最小系统原理图。
AD软件不会用的可以看B站Altium Designer 20 (AD20)详细教程视频,个人觉得老师讲的还不错,挺基础适合入门。之后大家也可以搜一下其他视频做补充、提高使用。
此时,我们已经熟悉了STM32最小系统以及标准库开发。
2、接下来,怎么构建外围电路,实现相关功能呢/h3>
这里我们最好选择经过验证的电路(就是别人做过的),毕竟电路设计不是一时半会能学成的。
但是在采取别人电路时一定要弄懂每个器件的作用,这是最基本且重要的一点,否则在答辩时很容易露馅,很可能直接导致挂科。
如电容一般用来电源去耦、滤除噪声,电阻一般用来限流。
这里的辅助电路像蜂鸣器、USB供电、复位开关、LED灯等这些在一些用于学习的开发板上已经比较成熟了,可以参考它们的原理图设计电路,其对应的pcb封装库也可以通过官方资料找到。
3、那么实现主要功能的量程电路该怎么办呢/h3>
经过前面的STM32标准库开发学习,我发现可以将量程转换控制完全由软件编程实现,于是这里我只需要找到能实现4个量程档的电路即可。
在知 检索相关论文,经过多番查找,终于发现了一篇用不同主控芯片实现量程转换的论文,文章里提供了量程转换电路。为进一步确定其功能,这里我们用Multism软件对其量程电路进行仿真,最终确认其能够实现我们的功能。
但是在实际设计时,最好考虑到噪声影响,一般是加去耦电容。
经过上述过程,我们已经完成了所有电路部分的设计,接着进行4↓↓↓
4、完善原理图,设计PCB板。
不会用AD软件的童鞋可以自学一下,可以看上面提到的视频,也可以自己找相关书籍或视频自学。
PCB完成之后就可以打板了,这里推荐嘉立创打板,10cm*10cm的5块板只要5块钱而且还有顺丰包邮(如果涨价了当我没说)。
打板完成之后,开始5↓↓↓
5、焊接元器件
零基础硬件小白该怎么焊接/strong>
1.建议向周围看下,有没有会硬件的大佬,向他们请教硬件焊接的一些小技巧;
2.找视频,学习经验,先用一块板子练习焊接经验。例如,拿个板子专门焊接贴片电阻(是本人没错了)。练习几天之后感觉差不多了就可以正式焊接器件了。焊接贴片器件时建议新生使用刀头电烙铁,可以秀很多操作。贴出一个我自学时用到的视频:一分钟教你贴片阻容类器件焊接。
元器件焊接完成之后就可下载程序,测试自己所写STM32程序是否正确了,这里一般需要很多次调试才能实现自己想要的功能。
到此为止,整个项目基本就完成了。
从4.1选题完成之后,到6.1完成之前,整个项目大概历时2个月。经过这次项目,我对硬件设计流程有了清晰的了解,收获颇丰。一通百通,相信之后用STM32开发其他项目也会比较轻松。
写出这篇博客,一方面可以记录一下学习心得,另一方面也为拿到一个嵌入式类项目无从下手的小伙伴提供一些经验吧,愿诸君共勉!
附:原理图和PCB文件下载
文章知识点与官方知识档案匹配,可进一步学习相关知识C技能树首页概览113244 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!