家用电热淋浴器控制器的设计.doc_第1页
家用电热淋浴器控制器的设计.doc_第2页
家用电热淋浴器控制器的设计.doc_第3页
家用电热淋浴器控制器的设计.doc_第4页
家用电热淋浴器控制器的设计.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

此文档收集于网络,如有侵权,请联系网站删除 微型计算机原理课程设计 题目:家用电热淋浴器控制器的设计 目 录一设计目的3二设计内容3三设计所用器材3 四设计原理4五原理图设计7六接口电路的端口地址 9七程序流程图9八程序清单12九收获、体会和建议16 一设计目的1. 通过本设计,使学生综合运用微型计算机原理的内容,为以后从事计算机检测与控制工作奠定一定的基础。2. 主要掌握并行I/O接口芯片8253、8255A及中断控制芯片8259A等可编程器件的使用。3. 学会用汇编语言编写一个较完整的实用程序。4. 掌握微型计算机技术应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等步骤。二设计内容1 打开电源后,先设定水温,水温分为八档(30100,每10 为一档)。2按下启动键后,开始测量水温并采用数码管显示,控制电热管加热。3上下限水位报警(声光报警)。4提倡创新。三所用器材 此项目所用到器材如下:8088、ADC0803和译码器芯片SN54A74LS138、数据总路线缓冲器74LS245、27C020存储器各一片、可编程芯片8255A两片、地址锁存器SN74LS373三片、发光二极管8个、数码管3个、温度传感器、液位变送器等四设计原理图一 液位中断连线图1. 液位检测用液位检测仪,输出电压经处理后送至8259,当水位过高时,送信号给IRQ5,当水位过低时,送信号给IRQ6,由此产生中断信号,如图一所示。经8088处理后输出脉冲使锋鸣器报警,如图二所示。并使数码管(当水位正常时和于显示温度)显示水位过高(H)水位过低(L)。接第二片8255图二 锋鸣器连接图图三 温度设定接数据总线2. 温度设定,该控制器共有八档温度可供选择,我们选择了八个按键的键盘,当按按键时,8255相应的端口输入高电平,如图三所示。接ADC输出并送到8088,经8088处理后,发送信号到显示电路,点亮相应的二极管(一个二极管代表一种温度),如图四所示图四 实际温度显示 3. 温度检测,用温度传感器检测温度并输出电压,经ADC转换成成数字量后送到8255,如图五所示接8255图五 温度检测并转换成数字量再传到8088,8088再输出信号让数码管显示实际温度,如图六所示接38译码器输出接8255接8255接8255图六 温度显示4. 加热器控制。将实际温度与设定温度比较,当设定温度比实际温度高出50度时,使大功率的加热器工作;当设定温度比实际温度高出20度时,使中等功率的加热器工作;当设定温度比实际温度高但没有高出20度时,使小功率的加热器工作;当设定温度低于实际温度时,使加热器全部停止工作。其实现在8255控制,如图七所示图七 加热器控制5. 系统的整体框图如图八所示。五原理图设计硬件的连线图用Protel2004设计,设计结果如图九所示设定温度显示8088存储器存储设定温度设定温度液位报警温度检测并用ADC转换成数字量液位检测实际温度显示825582558259加热器控制图八 系统整体框图温度检测液位检测SN74LS373ADC0803IN27C020SN54ALS138AFKDM74LS245WMSN74LS373SN74LS373825982558255图九 硬件连接图8088六接口电路的端口地址如下表表一 接口电路的端口地址表地端址口芯片ABC控制端口8255(第一片)404142438255(第二片)80818283七程序流程图除以100,商送数码管显示接收ADC的输出余数除以10,商送数码管显示开始余数送数码管显示返回温度显示流程图主程序流程图开始调用键盘检测子程序加热器控制温度比较检测温度开中断开始显示过高或过低调用“响”子程序中断服务程序流程图中断返回返回显示并存储设定值开始YESNO按键?键盘检测流程图NONONOYES开始开大功率加热管返回高出20?设定温度高于实际温度高出50?YESYES开中等功率加热管开低功率加热管加热管控制流程图八程序清单DATAS SEGMENT LED DB 00H TEM DB 00H SETTEM DB 00H DUAN DB 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FHD TEMBIAO DB 100BUP(?);用于查表DATAS ENDSSTACKS SEGMENT PARA STACKSTACK STA DB 50(?) TOP EQU LENGTH STASTACKS ENDSCODES SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTACK:MOV AX,DATAS MOV DS,AX MOV AX,STACK MOV SS,AX MOV SP,TOP PUSH DS;填中断 MOV AX,0000H MOV DS,AX MOV AX,OFFSET IRQ7;温度AD转换 ADD AX,2000H MOV SI,003CH MOV SI,AX MOV AX,0000H MOV SI,003EH MOV SI,AX MOV AX,OFFSET IRQ6;高水位中断 ADD AX,2000H MOV SI,0038H MOV SI,AX MOV AX,0000H MOV SI 003AH MOV SI,AX MOV AX,OFFSET IRQ5;低水位中断 ADD AX,2000H MOV SI,0034H MOV AX,0000H MOV SI,0036H MOV SI,AX POP DS MOV AL,8BH;将8BH送到43H口(即键盘的控制端口) MOV 43H,AL;初始化为0工作方式,A口输出,B口输入 MOV AL,80H;将10000000送到83H口(显示8255A的控制口) MOV 83H,AL;初始化为0工作方式,都为输出 MOV AL,13H;将00010011送00H(8259A的ICW1) MOV 00H,AL MOV AL,08H;设中断类型号(ICW2) MOV 01H,AL MOV AL,0DH;设ICW4 MOV 01H,ALA: STI ;开中断 OUT 40H,FFH IN AL,41H CMP AL,FFH JE B CALL KEY;调用键盘子程序B: CALL TEMDT;调用温度检测子程序 CALL COMP ;调用温度比较子程序 LOOP A IRQ5: OUT 80H 07H;选中三个数码管,高水位中断 OUT 81H,76H;显示“H”字样,表示水位过高 CALL XIANG;调用“响”子程序 STI ;开中断 IRET IRQ6: OUT 80H,07H;选中三个数码管,低水位中断 OUT 81H,38H;显示“L”字样,表示水位过低 CALL SINAG; STI IRET KEY PROC FAR;键盘检测子程序 MOV CX,2000;延时,去抖 C:LOOP C OUT 40H,FFH IN AL,41H CMP AL,FFH JE D ;按下键盘时跳转 OUT 82H,AL ;送到二极管显示 MOV LED,AL ;送到LED存储单元 CMP AL,01H JNE E1 MOV AL,1EH;30度E1: CMP AL,02H JNE E2 MOV AL,28HE2: CMP AL,04H JNE E3 MOV AL,32HE3: CMP AL,08H JNE E4 MOV AL,3CHE4: CMP AL,10H JNE E5 MOV AL,46HE5: CMP AL,20H JNE E6 MOV AL,50HE6: CMP AL,40H JNE E7 MOV AL,5AHE7; MOV AL,64H MOV SETTEM,ALD: RETKEY ENDP TEMDT PROC FAR;温度检测子程序 IN AL,C0H;驱动ADC0803IN工作 MOV CX,1000HF1: LOOP F1;等待温度转换完成后输出中断IRQ7: MOV BX,OFFSET TEMBIAO;温度表 IN AL,42H MOV CX,64HF: CMP BX,AL JAE G;大于或等于时跳转 INC BX LOOP FG: MOV AX,61H SUB AL,CL MOV TEM,AL MOV AH,00H DIV 64H;除以100,取出百倍数 OUT 80H,04H;选中第一个数码管 MOV BL,AL MOV BH,00H MOV SI,OFFSET DUAN OUT 81H,SI+BX显示温度的百位数 MOV CX,2000HH: LOOP H MOV AL,AH MOV AH,00H DIV 10 MOV BL,AL MOV BH,00H OUT 80H,02H;选中第二个数码管 OUT 81H,SI+BX MOV CX,2000HI: LOOP I MOV BL,AH MOV BH,00 OUT 80H,01H;选中第三个数码管 OUT 81HSI+BX STI IRETTEMDT ENDP COMP PROC FAR MOV AL,TEM MOV BL,AL MOV AL,SETTEM CMP AL,BL JBE L ;当设定温度大于或等于实际温度时,不加热 SUB AL,BL MOV AL,08H CMP AL,14H当设定温度比实际温度高出20时,开中等功率的加热管 JA J ADD AH,10H JMP KJ: CMP AL,32H当设定温度比实际温度高出50时,开大功率加热管 JA K ADD AH,2DHK: OUT 80,AHL: RETCOMP PROC ENDP九总结与体会1在本次设计中,我们完成了设计任务,虽然没有条件调试,算不上成功地解决问题,但在此过程中,我们体会到了微型计算机技术和汇编语言的功能。懂得了用所学的知识解决遇到的实际问题。2在合作的过程中,我们合作无间,先是一起讨论如何实现设计,做出了系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论