3智能温度采集器的实现
系统开发环境。本课题硬件设计采用XILINX公司SPARTAN-3器件开发板进行编程验证,其特性如下:(1)具有二十万门,十二个嵌入式18x18乘法器支持高性能DSP应用,216 Kbit的块RAM,50 MHZ内部时钟晶振;(2)板上2Mbit Platform Flash;(3)八个开关,四个按钮,八个LED,四个七段显示;(4)串口,VGA口,PS/两个鼠标/一个键盘口;(5)三组各40个引脚的扩展连接;(6)三个强电流的电压整流器(3.3V,2.5V,1.2V);(7)配合JTAG3编程线和Xilinx的P4&MultiPRO线。系统硬件设计采用Verilog HDL设计语言,设计流程在Xilinx公司提供的开发工具ISE中完成,配合MODELSIM SE仿真工具。SPARTAN-3开发板上使用MAX3222电平转换器,转换RS-232C的EIA电平+12V与TTL电平+3.3V。在本系统中,由于串口通讯的双方都是自订制的,因此本课题中的RS-232C的串行传输波特率选择使用了PC机所能达到的最快传输速度:115200 bit/s。上位机软件编程采用VC++ 6.0。
控制器逻辑功能流程图。首先设计各个硬件模块,其中主控模块状态机先只实现一些基本功能指令的流程控制,仿真测试单独的模块。然后连接各个模块组成完整的硬件电路并进行一些基本功能指令的测试。再利用串口调试助手及示波器检验硬件电路对一线总线上单个DS18B20的初始化(INITAILIZATION)、发送匹配ROM命令(MATCH ROM)、发送温度转换命令(CONVERT T)、发送引脚读取命令(READ SCRATCHPAD)、发送读时隙脉冲(READ TIMESLOTS)的操作结果。串口调试结果正确后联合上位机程序实现最基本的“Read Temperature”功能。上位机调试结果正确后硬件电路继续添加其他功能,调试“搜索ROM命令(SEARCH ROM)和读取ROM ID命令”,在FSM中实现搜索算法将温度采集扩展至一线总线上多个DS18B20。整个系统逻辑框图可见图2。
图2、智能温度控制器逻辑功能流程图