基于SPI接口的温度测量系统
2 软件设计
在单片机系统中,单片机之所以处于核心地位,最重要的原因在于单片机上能够运行强大的软件。因此可以说,硬件是设计的基础,软件是设计的关键。只有软硬件协调配合,应用系统才能良好的工作。
2.1 系统总流程图
流程图分析:当电源上电后,系统进行初始化,系统开始运行,启动TC72温度传感器并读取温度;若此时温度没有超出设置的报警温度,则液晶正常显示;若超出报警温度,则蜂鸣器开始报警,按ESC键可退出报警。液晶正常显示后,系统程序对键盘进行扫描,若有设置键按下,则开始对报警温度进行设置,设置完成后重新读取温度并显示。系统总流程图如图5所示。
2.2 键盘程序流程图
流程图分析:若有设置键按下,则进入设置温度模式;若无按键按下,则读取温度数据送入液晶屏显示。在设置模式下设置温度,完成后再送数据到液晶屏显示。键盘程序流程图如图6所示。
2.3 LCD显示程序流程图
流程图分析:首先对1602显示屏进行初始化,然后进行忙信号检查,如果BF=0,则开始读取温度并写入相应的数据进行显示;如果BF=1,则表示模块正在进行内部操作,暂时不会接收任何数据及外部指令,直到BF=0为止。LCD显示程序流程图如图7所示。
3 仿真与调试
单片机应用系统的调试主要从软件调试和硬件调试两方面入手。两种调试过程紧密相关,而并非分开或孤立的,在基于SPI接口的温度测量系统设计中,用到了AVR Studio 4+Win AVR和Proteus ISIS软件。
模拟调试:首先运行AVR Studio软件,在新建项目窗口中输入设计所用的程序,输入完成后进行编译、运行、保存。然后在Proteus ISIS软件中画出硬件电路图并进行电气规则检查;如果电路设计无误,选中单片机ATmega16并双击,在对话框中点击Program File按钮,找到经过AVR Studio软件编译生成的hex文件,载入后点击OK按钮。完成后在Proteus ISIS的Debug菜单中选择Execute,即可运行程序。
实现功能的具体方法:按高温设置键,可调整当前温度的最高值,按0~9键,输入温度最高值的大小,按Enter键完成设置;按低温设置键,可调整当前温度最低值,按0~9键,可输入温度最低值大小,按Enter键完成设置;在进行高低温设置的过程中,可使用键盘中的ESC、Backspace键进行返回和删除操作。高低温设置完成后,可通过调节TC72温度传感器上的加减键进行实时温度调节;此时,如果调节的温度超出设置的温度范围,就会产生报警。
4 结束语
设计了一种基于SPI接口的温度测量系统,介绍了如何利用AVR单片机控制TC72温度传感器的新型设计方法。该设计利用单片机C语言,以AVR单片机为控制核心,通过使用具有SPI接口功能的TC72温度传感器,实现对温度进行实时监控显示和报警功能。
- 利用Pspice通用测试电路实现关键参数的模拟(上)(01-30)
- 利用Pspice通用测试电路实现关键参数的模拟(下)(01-30)
- 基于ADISl6355 MEMS的惯性测量组件系统设计(03-07)
- 时序关联/质理检验方针(02-14)
- 利用Pspice通用测试电路实现关键参数的模拟(下)(06-04)
- 利用Pspice通用测试电路实现关键参数的模拟(上)(06-04)