新乡学院本科毕业论文(设计)
4.2 温度采集流程图
开始 18B20复位 否 18B20存在? 是 发出温度转换命令 显示测温写入18B20 点位置 延时 延时 读温度前复位 发出读温度命令 写入18B20 读入温度值数据 返回
图22 DS18B20流程图
24
新乡学院本科毕业论文(设计)
第5章 系统仿真
系统仿真采用Keil C51与Proteus联调,先用Keil C51生成程序,导入到Proteus进行仿真测试。
5.1 编程软件简介
Keil软件能够同时进行集编辑,编译,仿真,赞成汇编,PLM语言和C语言的程序的编写[13]。比较汇编语言,在功能上、可读性、可维护性上、结构性C语言有突出的特点,所以使用简单方便。体会更为深刻的是先编写汇编语言然后再编写C语言程序。Keil C51软件具备功用强悍的汇成开拓调试用具与充足的库函数。此外,Keil C51生成目标代码的效率是很高的,只需要看一下编译后产生的汇编代码,即可以感受到。而且产生的汇编代码极为严密在多数语句,轻松的就能明白。如图23和图24是生成HEX文件的页面。
图23 设置生成hex文件
25
新乡学院本科毕业论文(设计)
图24 程序编译并生成hex文件
5.2 仿真软件简介
Proteus ISIS是由英国Labcenter electronics公司制作的软件,它可以仿真,还能够设计电路。是现在仿真数字电路、模拟电路、单片机及外围器件的最佳选择
[14]
。得到了用户的喜爱,也受到了用户们的一致好评。当今Proteus是把电路仿
真软件、PCB设计软件和模拟仿真相结合唯一的开发平面。它的处理器模型支
26
新乡学院本科毕业论文(设计)
持PIC,ARM7,HC11,AVR,MSP430,DSP和Cortex系列,8051系列的CPU模型[15]。编译部分,Proteus ISIS支持IAR、Keil和MPLAB等许多编译器。
5.3 仿真测试
利用proteus描述的系统电路的原理图,如图25所示。
图25 系统的电路原理图
下面在单片机导入利用Keil C51生成的程序进行仿真测试,仿真主要测试一下几点:
(1)没有煤气泄漏时系统运转是不是正常; (2)煤气过高时系统运转是不是正常; (3)温度过高时系统工作是否正常; (4)按键是否正常。
27
新乡学院本科毕业论文(设计)
图26 正常情况下的仿真结果
正常情况下仿真结果如图26所示,室内温度与煤气浓度均没有超过设定的最低值,LCD1602显示屏上出现室内温度与煤气浓度,没有LED灯光闪亮,没有蜂鸣器发声,电机没有转动。
图27 浓度超标时的仿真结果
28