按关键词阅读: 设计 控制 装置 电子技术 水泵 专业课程 水管 贮水
第三章 系统软件设计软件设计是本系统的重要组成部分 , 因显示功 。
14、能与控制功能由不同的单片机控制 , 为此程序设计分为两部分 , 考虑到汇编语言对显示控制编译的便利性以及Keil C语言对运算编译的便利性 , 系统使用汇编语言对AT89S52进行编程 , 使用Keil C语言对AT89C2051进行编程(程序详见附件一与附件二) 。
本系统的软件设计共分为六个部分 , 分别为初始化程序设计部分、主程序设计部分、显示主程序设计部分、摸数转换测量子程序部分、水泵启停控制部分、供水水位不足报警部分等组成 。
(1) 初始化程序系统上电时 , 将70H72H内存单元清零 , P2口置零 。
(2) 主程序在刚上电时 , 因70H72H内存单元的数据为0 , 则每一通道的数码管显示值都为000 。
当进行一次测量的A/ 。
15、D转换值 。
每个通道的数码管显示时间在1s左右 。
主程序在调用显示程序和测试程之间循环 。
(3) 控制程序当设置好水位的上限和下限值后 , 单片机将不断检测水位状态 , 若发现水位到达最低水位 , 则使继电器闭合 , 启动水泵电机 , 同时声光报警 。
若发现水位到达最高水位 , 则使继电器断开 , 停止水泵工作 , 同时声光报警 , 如图5所示 。
(4) 数转换测量子程序模数转换测量子程序是用来控制对ADC0809 八路模拟输入电压的A/D转换 , 并将对应的数值移入70H72H内存单元 , 其程序流程如图6所示 。
(5)显示子程序采用动态扫描法实现四位数码管的数值显示 。
测量所得的A/D转换数据放在70H72H内存单元中 。
测量数据在显示时需经过转 。
16、换成为十进制BCD码放在76H79H中 , 其中7BH存放通道标志数 。
寄存器R3用来作3路循环控制 , R0用作显示数据地址指针 , 其流程图如7所示到最低水位否Y开 始初 始 化超过最高水位否声光报警NYN水泵停止工作水泵工作有水泵出否声光报警NY图5水泵控制流程图Fig-5 the flow chart of the pump controlling开 始启 动 测 试数模转换结束?P3.7=1?取数据(P2.5=1)0809地址加1取 上 限 值取 下 限 值地址数小于3?结 束图6 数模转换测量程序流程图YNFig-6 the flow chart of the A/D transverse me 。
17、asurement 开 始初始化调用显示子程序调用A/D转换子程序图7 显示流程图Fig-7 the flow chart of the monitoring(6)系统软件抗干扰程序为防止因电磁干扰而造成程序的“跑飞” , 在程序设计当中加入了软件陷阱 , 既每段程序后加入两个空操作NOP , 若程序“跑飞”则程序被软件陷阱捕获 , 被抗干扰程序处理 , 返回复位状态 , 重新启动系统 。
第四章 测试方法与实验数据1、测试仪器万用表、51系列仿真器、8051仿真头、89C2051仿真头以及SUPERPRO/Z编程器 。
2、 硬件调试注意事项(1)硬件调试时 , 可先检查印制板及焊接的质量是否符合要求 , 有无虚焊点及线路间有无短 。
18、路、断路 。
然后用万用表测试或通电检测 , 检查无误后 , 可通电检查数码显示器亮度情况 。
(2)LM339与单片机相连的只有4根线 , 很容易检查 , 主要检查其与管脚是否连接好 。
3、软件调试软件调试是在WAVE G6000软件模拟器下进行 , 源程序编译及仿真调试应分段或以子程序为单位逐个进行 , 最后结合硬件实时调试 。
子程序调试包括:(1)ADC0809信号采集程序;(2)显示液位高度子程序;(3)声光报警程序;本系统使用伟福V5/S仿真器进行程序仿真 , 在仿真过程中 , 因仿真头对输入电压有非常严格的要求 , 因此必须严格检查仿真头40脚输入电压是否超过5V , 程序仿真成功后方可烧入单片机 。
4、测试结果分析(1)启停水位及报 。
19、警水位的测试分析经过实验 , 本设计小组选取了10cm、25cm、35cm等水位进行测试 , 实验结果表明:在10-25cm间 , 显示误差小于0.5cm 。
在35cm时误差为1 cm 。
测试通过(2)液位小于10cm时自动启停水泵测试本小组首先将水箱中的水全部排除 , 系统通电后 , 水泵自动进水 , 同时蜂鸣器报警 , 指示灯闪亮 , 表明水位低于10cm 。
测试通过(3)液位在高于上限值报警测试本小组选择40cm水位报警 , 测试结果表明 , 当水位到达40cm时 , 声光报警装置启动 , 误差值在1cm以内 。
(4)液位在高于上限时停水测试本小组选择了35cm和40cm两个位置作为上限高度 , 实验结果表明在两个位置 , 系统能实现自动停水功能 , 误 。
20、差在1cm以内 。
(5)显示测试本小组选择了10cm、25cm、35cm以及40cm四个位置进行显示 , 测试结果表明:此四个位置所显示值误差小于0.5cm 。
稿源:(未知)
【傻大方】网址:/a/2021/0707/0022751729.html
标题:电子技术|电子技术专业课程设计贮水水管液位与水泵控制装置( 三 )