1,开发前规划

基于单片机的数字温度计-开发前规划
关键字 温度计;51单片机;共阳数码管;MOS开关;便携式;课程设计;毕业设计
要求 一个随身携带的温度计。
步骤 项目 立创编号 型号 备注
1 单片机 C86615 STC8A8K64S4A12 51单片机简单;这个型号引脚多;
2 轻触开关 C318884 TS-1187A-B-A-B 嘉立创可SMT,省劲
3 MOS C85758 NUD3124LT1G 内置MOSFET、ESD保护
4 数码管 C226009 SLS0563DRA1GD 红色;共阳;贴片的节约体积
5 电池 C139606 CR2032 2V~3V
6 电池座 C70373 CR2032弯脚电池片 铜材质;和焊盘组合构成一个座子;
7 温度传感器 C177147 AT30TS75ASS8M-B 电压1.7V到5.5V;-55℃~125℃;
8 三极管 C8542 SS8550 PNP型;控制位显示。
确认电压 电池跌落范围:2V~3V ;上述所有IC的正常工作范围均在电池范围内。
板子结构 设计一层PCB盖子,中间安装铜柱,或者排针排母,将电池和传感器保护起来,露出位置便于按钮安装。
功能设计 1,使用三位贴片数码管显示温度,精度正负1度。
2,数码管由IO口直接驱动,不另外加驱动IC。
3,纽扣电池的位置要便于更换
4,按一下按钮,刷新一次温度;断开按钮时停止供电节约能量。

2,模块化原理图

基于单片机的数字温度计-原理图
完整原理图:https://oshwhub.com/7a745fc8/ji-yu-dan-pian-ji-di-shuo-zi-wen-du-ji-she-ji
步骤 原理图模块 说明
1 image.png 1,当轻触开关悬空时,N-MOS的VGS=0V不导通,负载也就表现为不得电;
2,当轻触开关按下时,VGS=3V。此时MOS导通,导通后内阻大约1.4欧姆(规格书有写);
3,只看VCC和GND之间受开关控制,所以轻触开关能控制负载的通断。
4,不按开关的时候负载不导通,最省电。
2 image.png 1,CR2032电池正常范围大约是2V~3V。
2,传感器电压范围是1.7V~5.5V,可以用此电池。
3,检测温度范围宽,-55℃到+125℃。
4,IIC通讯两根线,要有上拉电阻到VCC。
3 image.png 1,数码管本质上就是LED发光二极管。图中所示为三位共阳数码管。
2,共阳数码管表示这些发光二极管的阳极在数码管内部接在一起了。
3,一个数字由8个LED组成,这8个LED的阳极接在一起的。整个数码管有三位数字。它们的阴极在内部又接在了一起。
4,ABCDEFG表示每一位的笔划,DIG表示某位的阳极。当阳极有电3V时,ABCDEFG中谁接地谁就亮。
5,使用一只PNP三极管控制DIG是否有电;使用单片机IO口直接控制ABCDEFG是否为低电平。
4 image.png 1,通过排针孔留出单片机的串口1和电源引脚,便于下载程序使用。
2,内部有晶振和复位电路,只需要给单片机通电就能工作了。
3,没有用到单片机的ADC功能,故AVCC和AGND直接接到VCC和GND,AVREF接VCC。
4,老姚的STC8系列工作电压:2V~5.5V。
5,通过普通IO口模拟IIC时序驱动温度传感器。
6,使用连续的IO口接到数码管的ABCDEFG上,有利于写代码时直接赋值。

3,绘制PCB

基于单片机的数字温度计-PCB
步骤 PCB图 说明
1 image.png 1,线宽0.3mm以上。整个板子没有大电流,所以不用很粗的线。
2,根据自己的审美安排布局,非高频线路,非高压线路,没有严格规范。
3,图中还不够完美。你可以安排双面布置元器件。把数码管和传感器布置到正面,其余所有元器件布置到背面。
4,尽量对称布置元器件,看起来美观漂亮。
2 image.png 1,因为选择了布置到同一面,为了遮住元器件可以再焊一个盖子到上面。
2,周边的三个排针孔就是用来连接下板的。

4,焊接和调试

基于单片机的数字温度计-焊接调试
B站视频:https://www.bilibili.com/video/av83460315
单片机源代码:下个章节下载。
步骤 焊接/调试 说明
1 image.png 1,首先选择了焊接MCU。
2,因为MCU焊接好后,可以直接烧录一次程序,测试MCU周边电路是否OK。
3,接下来安排焊接电源控制电路,这样可以通过写测试程序,间接测试同断电是否正常。通过万用表测量负载电压也能得出结论。
2 image.png 1,焊接大件,数码管。
2,注意方向,有可能会焊反。
3,烙铁温度控制在350度左右,小心行事,有可能会烧焦塑料。
3 image.png 1,最后焊接电池座。
2,注意看焊盘,电池座内部的焊盘提前上锡了,而且鼓起来了很多。
3,只有这样才能让电池接触面与焊盘配合牢固。这时候电池是应塞进去的。
4 image.png 1,这是主程序,用来说明程序的大致架构。
2,先初始化51单片机的IO口,初始化各个软件模块。同时打开了一个定时器,用来制作简单的任务调度器。
3,初始化完成后,读取一次温度,然后循环显示即可。
5 image.png 1,这里简单介绍一下数码管扫描显示。
2,图中函数每次执行时,G1,G2,G3其中的一个就会拉低,PNP管子此时导通。
3,这个时刻,PDat直接被赋值,单片机的IO口表现出不同的高低电平,其中的某一个数码管就显示出数字。
6 image.png 1,使用这个工具复制你计算“字形码”。
2,先设置一下共阴或者共阳,并配置好IO口的关系,直接计算即可。
3,脚位设置中,设置的是一个8位HEX数据的第几个Bit。
4,这个工具在下面链接可下载。

5,资料下载

在线查看原理图:https://oshwhub.com/7a745fc8/ji-yu-dan-pian-ji-di-shuo-zi-wen-du-ji-she-ji
数码管程序设计辅助工具:数码管程序设计辅助工具.zip
单片机源代码:单片机源码-基于单片机的数字温度计设计.zip
B站视频:https://www.bilibili.com/video/av83460315

下载源文件需要注册立创商城帐号,点击链接去注册,零妖送你20元代金券。

6,关注零妖

物联网零妖.jpg