版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上1、 温度传感器选择由于采用NTC热敏电阻与温度的关系是非线性的,用电桥实现温度升高引起的电阻变化对应于电压变化,因此输出的结果测试精度较低,并且不能达到我们对温度控制的要求。温度传感器AD590是一种电压输入、电流输出型集成温度传感器,测温范围为-55150,精度高,非线性误差仅为±0.3,调节系数为1微安每K,输出电流I=(273+T)微安。温度传感器LM1335,V0=10毫伏每摄氏度,具有很高的工作精度与线性工作范围。器件输出电压与温度成线性关系,调节系数为10毫伏每摄氏度,因而优越之处在于无需外部校准微调,可以供±14常用室温精度。2、
2、转换电路将采集到的电信号转换为05V之间,使之可以直接加到ADC0809端口。3、 采样值量化算法:比例系数KT=0.0278V|=27.8MV0摄氏度时,电压为0+55*0.0278=1.529V,每个数字量对应电压值19.53MV,用KS表示得到数字量与温度的关系。KT|KS=1.426数字量每摄氏度0摄氏度对用AD输出量D0=55*1.426=78.4379=B 4、 ADC0809五、基本功能是用三个按键来控制风速、类型以及停止这三个状态的变换。当风速键 按下时实现风速强、中、弱三种状态依次循环切换,并用三个 LED 指示灯来显示;当类型键按下时实现类型正常、睡眠、自然三种状态的依次循
3、环切换,并用三个LED 指示灯来显示。 题目中类型键要求自然状态转2 秒,停4 秒;睡眠状态转2 秒,停转6 秒,这个涉及到时间问题, 可以通过硬件或者软件来实现,选择通过软件来实现。控制系统分四个功能模块,主要包含风速设置、类型设置、默认状态显示和退出系统。1、风速设置这个模块中风速的三个状态强、中、弱之间的循环切换是通过将端口A的键值逐次加1(初始值为0, 每按下一次风速键寄存器值加1),然后对3求余,取其余数分别代表这三个状态来实现的。由于对3求余的余数只有 0、1、2 三个值,分别代表强、中、弱,将其余数保存到寄存器中,根据寄存器中是 0、1、2 来判断强、中、弱风三个状态。 2、类型
4、设置 风的类型有:正常、自然、睡眠三种。 a) 正常 电扇连续运转。 b) 自然 电扇模拟自然风,即转2s,停4s。 c) 睡眠 电扇慢转,产生轻柔的微风,运转 2s,停转6s。 自然状态和睡眠状态时间的控制是通过调用延时子程序来实现的,由于一个机器周期是 10 -6 秒,延时 程序是通过循环来实现的,让指令执行106 次来实现1 秒。不是很精确。MY8255_A EQU 0FF00H ;8255A MY8255
5、_B EQU 0FF01H ;8255B MY8255_C EQU 0FF02H ;8255C MY8255_MODE EQU 0FF03H
6、;8255 STACK1 SEGMENT STACK DW 256 DUP(?) STACK1 ENDS DATA SEGMENT DATA ENDS
7、60;CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV DX,MY8255_MODE MOV AL,90H OUT DX,AL MOV DX,MY8255_C MOV AL,00H OUT DX,AL MOV DX,MY8255_B MOV AL,0FFH
8、 OUT DX,ALSTART1: MOV DX,MY8255_A /对8255A口进行扫描 IN AL,DX AND AL,B CMP AL,08H /对按键进行判断 JNZ T1 CALL ZIRAN /调用自然模式 T1: MOV DX,MY8255_A IN AL,DX AND AL,B /屏蔽按键 CMP AL,00H JNZ T10 CALL STOP T10: CMP AL,01H JNZ T6 CALL QIANG T6: CMP AL,02H JNZ T8 /AL非02H跳入T8 CALL ZHONG T8: CMP AL,04H JNZ T9 CALL RUO T9: JM
9、P START1 /自然模式 ZIRAN PROC NEAR MOV DX,MY8255_B /对8255B口进行初始化 MOV AL,0F7H OUT DX,AL MOV CX,40 /循环次数进行控制 T: MOV DI,1770H CALL ZHENGZHUAN LOOP T CALL DL4S RET ENDP/强风模式 QIANG PROC NEAR MOV DX,MY8255_B /对8255B口进行初始化 MOV AL,0FEH OUT DX,AL MOV DI,0A00H MOV DX,MY8255_A /扫描8255A口 IN AL,DX AND AL,B CMP AL,10
10、H /对按键进行判断 JNZ T2 CALL FANZHUAN CMP AL,01H JZ T3 T2: CALL ZHENGZHUAN T3: RET ENDP/中风模式 ZHONG PROC NEAR MOV DX,MY8255_B /对8255B口进行初始化 MOV AL,0FDH OUT DX,AL MOV DI,1000H MOV DX,MY8255_A /扫描8255A口 IN AL,DX AND AL,B CMP AL,10H /对按键进行判断 JNZ T4 T4: CALL FANZHUAN CMP AL,10H JNZ T5 CALL ZHENGZHUAN T5: RET E
11、NDP /停止模式 STOP PROC NEAR MOV DX,MY8255_B /对8255B口进行初始 MOV AL,0FFH OUT DX,AL MOV DX,MY8255_C /对8255C口进行初始化 MOV AL,00H&
12、#160; OUT DX,AL CALL DL500ms /调用延时 RET ENDP /弱风模式 RUO PROC NEAR MOV DX,MY8255_B /对8255B口进行初始MOV AL,0FBH
13、160;OUT DX,AL MOV DI,1B00H MOV DX,MY8255_A /扫描8255AIN AL,DX AND AL,B CMP AL,10H /对按键进行判断 JNZ A1 CALL FANZH
14、UAN A1: CMP AL,10H JNZ A2 CALL ZHENGZHUAN A2: RET ENDP /反转模式 FANZHUAN PROC NEAR MOV DX,MY8255_A /扫描8255AIN&
15、#160;AL,DX NOT AL MOV DX,MY8255_B OUT DX,AL MOV DX,MY8255_C MOV AL,09H /设置风扇的旋转方式 OUT DX,AL CALL DELAY
16、60; MOV AL,0CH OUT DX,AL CALL DELAY MOV AL,06H OUT DX,AL CALL DELAY MOV AL,03H OUT DX,AL
17、 CALL DELAY RET ENDP /正转模式 ZHENGZHUAN PROC NEAR PUSH DX MOV DX,MY8255_C /对8255C口进行初始化MOV AL,03H OUT
18、DX,AL CALL DELAY MOV AL,06H /设置风扇的旋转方式 OUT DX,AL CALL DELAY MOV AL,0CH OUT DX,AL CALL D
19、ELAY MOV AL,09H OUT DX,AL CALL DELAY POP DX RET ENDP/延时程序设置 DELAY PROC NEAR PUSH CX MOV CX,DI DATE: LOOP DATE POP CX RET ENDP DL500ms PROC NEA
20、R PUSH CX MOV CX,60000 DL500ms1: LOOP DL500ms1 POP CX RET DL500ms ENDP DL4S PROC NEAR PUSH CX MOV CX,8 DL4S1: CALL DL500ms LOOP DL4S1 POP CX RET ENDP CODE ENDS END START data segment isend db 0 n0 db 0 n1 db 0 n2 db 0 isright db 1 keykind db 0 oldkey db 0 kind db 0 isstop db 0 flags db 0 numbers db
21、3fh,6,5bh,0,0,0,0,0,0,0data endscode segment assume cs:code,ds:datamain:;主程序 cli mov ax,cs mov ds,ax mov kind,0 mov isright,1 mov keykind,0ah mov oldkey,0ah mov kind,0 mov isstop,0 mov flags,0 mov isend,0 mov n0,0 mov n1,0 mov n2,0 call initnumbers call init8255 call init8259 call init8253 call modi
22、fyint mov dx,212h mov al,0out dx,al call cleardevice call display mov al,0 mov dx,22ah out dx,al mov al,30h out dx,al mov al,7fh stidowhat: push axdowait: mov al,0ffh;单色灯清零 mov dx,211h out dx,al mov dx,210h in al,dx test al,1;判断开关 jz dowait pop ax call readakey cmp keykind,0ah jnz a1 mov kind,2 call
23、 gotonext jmp aaa1:;判断风速改变 cmp keykind,0bh jnz a2 mov kind,1 call gotonext jmp aaa2: cmp keykind,0ch jnz a3 mov kind,0 call gotonext jmp aaa3: cmp keykind,0dh jnz a4 push axmov dx,212h mov al,0 out dx,al pop ax mov isstop,0 push ax mov al,oldkey mov keykind,al call reading mov dx,212h mov al,0ffh ou
24、t dx,al pop ax sti jmp aaa4: cmp keykind,0eh jnz aa not flags push ax mov al,oldkey mov keykind,al pop axaa: jmp dowhatgotonext:;单色灯循环亮灭 mov dx,211h out dx,al cmp flags,0 jnz noror ror al,1noror: cmp al,0feh jnz continue jmp continuecontinue: cmp kind,2 jnz mm1 call speed2 jmp mm3mm1:;改变风速 cmp kind,
25、1 jnz mm2call speed1 jmp mm3mm2: cmp kind,0 jnz mm3 call speed0mm3: push axmm33: cmp isstop,0 jz mm4 mov dx,211h mov al,0ffh out dx,al mov dx,210h in al,dx test al,1 jnz mm33 mov isstop,0 climm4: pop ax retreadakey:;读取键盘输入 push ax mov al,keykind mov oldkey,al mov dx,22ah in al,dx and al,0fh cmp al,0
26、 jz gotoexit mov al,40h mov dx,22ah out dx,al mov dx,228h in al,dx mov keykind,algotoexit: pop ax retspeed1:;速度设置 push cxmov cx,18000sp1: loop sp1 pop cx retspeed2: push cx mov cx,50000sp2: loop sp2 pop cx retspeed0: push cx mov cx,8000sp0: loop sp0 pop cx retreadisd:key: mov dx,22ah in al,dx and al
27、,0fh cmp al,0 jz key mov al,40h out dx,al mov dx,228h in al,dx cmp al,0dh jnz key retreading:;输入时间 push ax mov n0,0 mov n1,0 mov n2,0 call readanumber mov n0,al call display call readanumber cmp al,0dhjz readexit mov ah,n0 mov n0,al mov n1,ah call display call readanumber cmp al,0dh jz readexit mov
28、ah,n0 mov n0,al mov al,n1 mov n1,ah mov n2,al call display call readisdreadexit: pop ax retreadanumber:key2: mov dx,22ah in al,dx and al,0fh cmp al,0 jz key2 mov al,40h out dx,al mov dx,228h in al,dx retinitnumbers: push bx mov bx,offset numbers mov byte ptrbx,3fh mov byte ptrbx+1,6 mov byte ptrbx+2
29、,5bh mov byte ptrbx+3,4fh mov byte ptrbx+4,66h mov byte ptrbx+5,6dh mov byte ptrbx+6,7dh mov byte ptrbx+7,7 mov byte ptrbx+8,7fh mov byte ptrbx+9,6fh pop bx retdisplay:;时间显示 call cleardevice mov bx,offset numbers mov al,80h mov dx,22ah out dx,al mov al,n0 xor ah,ah add bx,ax mov al,bx mov dx,228h out dx,al mov bx,offset numbers mov al,81h mov dx,22ah out dx,al mov dx,228h mov al,n1 xor ah,ah add bx,ax mov al,bx out dx,al mov bx,offset numbers mov al,82h mov dx,22ah out dx,al mov dx,228h mov al,n2 xor ah,ah add bx,ax mov al,bx out dx,al retintcount: p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《基础教育课程改革纲要》
- 教师家长沟通中的《中小学教育惩戒规则(试行)》心得体会
- 五年级上英语阅读理解题专项题
- 人教部编版二年级语文下册课内外阅读专项训练识字1.《神州谣》
- 初中物理九年级全一册(沪科版)第十九章《走进信息时代》知识清单:让信息“飞”起来
- 安全资金使用计划及实施情况
- 小学三年级数学“寄书-小数的不进位加法和不退位减法”导学案
- 九年级化学《物质的变化与性质》在线作业教学设计
- 人教版小学四年级上学期数学试卷难点解析与思维提升教学设计
- 小学音乐一年级上册第七单元《唱游森林》知识清单
- 华为公司客户分级管理
- 海洋工程作业安全预案
- 2024-2025学年福建省福州市鼓楼区多校六年级(上)期中数学试卷
- 养老护理服务标准流程
- 锂电池出口知识培训课件
- DB36∕T 1296-2020 城市消防物联网大数据应用平台接口规范
- 公建工程交付指南(第三册)
- 2025年金川集团审计风控法务部招聘笔试历年参考题库附带答案详解
- 136号文深度解读及案例解析培训
- 公路养护安全技术交底
- 民事诉讼法戴鹏讲义
评论
0/150
提交评论