




免费预览已结束,剩余26页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2012211117班23号沈静单片机设计实验报告2014年小学期单片机设计实验报告题目:基于PIC16f877单片机的温度监测控制系统班 级: 2012211117班 班内序号: 23号 实验组号: 20组 学生姓名: XX 指导教师: 丘老师 张老师 期中检查教师评语指导教师签字: 年 月 日题目:基于PIC16F877A单片机的温度监测控制系统2012211117班 沈静实验摘要 在本次试验中,为满足温度控制的需要,我们以PIC16F877A单片机为核心,运用DS18B20采集环境温度的信息,并通过键盘人工输入预警温度值。若环境温度高于预警温度,则风扇驱动,开始降温,以此来达到对温度的监测与控制。AbstractIn this experiment,PIC16F877A microcontroller is the center.We use DS18B20 temperature sensor to catch the information of the environmental temperature,at the same time,we input the threshold temperature by ourselves through the 4*4 matrix keyboard. If the environmental temperature is higher than the threshold temperature,then the electric fan will be driven to reduce the temperature.In this way,we can successfully realize our purpose of monitoring and controlling the temperature.关键字单片机microcontroller 温度传感器temperature sensor 阙温threshold temperature 4*4矩阵键盘4*4 matrix keyboard 一.实验论证与比较1.温度信息采集模块本实验运用温度传感器DS18B20来进行环境温度的采集。采集电路如下:Output4.7K 3 2 1 +5V 18B20 GND 104 2.4*4矩阵键盘模块本实验通过在矩阵键盘上输入设定的高温预警温度值,并将此预警值与DS18B20测得的环境温度进行比较,进而达到温度检测与控制目的。而键盘的模块图如下所示: VCC 行线 3行 RD7 1 2 3 4 2行 RD6 5 6 7 8 1行 RD5 9 0 A B 0行 RD4 C D E F 列线 RB3 RB2 RB1 RB0 3列 2列 1列 0列 4*4矩阵键盘: 1 2 3 4 5 6 7 8 9 0 A B C D E F RB3 RB2 RB1 RB0 RD7RD6 RD5 RD4二.系统总体设计进入下一时刻系统模块总体框图如下: 预警温度与环境温度比较显示屏上显示当前时刻环境温度数码管显示输入的预警温度值通过键盘输入二位数请输入设置温度环境温度更高风扇驱动,开始降温风扇未接通预警温度更高进入下一时刻温度控制模块框图该模块要不断通过温度传感器检测某时刻环境温度信息,并与输入的预警温度做出相应的比较和处理,因此,需要一个无限循环,在单片机上电后,持续执行,不断监测环境温度,若达到预警温度值,则继电器驱动风扇转动,以控制温度。框图如下:开始主程序初始化各个端口显示屏显示提示信息外部输入预警温度数码管显示预警温度测量当前室温下一时刻显示屏上显示出当前室温下一时刻当前室温是否高于预警温度否风扇转动,开始降温是 3.温度传感器读写模块框图 开始 初始化DS18B20 发送ROM指令 发送RAM指令 进行数据读写工作周期1 结束工作周期2 复位skip ROM指令等待7501MS延时工作周期1 温度转换存储器操作指令读写RAM存储器操作指令skip ROM指令 复位工作周期2 三.硬件连接1.温度传感器与单片机连接(小四 宋体)温度传感器有三个端口,端口3连接5V电源,端口1接地,端口2是输入输出端口,连接到PIC16F877单片机。温度传感器采集外界温度,并且可以无限循环,持续执行,不断采集当前某个时刻的环境温度。温度传感器可以通过输入输出端口与单片机进行协议以及数据通信,从而为之后的温度控制创造条件。 + +5V单片机 3 2 14.7KOutput DS18B20 104 GND2.LCD显示模块和单片机连接本实验中应用LCD12864模块实现输入预警温度的提示信息以及当前温度值的显示。 连接模块如下: 单 片 机RE0 RE1 RE2 LCD12 RS 8 RW6 EN43.继电器驱动风扇模块和单片机连接+5V风扇 +5VVCC K1GND G1L-IN B1 H-INGNDGND RA0 单 片 机4.数码管模块和单片机连接单片机RA2RA3 四.调试过程在本次试验中我主要负责跑马灯和温度传感器模块。1. 跑马灯 首先,刚开始进入实验室的前两天,我基本上都在熟悉MPLAB软件以及汇编语言。老师一开始给我们一个初级任务:完成跑马灯功能的在线仿真与烧写。我认真研读老师推荐的各种相关资料,明白了MPLAB 如何使用,汇编语言的使用以及如何用汇编语言编写出能实现自己设想功能的代码。感觉自己学习的差不多了之后,我就开始进行跑马灯的设计,很快就成功完成了跑马灯的在线仿真与烧写。2.温度传感器准备编写温度传感器部分代码之前,我先阅读了温度传感器DS18B20的结构与连接要求。大致了解了之后,我又上网查了相关的资料,明白了DS18B20有三个接口,第一个接口接地,第二个接口是输出,第三个接口连接电源。而当单片机开始调用DS18B20时,首先会初始化DS18B20,接着发送ROM指令,然后发送RAM指令,之后开始进行数据读写,而温度传感器进行数据读写时总会在一开始进行复位,之后可以跳过ROM指令,直接进行温度转换或是读写RAM指令。总的来说,温度传感器可以即时感知环境温度值,然后将这个值发给单片机供单片机进行后续操作。3.DS18B20的温度转换程序DS18B20测得的环境温度值是以二进制的形式存储的,因此我们需要一个温度转换程序来将其转换成十进制的摄氏温度值,其中整数部分为三位,小数部分为四位。温度传感器中的温度值以二进制的形式存储两个字节共八位。先将高位的那个字节保留低三位即:二的六次方,二的五次方,二的四次方。接着将低位的那个字节进行高低半字节交换,之后组合得到七位整数部分。将这个七位整数部分先减一百,计算百位上是0还是1,再将减去100后的结果覆盖原数据。将这个结果再减10,若减去10后结果大于0,则用这个结果覆盖原数据。并将十位上的数值从0开始加1,此后不断循环此过程:结果持续减去10,十位上不断加1。直到最后一次再减10的时候结果小于0,则此时十位上加1的次数即为十位数值。因为最后一次减去10后结果为负,所以将此结果再加个10,所得的值即为个位上的数值。同理可转换得小数部分的数值4.硬件焊接与调试软件部分编写完成后我们进行了在线仿真与烧写,也都成功了,所以我们小组就开始进行下一步:硬件焊接。然而在焊接过程中,我们遇到了不少“拦路虎”。我们首先焊接的是电源电路、单片机以及LCD液晶模块。在第一次焊接好后,液晶屏怎么也不显示。经过检查,我们发现忘了焊上晶振。在焊好晶振后液晶屏还是不显示,排除各种原因后,我们猜测是焊接技艺的问题,于是我们重新焊接了4遍,最终液晶屏上有了显示,我们从中深刻体会到虚焊的危害。在焊接数码管和键盘模块时,键盘上输入的数字不能在数码管上显示,经过检查,发现是因为矩阵键盘没加上拉电阻。加上上拉电阻后,数码管可以显示数字,可是若键盘输入,数码管不会将输入的数字显示出来。这时老师提醒我们,有些组的上拉电阻加了8个,而我们只加了4个,于是我们又加了4个上拉电阻,通电后发现数码管和键盘的功能都可以实现了。在这整个焊接过程中,我们又因为虚焊问题拆了板子,重新焊接了好几次相应的部分。总的来说,硬件焊过程中最重要的还是细心和耐心,我们要保证焊接所用的导线金属部分长度适当,并且焊接时锡不能焊多了,防止短路。总之,我们不能急躁,一步步慢慢得焊,争取每一部分都焊的完美,不要留有虚焊的可能,最后才能更快的成功。俗话说“心急吃不了热豆腐”,我们通过这次硬件焊接真的深刻领悟到这句话的深意,明白了一步一步脚踏实地的重要性。五.参考文献PIC单片机实用教程基础篇 (五号 宋体)李学海北京航空航天大学出版社使用说明:的确是一本不可或缺的教材,本书列举了很多实用的具有实战意义的例子,单片机入门就是通过把这本书里的好例子一字一行敲进电脑去来实现的。PIC单片机实用教程提高篇李学海北京航空航天大学出版社使用说明:继承了前面基础篇的风格,例子也具有实战意义,主要讲RA、TMR2的使用和CCP模块的PWM脉宽调制功能。六.实验心得体会本次实验历时两周,我们小组从6月23起就“驻守”在实验室,除了吃饭睡觉,我们的所有时间都呆在实验室,可以说,实验室就像是我们的第二个家。这15天的体验开阔了我的视野,我终于体会到那些大神们整天泡在实验室,编着各种代码的心情。之前我们在实验课上所作的内容基本上两三个小时就可以完成,而这次实验相比之下就是一个巨大的工程,15天的时间,我们需要从零开始,一步步完成我们的实验。我们需要学习单片机的基础知识,我们需要自行设计实验内容,我们需要掌握温度传感器的原理与应用,我们需要明了焊接的方法与技巧。可以说,这15天以来,没有一天是虚度的,我们在这次自主实验中飞速成长。 本次实验一开始是完成跑马灯功能的实现,在给定的4天时间里面,我认真学习知识,了解了16f877单片机的组成,学习并掌握了汇编语言的使用,能熟练运用在现仿真与脱机烧写,最终成功实题目现了跑马灯功能。同时,我们小组通过查阅各种资料,在老师的建议下确定了本小组实验与内容:完成基于16f877单片机的温度监测控制系统。我们预期实现的功能为:输入一个预警温度,例如31度,接着显示屏上会显示出温度传感器测得的环境温度,接下来预警温度的会与环境温度进行比较。如果环境温度高于预警温度,则继电器会接通,驱动小风扇转动,开始降温,如果环境温度低于预警温度,则温度传感器继续测量下一时刻的环境温度值。在本次实验中,由于刚刚开始接触单片机及其他元件,我们遇到一次又一次的挫折,但是经过小组的努力与坚持,最终都将这次难题一一克服,而在这个过程中,我们对于如何用汇编语言实现自己想要完成的功能,如何实现键盘控制数码管显示,如何设置更友好的显示界面等等都有了更加深刻的理解,我们从中学到了很多很多。首先,软件的编写与调试就是我们有生以来遇到的最大的难题。我们翻遍从图书馆借的资料,上网查各种有用的信息,与同学讨论交流。两个多星期的学习与实验,我们小组不仅成功完成了预定的目标,更重要的是,在这15天的时间里,我们成功运用自己完全不了解的汇编语言来编写一个巨大的工程。而在实验过程中,我们对于毅力,忍耐,耐心,细心等也有了更深的体会,小组成员间也在15天的相处与共同努力中,建立起了深厚的友谊。最后我们共同携手,互相帮助,小组内进行无数次激烈的讨论,终于完成了一整个对我们而言无比浩大的工程。这次试验,将在我的人生中烙下一个永不磨灭的痕迹。我忘不了最初拿到课题时的茫然与无措,忘不了一句一句背诵汇编语句时的辛酸,忘不了一次次代码编译失败时的苦涩难受,忘不了埋头奋战时灵感突现的兴奋,忘不了一遍又一遍重新焊接时的痛苦,忘不了在老师提点下找到错误之处时的快乐,忘不了取得阶段性成功时小组内每个成员脸上的愉悦笑容,忘不了最终成功实现当初设计的所有功能时内心无与伦比的成就感。这半个月内的时间,带给我那么多那么多难以忘记的美好回忆,我学到了很多很多,也成长了很多很多。真的很感谢小组内每个成员的无私奉献,很感谢老师谆谆的教诲,我从这次试验中收获颇丰。七.源代码;改动:共阳数码管、4*4键盘;4*4键盘(列0-行3)接(RD0-7);18B20温度测量+LCD显示温度;PORTA口,RA0接继电器L_IN,RA2,RA3控制数码管位码;PORTB口,数码管段码;所有资源:;1、TMRO定时器。产生温度转换所需要的延时时间。;2、PORTE口。即做LCD显示时可控制端口,RE1同时做18B20的数据接口;3、PORTC口。做LCD显示时的数据口。;功能说明;1、通过18B20采集当前环境;最高温度可显示127.9375,最低温度可显示0.0625(无负温度处理部分);2、将温度在LCD上显示(3位整数,4位小数);18B20温度测量+LCD显示温度;源程序如下: LIST P=PIC16F877 TITLE=LCD DISPLAY ERRORLEVEl -302 ;去掉编译时的302号提示信息_CONFIG 3F72H ;晶振配置HS,看门狗禁止,上电延时使能,掉电复位使能 ;低电压编程禁止,代码不保护;*以下是暂存器的定义*#INCLUDE#DEFINE RS PORTE,0 ;LCD控制信号#DEFINE RW PORTE,1 ;LCD控制信号#DEFINE E PORTE,2 ;LCD控制信号#DEFINE DAT PORTC ;LCD数据线#DEFINE DQ PORTE,1 ;18B20数据口 CBLOCK 20H DLY_CNT2 ;延时1S用的计数器2 DLY_CNT3 ;延时1S用的计数器2 KeyHigh4 ;按键高四位扫描值 KeyLow4 ;按键低四位扫描值 ScanCode ;扫描码 KeyIndex1 ;键值1 KeyIndex2 ;键值2 SetShi ;十位 SetGe ;个位 ShowTimes1 ShowTimes2 ;控制进入SHOW死循环的时间长度 DQ_DELAY1 DQ_DELAY2 TEMP TEMP1 TEMP2 ;存放采样到的温度值 COUNT COUNT1 RealShi RealGe LCD1 LCD2 LCD3 LCD4 LCD5 LCD6 LCD7 LCD8 LCD9 LCD10 LCD11 LCD12 LCD13 LCD14 LCD15 BAW SHW GEW KEY TEMP_CHAR ENDCTMR0_VALUE EQU 0AH ;寄存器初值为6,预分频比1:4,中断一次时间为4*(256-6)=1000usDQ_DELAY_VALUE1 EQU 0FAHDQ_DELAY_VALUE2 EQU 4H ;*以下是宏定义*READ_STATE MACRO ;读18B20的状态 BCF RS BSF RW BSF E ENDMWRITE_COMMAND MACRO ;写命令 BCF RS BCF RW BCF E ENDMWRITE_DATA MACRO ;写数据 BSF RS BCF RW BCF E ENDM;*以下是程序的开始* ORG 00H NOP GOTO main ;入口地址 ORG 04H RETFIE ;在中断入口出放置一条中断返回指令,防止干扰产生中断;-LCDDISPLAY CALL INITIAL CALL DELAY10MS MOVF LCD1,W CALL SENDCHAR MOVF LCD2,W CALL SENDCHAR MOVF LCD3,W CALL SENDCHAR MOVF LCD4,W CALL SENDCHAR MOVF LCD5,W CALL SENDCHAR MOVF LCD6,W CALL SENDCHAR MOVF LCD7,W CALL SENDCHAR MOVF LCD8,W CALL SENDCHAR; MOVLW 0A8H; CALL SENDML MOVF LCD9,W CALL SENDCHAR MOVF LCD10,W CALL SENDCHAR MOVF LCD11,W CALL SENDCHAR MOVF LCD12,W CALL SENDCHAR MOVF LCD13,W CALL SENDCHAR MOVF LCD14,W CALL SENDCHAR MOVF LCD15,W CALL SENDCHAR RETURN;-;LCD INITIAL;-INITIAL CLRF PORTE MOVLW 08H CALL SENDML MOVLW 38H CALL SENDML MOVLW 0FH CALL SENDML MOVLW 06H CALL SENDML MOVLW 01H CALL SENDML MOVLW 02H CALL SENDML RETURN;-SENDCHAR MOVWF TEMP_CHAR BSF E MOVF TEMP_CHAR,W MOVWF PORTC NOP NOP BSF RS BCF RS BCF E CALL DELAY10MS RETURN;-SENDML MOVWF PORTC CALL SETCOM;设置EN为1,使能LCD NOP CALL CLECOM;将EN、RS、RW置0 MOVLW 0FFH MOVWF PORTC CALL DELAY1MS RETURN;-SETCOM BSF E ;设置EN为1,使能LCD RETURN;-CLECOM CLRF PORTE ;将EN、RS、RW置0 RETURN;-DELAY1MS MOVLW 40H MOVWF 23HLOOP4M DECFSZ 23H,F GOTO LOOP4M RETURN;-DELAY10MS: MOVLW .200 MOVWF DLY_CNT2 ;中循环寄存器LOOP2: MOVLW .166 MOVWF DLY_CNT3 ;内循环寄存器LOOP3: DECFSZ DLY_CNT3,F ;内循环寄存器递减 GOTO LOOP3 ;继续内循环 DECFSZ DLY_CNT2,F ;中循环寄存器递减 GOTO LOOP2 ;继续中循环 RETURNScanKeypad: BANKSEL TRISD MOVLW 0xF0 MOVWF TRISD ;高四位输入,低四位输出 BANKSEL PORTD CLRF PORTD ;低四位输出0 NOP ;使指令执行完毕,输出状态确定 MOVF PORTD,W ;读取高四位状态 MOVWF KeyHigh4 ;获得高四位输入值 MOVLW 0xF0 SUBWF KeyHigh4,W ;判断高四位是否全为1 BZ NoKey ;全为1说明无按键按下 CALL DELAY10MS ;延时消抖 BANKSEL TRISD MOVLW 0x0F MOVWF TRISD ;低四位输入,高四位输出 BANKSEL PORTD CLRF PORTD ;高四位输出0 NOP ;使指令执行完毕,输出状态确定 MOVF PORTD,W ;读取低四位状态 MOVWF KeyLow4 ;获得低四位输入值 MOVLW 0x0F SUBWF KeyLow4,W ;判断低四位是否全为1 BZ NoKey ;全为1说明无按键按下 MOVF KeyLow4,W IORWF KeyHigh4,W ;按位或运算,得到键值码 RETURN ;扫描码放在W中NoKey: MOVLW 0x00 RETURNSMG_TABLE: ADDWF PCL,F ;0 1 2 3 DT 0x3f,0x06,0x5b,0x4f ;4 5 6 7 DT 0x66,0x6d,0x7d,0x07 ;8 9 A b DT 0x7f,0x6f,0x77,0x7c ;C d E F DT 0x39,0x5e,0x79,0x71ScanCode_Table: ADDWF PCL,F ;0 1 2 3 DT b01110111,b01111011,b01111101,b01111110 ;4 5 6 7 DT b10110111,b10111011,b10111101,b10111110 ;8 9 A b DT b11010111,b11011011,b11011101,b11011110 ;C d E F DT b11100111,b11101011,b11101101,b11101110 main NOP CLRF BAW CLRF SHW CLRF GEW BSF STATUS,RP0 MOVLW 03H MOVWF TRISB CLRF TRISC;寄存器复位0,D全部为输出 CLRF TRISE;寄存器复位0,E全部为输出 BCF STATUS,RP0 MOVLW 0c7h MOVWF LCD1 MOVLW 0ebh ;请 MOVWF LCD2 MOVLW 0cah MOVWF LCD3 MOVLW 0e4h ;输 MOVWF LCD4 MOVLW 0c8h MOVWF LCD5 MOVLW 0ebh ;入 MOVWF LCD6 MOVLW 0c9h MOVWF LCD7 MOVLW 0e8h ;设 MOVWF LCD8 MOVLW 0d6h MOVWF LCD9 MOVLW 0c3h ;置 MOVWF LCD10 MOVLW 0ceh MOVWF LCD11 MOVLW 0c2h ;温 MOVWF LCD12 MOVLW 0b6h MOVWF LCD13 MOVLW 0c8h ;度 MOVWF LCD14 MOVLW : ;: MOVWF LCD15 CALL LCDDISPLAY BANKSEL TRISB ;选择TRISB寄存器的bank CLRF TRISB ;TRISB清零,即C口全为输出 BANKSEL PORTB ;选择PORTB寄存器的bank CLRF PORTB ;输出为0,小灯全灭 BANKSEL TRISA CLRF TRISA BANKSEL PORTA CLRF PORTA BSF PORTA,0LOOP0: CALL ScanKeypad ;扫描码放在W中,为0说明无按键按下 BZ LOOP0 ;若扫描码为0则继续扫描键盘 MOVWF ScanCode ;保存扫描码 MOVLW 0xFF MOVWF KeyIndex1 ;为了使加1后的KeyIndex1是0NEXT_KEYCODE0: INCF KeyIndex1,F ;键值1索引号加1 MOVF KeyIndex1,W ;键值1索引号送W CALL ScanCode_Table;获得索引号对应的扫描码 SUBWF ScanCode,W ;相减判断是否相等 BNZ NEXT_KEYCODE0 ;不为0,说明不等,再比较下一个 ;为0说明相等,说明此时的KeyIndex1就是扫描码对应的值了 MOVF KeyIndex1,W MOVWF SetShi CALL SMG_TABLE ;获得键值对应的数码管字形码 MOVWF PORTB ;送B口显示 BANKSEL PORTA ;选择PORTA寄存器的bank BSF PORTA,3LOOP1: CALL ScanKeypad ;扫描码放在W中,为0说明无按键按下 BZ LOOP1 ;若扫描码为0则继续扫描键盘 MOVWF ScanCode ;保存扫描码 MOVLW 0xFF MOVWF KeyIndex2 ;为了使加1后的KeyIndex2是0NEXT_KEYCODE1: INCF KeyIndex2,F ;键值索引号加1 MOVF KeyIndex2,W ;键值索引号送W CALL ScanCode_Table;获得索引号对应的扫描码 SUBWF ScanCode,W ;相减判断是否相等 BNZ NEXT_KEYCODE1 ;不为0,说明不等,再比较下一个 ;为0说明相等,说明此时的KeyIndex就是扫描码对应的值了 MOVF KeyIndex2,W MOVWF SetGe MOVLW 0x00 MOVWF ShowTimes1 MOVWF ShowTimes2 SHOW: MOVF SetShi,W CALL SMG_TABLE ;获得键值对应的数码管字形码 MOVWF PORTB ;送B口显示 BANKSEL PORTA ;选择PORTA寄存器的bank BSF PORTA,3 NOP BCF PORTA,3 MOVF SetGe,W CALL SMG_TABLE ;获得键值对应的数码管字形码 MOVWF PORTB ;送B口显示 BANKSEL PORTA ;选择PORTA寄存器的bank BSF PORTA,2 NOP BCF PORTA,2 INCFSZ ShowTimes1,f GOTO SHOW INCFSZ ShowTimes2,f ;当ShowTimes2为0时跳出死循环SHOW GOTO SHOW ;*主程序*MAIN1 CLRF PORTC CLRF PORTE BANKSEL TRISE CLRF TRISE ;E口所有先设置为输出 CLRF TRISC MOVLW 01H MOVWF OPTION_REG ;分频比1:4,定时器,内部时钟源 MOVLW 06H MOVWF ADCON1 ;关闭所有A/D口 BCF STATUS,RP0 MOVLW 00H MOVWF INTCON ;关闭所有中断,且同时清零T0IF CLRF TEMP CLRF TEMP1 CLRF TEMP2 ;清零临时寄存器 ;*循环处理部分*;先启动18B20温度转换程序,在判断温度转换是否完成(需750us);未完成则调用显示子程序,直到完成温度转换;完成后读取温度值;送LCD显示LOOP CALL RESET_18B20 ;调用复位18B20子程序 MOVLW 0CCH MOVWF TEMP CALL WRITE_18B20 ;SKIP ROM命令 MOVLW 44H MOVWF TEMP CALL WRITE_18B20 ;温度转换命令 CLRF STATUS BCF INTCON,T0IF CALL DELAY_750MS ;调用温度转换所需要的750MS延时 NOP CALL RESET_18B20 MOVLW 0CCH MOVWF TEMP CALL WRITE_18B20 ;SKIP ROM命令 MOVLW 0BEH MOVWF TEMP CALL WRITE_18B20 ;读温度命令 CALL READ_18B20 ;调用读温度低字节 MOVFW TEMP MOVWF TEMP1 ;保存到TEMP1 CALL READ_18B20 ;调用读温度高字节 MOVFW TEMP MOVWF TEMP2 ;保存到TMEP2 CALL RESET_18B20 CALL TEMP_CHANGE ;调用温度转换程序 CALL DISPLAY ;调用LCD显示程序 CALL COMPARE ;调用比较函数,看是否报警 GOTO LOOP ;循环工作;-温度比较,输出继电器-COMPARE MOVF SetShi,W SUBWF RealShi,W ;实际温度(十位)与设置温度(十位)相减 BTFSS STATUS,C ;判进位(借位)标志 GOTO SAFE ;有借位,即RealShi小于SetShi,无需报警 BTFSS STATUS,Z ;无借位,即RealShi大于等于SetShi,判别是否相等 GOTO UNSAFE ;Z=0,说明RealShi大于SetShi,报警 MOVF SetGe,W ;Z=1,说明RealShi等于SetShi,继续比较个位 SUBWF RealGe,W ;实际温度(个位)与设置温度(个位)相减 BTFSS STATUS,C ;判进位(借位)标志 GOTO SAFE ;有借位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门窗居间协议合同的模板
- 项目培训服务协议书范本
- 汽车买卖合同协议书样本
- 防火门委托定做合同范本
- 游乐场场地租赁合同协议
- 污水处理排水协议书范本
- 洗涤服务合同协议书模板
- 江苏农业农村保险协议书
- 电梯屏广告采购合同范本
- 鲜切鱼模板售卖合同范本
- 高中英语选择性必修四 2019人教版新教材全册课文与翻译
- 1.4点电荷电场匀强电场课件(13张PPT)
- EBU导管选择和操作长头指引导管课件
- MT/T570—1996煤矿电气图专用图形符号
- 燃气输配工程设计施工验收技术规范 DB11T 302-2005
- 自动喷水灭火系统严密性试验记录
- 河北省城市集中式饮用水水源保护区划分
- 工程材料采购方案(完整版)
- 部编本新人教版一年级下册语文教学计划
- 慢阻肺的健康教育
- CH-iVMS-4200部署方案
评论
0/150
提交评论