




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京信息职业技术学院毕业设计论文专业物联网应用技术题目基于单片机的智能温控风扇设计指导教师评阅教师摘要本次设计的单片机系统是基于单片机的智能电风扇设计。使用的控制芯片是AT89C51,用数字温度传感器DS18B20检测温度并通过数码管显示,通过继电器来实现小电流的单片机控制大电流的电风扇电机工作,利用单片机内部定时器实现电风扇定时时间的设定。本套系统的软件程序思想主要是通过实时温度与设定的温度上下限值进行比较后,控制电风扇启停、强弱挡,最终使环境维持让人舒适的温度。用户可以根据自身需求自行设定温度上下限值、电风扇启停及工作时间。用户设定的温度上下限值通过软件程序自动保存在数字温度传感器DS18B20内部的EPPROM内存单元中,掉电后数据不会丢失,不必劳烦用户每次启动风扇反复重新设定温度上下限值。【关键词】智能,传感器,温控,风扇ABSTRACTTHEDESIGNISBASEDONSINGLECHIPCONTROLTHERMOSTATFANDESIGNEDTOSENSITIVESENSINGTEMPERATURESENSINGANDDISPLAY,THEDESIGNAT89C51CONTROLCENTER,ASTHETEMPERATURESENSORDS18B20SENSORSENSESTHETEMPERATUREOFTHEINTERNALTIMERSETTIMESETTHELENGTHTOCONTROLTHEINTENSITYANDWINDSPEEDFANSWITCHTHEDESIGNOFSINGLECHIPMICROCOMPUTERSYSTEMISBASEDONSINGLECHIPMICROCOMPUTERINTELLIGENTTEMPERATURECONTROLFANDESIGNTHROUGHTHERELAYTOACHIEVESMALLCURRENTSCMCONTROLLARGECURRENTOFTHEELECTRICFANMOTORWORK,REALIZEELECTRICFANTIMINGTIMEOFINTERNALMICROCONTROLLERTIMERSETTINGTHISSETOFSYSTEMSOFTWAREPROGRAMTHOUGHTMAINLYTHROUGHREALTIMETEMPERATUREANDSETTINGTEMPERATUREUPPERANDLOWERLIMITVALUEAFTERCOMPARISON,STRONGORWEAKANDEVENTUALLYMAKETHEENVIRONMENTTOMAINTAINACOMFORTABLETEMPERATURETHEUSERCANACCORDINGTOTHEIROWNNEEDSTOSETTEMPERATUREUPPERANDLOWERLIMIT,ELECTRICFANSTARTSTOPANDWORKINGTIMEUSERSTOSETTHETEMPERATUREOFTHEUPPERANDLOWERLIMITVALUEAUTOMATICALLYBYTHESOFTWAREPROGRAMSTOREDINTHEDIGITALTEMPERATURESENSORDS18B20THEINTERNALEPPROMMEMORYUNIT,DONTNEEDTOBOTHERTHEUSERWITHEACHFANLAUNCHEDAGAINANDAGAINTORESETTEMPERATURELIMITUPANDDOWN【KEYWORD】INTELLIGENCE,SENSORS,TEMPERATURE,FAN目录1、引言12、总体设计13、硬件设计231AT89C51单片机概述2311AT89C51单片机组成3312AT89C51单片机的引脚结构432DS18B20单线数字温度传感器54、系统电路设计641单片机最小系统电路设计6411AT89C51单片机的最小系统642按键电路设计743控制电路设计8431温度控制电路设计8432声响控制电路设计844温控自动电路设计9441双向晶闸管介绍9442继电器介绍9443电路设计945数码显示电路设计1046电源电路设计11461LM7805集成稳压器介绍11462电路设计115、软件设计1251总体设计思想1252各部分的软件框图和程序12521主程序流程图12522温度显示子程序流程图13总结13附录14附录一电路原理图14附录二源程序15致谢31参考文献321、引言电扇是人们日常生活中常用的降温工具,从开始的吊扇到现在的USB风扇,无处不见电扇的踪迹。虽然如今空调已经走进千家万户,但是电扇的低位还是无可取代,作为一种节能环保,并且廉价简单的降温工具,电扇还在很多人家发挥着自己独特的作用。顺应时代潮流,各种多功能的风扇逐渐在取代传统风扇。单片机作为一种智能化程度高,控制精度高,操作简单,廉价易得,抗干扰能力强等特点,越来越多的应用于智能化产品之中。市场上智能风扇产品相继问世,制作方法也多种多样,功能也逐渐完善,普遍都具有了手动变速和定时关闭等功能,相对而言,具备人性化,智能化的风扇还是很少,使用也并不广泛,而且在电子工艺高度发展的今天,智能化的步伐也越来越快,尤其是中国这个高速发展的国家,电扇的智能化也该向前迈进一个步伐。在中国市场上风扇还是有一定的市场份额的,几乎每个家庭都有风扇,具备价格便宜,摆放轻便,体积灵巧等特点,使得风扇在中小城市以及乡村将来一段时间内仍然会占有市场的大部分份额,为提高风扇的市场竞争力,使之在技术含量上有所提高,满足智能化的要求,智能风扇很具竞争力。大学四年即将结束,为了检验自己的学习情况,我决定使用之前所学习到的硬件只是结合相关的软件基础来制作一个基于单片机的智能温控风扇。基于对人性化与智能化相结合的考虑,同时基于对价格的考虑,本设计决定制作一个基于51单片机的智能温控风扇,该风扇具有随温度自动调节风速的功能,并且在无人时可以自动关闭,而且可以根据每个人的不同情况来设定基准温度,从而实现了人性化与智能化的双重目标。2、总体设计本设计的整体思路是利用温度传感器DS18B20来检测环境温度,并直接输出数字温度给51单片机进行处理,并将实时温度、设置温度、风速显示在液晶12864上。设置温度辅以2个可调按键,一个提高设置温度,一个降低设置温度,设置温度只能是整数型式,检测到的环境温度可以精确到小数点后一位。本系统还配备一个红外探头,探测出风范围内是否有人,若无人则自动关闭风扇。如图21所示。AT89S52单片机芯片电扇执行18B20温度采集5V电源下载接口继电器控制数码管显示蜂鸣器报警图21硬件总体框图3、硬件设计31AT89C51单片机概述在20世纪70年代时,当时的微电子技术正处在一个发展阶段,集成电路也属于中规模的发展时期,对于新材料新工艺尚未进入成熟阶段,单片机也是如此,仍处在一个初级的发展阶段,元件集成规模还比较小,功能也比较简单,一般包括CPU、RAM,有的还包括了一些比较简单的I/O口,将I/O口集成到芯片上,单片机还组要将一些外围的其他处理电路共同构成一个完整的计算系统。类似的单片机还有Z80微处理器。1976年由INTEL公司推出的MCS48单片机,这个时期的单片机才是真正的8位单片微型计算机,因此逐渐推向了市场。MCS48单片机由于它的体积小,功能全,价格低在市场上得到了广泛的应用,这为单片机的发展奠定了基础,在单片机的发展史上增添了亮丽的一笔,一个重要的里程碑。其后单片机进入多功能强大的发展阶段,由若干但公司研发约有几十个品种,将近300多个系列,此时才算是真正进入单片机时代,普遍的单片机均集成CPU、RAM、ROM、I/O接口也很多、中断系统相当丰富,并且部分单片机还自带A/D转换器,功能性很强大强大,RAM和ROM的容量也日趋增长,寻址空间可达64KB,此时的单片机发展到了一个新纪元,应用领域也日趋广泛,单片机控制的智能化的电器也便走上了发展道路。上个世纪90年代单片机如雨后春笋一般,MOTOROLA公司推出MC68HC系列单片机,随后NTEL公司推出了80960超级32位单片机并且将相关产品投放市场,成为单片机发展历史上的一个里程碑。311AT89C51单片机组成如图31所示时钟电路ROM/EPROM/FLASH4KRAM128BSFR21个定时/计数器CPU总线控制终端系统5中断源、2优先级串行口全双工1个并行口4个XTAL2XTAL1RSTEAALEPSENP0P3P2P1图31AT89C51单片机组成结构图目前使用较为广泛的主要是89C5X系列的单片机,都采用了标准的MCS51控制内核,并且此系列单片机品种齐全、性能可靠、小体积、价格便宜、供货充足、调试和编程都十分方便,所以应用比较广泛。AT89C51是CMOS结构8位单片机,具有低功耗、电压低、性能好等优点,该单片机内部具有一个内存大小为8KB的FLASHEPPROM,可反复擦除程序10000次,设计时采用了CMOS和ATMEL公司的高集成度、数据不易丢失的存储器技术,片内FLASH存储器可以使用常规的非易失性存储编程器进行编写。因此,STC89C52是一种功能强大,使用灵活并且价格低廉的单片机,可广泛应用于各个控制领域。AT89C51单片机的主要特性如下18KB可反复擦写程序的FLASH存储器;2全表态工作024HZ;3256X8字节的内部RAM;432个外部双向输入、输出IO口;312AT89C51单片机的引脚结构。如图32所示。图32AT89C51单片机的管脚分布表31AT89C51单片机的引脚功能引脚引脚功能VCC电源电压GND接地P0口P0口是双向8位三态IO口,每个IO口都可以独立控制,它不带上拉电路,主要用作数据和地址的输入输出。P1P1口试一个普通的输入输出口,其内部带有上拉电阻,也就是说不需要外接上拉电阻。在对其进行数据读写操作时方法同P0口。P2P2口与P1口功能相同,在使用时除像P1口做驱动口外还与P0口构成地址的高8位,与P0口形成16位地址的输入输出数据操作。P3P3端口除普通IO口功能外,还有第二功能。RST单片机复位引脚,当RST复位引脚上出现两个或两个以上机器周期高电平再变为低电平,单片机将完成复位动作。表32P3口的第二功能表XTAL1外接时钟引脚。单片机外接晶振电路的输入端。片内震荡电路的输入端。XTAL2外接时钟引脚。单片机外接晶振电路的输出端。片内震荡电路的输出端。32DS18B20单线数字温度传感器温度传感器介绍DS18B20是数字温度传感器。其主要优点是体积小、价格低、精度高。用它做温度测量系统的设计时,可以使电路更简单,在一根通信线以上,可以挂很多的DS18B20温度传感器,使用非常方便。数字温度传感器DS18B20的实物图。如图33所示图33DS18B20实物图DS18B20数字温度传感器主要由4部分组成64位的ROM、温度传感器、非挥发的温度报警触发器TH和TL及配置寄存器。数字温度传感器DS18B20的内部结构。如图34所示。端口引脚第二功能P30RXD串行输出口P31TXD串行输入口P32INT0(外部中断0)P33INT1(外部中断1)P34T0定时/计数器0P35T1定时/计数器1P36WR外部数据写P37RD外部数据读图34DS18B20内部结构图表33DS18B20传感器引脚图序号名称DS18B20引脚功能说明1GND地信号2DQ数据输入/输出引脚,单总线接口。3VDD可选择的VDD引脚。4、系统电路设计41单片机最小系统电路设计411AT89C51单片机的最小系统。如图41所示。图41AT89C51单片机的组成结构图1时钟电路时钟电路是能够为AT89C51单片机产生工作所必须的时钟信号,AT89C51单片机本身就是一个复杂的同步时序电路。AT89C51单片机在唯一的时钟信号的严格控制下按时序执行指令,MCU时钟频率会影响速度和稳定性。通常时钟有两种外部时钟和内部时钟。本系统使用的内部时钟系统提供时钟信号。AT89C51单片机内部自带的震荡器是一个高增益反向放大器,XTAL1和XTAL2分别为芯片外部时钟的输入输出端口,它们跨接在晶体振荡器和微调电容之间使用。对于晶振电路电容的选择,如果所选电容太小,就会影响系统的快速性、稳定性及振荡的频率,所以C1、C2电容一般选在30PF左右。晶振一般选用范围为12MHZ到12MHZ,单片机使用越高的晶振频率就可以得到越高的运行速度,但是这对存储器的存储速度提出了更高的要求。为了提升晶振电路的稳定性,一般选用温度稳定性好的瓷片电容及频率为12MHZ的晶振。时钟电路图如图42所示。图42时钟电路图(2)复位电路AT89C51单片机可以通过RST复位引脚进行初始化操作,其原理是让单片机程序从指定初始化地址开始执行程序。只要让AT89C51单片机的RST复位引脚上出现两个或两个以上机器周期的高电平,就可以使单片机程序复位,但是如果保持RST复位引脚一直是高电平,那么AT89C51单片机就一直循环复位,一旦RST复位引脚由高电平变为低电平后,单片机便复位成功。复位电路如图43所示。图43复位电路图42按键电路设计K1是功能键,第一次按下时,可以对下限温度进行设置第二次按下时,可以对上限温度进行设置第三次按下时,恢复温度显示。K2是加一键,可以对上下限温度进行加一调整,长按时执行快速加一操作。K3是减一键,可以对上下限温度进行减一调整,长按时执行快速减一操作。按键电路如图44所示。图44按键电路图43控制电路设计431温度控制电路设计温度采集电路主要是由数字温度传感器DS18B20组成的。它能够把采集的温度数据转化成二进制数,经过单片机处理后变为十进制,最后通过数码管显示。如图45温控传感器电路图45传感器电路图432声响控制电路设计该电路主要由数字温度传感器DS18B20、三个按键、一个PNP型三极管和一个蜂鸣器等组成的。声响电路在每按下按键时会响一声,当没DS18B20数字温度传感器数值超过或低于温度上下限时,单片机就会通过蜂鸣器发出警报声音。声音电路会在每个按键的按下时响一声,当数字温度传感器DS18B20没有温度数据输出时,单片机将通过蜂鸣器发出报警声音。上下限温度值主要是通过按键K1、K2、K3来设定。按键K1、K2、K3分别接入单片机的P14、P15、P16脚。电路如图46所示图46声响控制电路图44温控自动电路441双向晶闸管介绍双向晶闸管,具有对称性的特点,使它能够在两个方向上导通,是一种理想的交流开关装置。双向晶闸管由NPNPN五层半导体制成的,从中引出了三个电极。双向晶闸管也可以视为两个单向晶闸管反向并联,但它只有一个控制极。442继电器介绍继电器是一种电气控制器件。它具有控制系统和被控制系统。经常用在自动控制电路中,它的基本原理是用小电流控制大电流运作,相当于一种“自动开关”。因此继电器在电路中得到了广泛应用,如用于自动调节、安全保护、转换电路等。443电路设计该电路的主要功能是根据单片机给出的信号来控制继电器,从而控制电风扇。正常情况下,电风扇工作状态默认为弱风挡,当实时温度低于温度下限TL时,继电器1吸合,关闭风扇;当实时温度高于温度上限时,继电器2吸合,切换到强风档。电路如图47所示。图47温控自动电路45数码显示电路显示电路部分包括5个共阳极八段数码管,PNP型晶体管,电阻器等。用单片机的P0端口连接共阳极数码管的8位数据端用来提供段选数据,用单片机的P2端口的P23P27连接数码管的片选端用来提供片选信号输,用8550(PNP型)三极管搭建驱动电路驱动来驱动数码管显示。因为P0口内部没有上拉电阻,所以在P0接一个10K的排阻到电源。为防止对数码管的损坏,在P0端口各加一个300欧姆的限流电阻。过P0口把要显示的数据通送给数码管,并且通过P27P23五个端口轮流打开数码管的位选通,由于每位数码管刷新显示的时间十分短(扫描周期在20MS左右)和人眼视觉暂留,所以我们基本看不出它的闪烁,而是固定同步显示各数据。电路如图48所示。图48数码管显示电路46电源电路461LM7805集成稳压器介绍三端稳压器LM7805是常见的,可以提供5V直流输出电压,其应用范围非常广泛,包含的调节器的过流保护电路和过载保护电路。如果使用散热器,可以继续提供1A的输出电流,如果使用周边设备相互配合,可以提供不同的电压和电流。电路如图49所示。图49LM7805引脚图462电路设计本系统设计的电源电路采用9V变压器将220V交流电变为9V交流电,然后经过整流电路、2200UF电解电容滤波后变为较平稳的直流电,再送给LM7805稳压器变为平整的直流电,最后通过220UF电解电容、104PF瓷片电容滤去电压中的毛刺电压,最后得到5V稳压电源。电路如图410所示。图410电源电路图5、软件设计51总体设计思想本系统是基于AT89C51单片机设计的。首先是软件检测数字温度传感器DS18B20工作是否正常,如果发现系统检测不到数字温度传感器DS18B20采集的温度数据时,蜂鸣器发出报警信息,提示用户检查系统或更换数字温度传感器DS18B20。系统检测正常时,通过3个功能按键K1、K2、K3来设定好系统温度上下限值后,按确认键,系统进入正常运行状态。通过对数字温度传感器DS18B20进行数据采集,用数码管显示实时温度。当实时温度低于或高于设定温度上下限时,通过单片机输出信号控制继电器关断从而控制电风扇启停、强弱风挡的切换,从而达到环境温度的调控目的。52各部分的软件框图和程序521主程序流程图主程序流程图如图51所示。图51主程序流程图522温度显示子程序流程图数码管显示子程序流程图如图52所示。图52DS18B20复位与检测子程序流程图总结到目前为止,我的论文基本完成。从最初的无从下手,毫无头绪,再到对思路的清晰,整个设计过程都是对我的考验。因为我对电路一直都挺感兴趣的,我开始思考我的论文题目,从定下论文题目后,我开始收集材料,尽量让我的资料更加完整,在之后在写作的过程中,我也遇到了许多的问题,多亏了老师的指导和同学们的帮助,我才能把论文慢慢成形。当我终于完成了所有的任务之后,看着我的论文,我觉得一切都是值得的。这次毕业论文的制作过程让我更加了解了自己,知道了独立思考的重要性。我不会忘记这次在毕业设计中所感受到的一切,这让我知道今后无论遇到任何事,都需要脚踏实地、认真谨慎,更要有不怕困难,坚持不懈的精神。附录附录一电路原理图P101P112P123P134P145P156P167P178RST9RXD/P3010TXD/P3111INT0/P3212INT1/P3313T0/P3414T1/P3515WR/P3616RD/P3717XTAL218XTAL119GND20P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/PROG30EA/VP31P0732P0633P0534P0435P0336P0237P0138P0039VCC40U6STC89C52C530PC630P12C4110592M5VR161KC710UFR1551KS1SWPB5VTXDRXDP21P22P23P24ALEP10P11P12P13P14P15P16P175VR242KR23GUNGMING213456RCOR2110R2210KP37D3ZWX12345678910111213141516U5LCDR1347KP00P01P02P03P04P05P06P07VCCGNDP25P26P275VP00P01P02P03P04P05P06P07P27P26P25P20P3676284153U155R110KR210KC2001UC110UBJ14253U3LM2575C310UC430UD2IN5819L1330UHINOUT12S3SPEAKERADC0809GNDADC0809IN3ADC0809IN4ADC0809IN5ADC0809VCCP36VCC12IO3GND4U4DHT11R145K5VP20附录二源程序精准温度显示温控自动风扇系统说明1、K1按第一次进入设定低温动作温度值TL状态2、K1按第二次进入设定高温动作温度值TH状态3、K1按第三次显示当前温度值4、设定过程K2加键,K3减键,可快速调5、当实时温度值在TL和TH之间时,开启弱风档;当实时温度低于TL时,关闭风扇;当实时温度高于TH时,开启大风档。每次设置的TH和TL均被保存在DS18B20的ROM内,掉不需重新设置TIMER_LDATA23HTIMER_HDATA24HTIMER_COUNDATA25HTEMPLDATA26HTEMPHDATA27HTEMP_THDATA28HTEMP_TLDATA29HTEMPHCDATA2AHTEMPLCDATA2BHTEMP_ZHDATA2CHBEEPEQUP37DATA_LINEEQUP33C1EQUP34C1控制口,接继电器1C2EQUP35C2控制口,接继电器2FLAG1EQU20H0FLAG2EQU20H1K1EQUP14K2EQUP15K3EQUP16ORG0000HJMPMAINORG000BHAJMPINT_T0MAINMOVSP,30HMOVTMOD,01HT0,方式1MOVTIMER_L,00H50MS定时值MOVTIMER_H,4CHMOVTIMER_COUN,00H中断计数MOVIE,82HEA1,ET01LCALLREAD_E2MOV20H,00HSETBBEEPSETBC1SETBC2MOV7FH,0AH熄灭符CALLRESET复位与检测DS18B20JNBFLAG1,MAIN1JMPSTARTMAIN1CALLRESETJBFLAG1,STARTLCALLBEEP_BLJMPMAIN1STARTMOVA,0CCH跳过ROM匹配CALLWRITEMOVA,044H发出温度转换命令CALLWRITECALLRESETMOVA,0CCH跳过ROM匹配CALLWRITEMOVA,0BEH发出读温度命令CALLWRITECALLREAD读温度数据CALLCONVTEMPCALLDISPBCDCALLDISP1CALLSCANKEYLCALLTEMP_COMPJMPMAIN1功能键扫描子程序SCANKEYMOVP1,0F0HJBK1,SCAN_K2CALLBEEP_BLSCAN_K1CALLALERT_TLCALLALERT_PLAYJBK1,SCAN_K1CALLBEEP_BLSCAN_K11CALLALERT_THCALLALERT_PLAYJBK1,SCAN_K11CALLBEEP_BLSCAN_K2JBK2,SCAN_K3CALLBEEP_BLSCAN_K3JBK3,SCAN_ENDCALLBEEP_BLLCALLRESET_ALERTLCALLRE_18B20LCALLWRITE_E2SCAN_ENDRET设置动作温度值TL,THRESET_ALERTCALLALERT_TLCALLALERT_PLAYJNBK3,K3为位移键SETBTR0RESET_TLCALLALERT_PLAYJNBFLAG2,R_TL01MOV75H,7FH消影MOV76H,7FHCALLALERT_PLAYJMPR_TL02R_TL01CALLALERT_TLMOV75H,7EH送设定值MOV76H,7DHCALLALERT_PLAYR_TL02JNBK1,K011AJNBK2,K011BJNBK3,RESET_THJMPRESET_TLK011AINCTEMP_TLMOVA,TEMP_TLCJNEA,120,K012A没有到设定上限值,转MOVTEMP_TL,0K012ACALLTL_DELJMPRESET_TLK011BMOVA,TEMP_TLCJNEA,00H,K没有到设定下限值,转MOVTEMP_TL,120KDECTEMP_TLK012BCALLTL_DELJMPRESET_TLRESET_THCALLBEEP_BLJNBK3,RESET_TH1CALLALERT_PLAYJNBFLAG2,R_TH01MOV75H,7FH消影MOV76H,7FHCALLALERT_PLAYJMPR_TH02R_TH01CALLALERT_THMOV75H,7EHMOV76H,7DHCALLALERT_PLAYR_TH02JNBK1,K021AJNBK2,K021BJNBK3,K002JMPRESET_TH1K021AINCTEMP_THMOVA,TEMP_THCJNEA,120,K022A没有到设定上限值,转MOVTEMP_TH,0K022ACALLTH_DELJMPRESET_TH1K021BMOVA,TEMP_THCJNEA,00H,K023B没有到设定下限值,转MOVTEMP_TH,120K023BDECTEMP_THK022BCALLTH_DELJMPRESET_TH1K002CALLBEEP_BLCLRTR0关闭中断RET键延时子程序TL_DEL设定温度低值TL延时MOVR2,0AHTL_DEL1CALLALERT_TLCALLALERT_PLAYDJNZR2,TL_DEL1RETTH_DEL设定温度高值TH延时MOVR2,0AHTH_DEL1CALLALERT_THCALLALERT_PLAYDJNZR2,TH_DEL1RET闪动显示标记符H、L、OTEMP_COMPSETBTR0启动中断MOVA,TEMP_THSUBBA,01HSUBBA,TEMP_ZHJCCHULI1MOVA,TEMP_ZHSUBBA,TEMP_TLJCCHULI2JNBFLAG2,T_COMP1FLAG20,显示标记字符MOV74H,0AH熄灭符LCALLDISP1JMPT_COMP2T_COMP1MOV74H,00HLCALLDISP1显示“O“T_COMP2SETBC1继电器1断开SETBC2继电器2断开CLRTR0关闭中断RET超温处理CHULI1CLRC1CLRC2继电器2吸合JNBFLAG2,CHULI10MOV74H,0AH熄灭符LCALLDISP1JMPCHULI11CHULI10MOV74H,0DHLCALLDISP1显示“H“CHULI11CLRTR0关闭中断RET欠温处理CHULI2CLRC1SETBC2继电器2断开JNBFLAG2,CHULI20MOV74H,0AH熄灭符LCALLDISP1JMPCHULI21CHULI20MOV74H,0CHLCALLDISP1显示“L“CHULI21CLRTR0RETWRITE_E2CALLRESETMOVA,0CCH跳过ROM匹配LCALLWRITEMOVA,48H动作温度设定值拷贝到EEROMLCALLWRITERETREAD_E2CALLRESETMOVA,0CCH跳过ROM匹配LCALLWRITEMOVA,0B8H动作温度值拷贝回暂存器CALLWRITERET处理温度BCD码子程序CONVTEMPMOVA,TEMPHANLA,80HJZTEMPC1温度零上转CLRCMOVA,TEMPL二进制数求补(双字节)CPLA取反加1ADDA,01HMOVTEMPL,AMOVA,TEMPHCPLAADDCA,00HMOVTEMPH,ATEMPHCHI符号位MOVTEMPHC,0BHSJMPTEMPC11TEMPC1MOVTEMPHC,0AHTEMPC11MOVA,TEMPHCSWAPAMOVTEMPHC,AMOVA,TEMPLANLA,0FH乘00625MOVDPTR,TEMPDOTTABMOVCA,ADPTRMOVTEMPLC,AMOVA,TEMPL整数部分ANLA,0F0HSWAPAMOVTEMPL,AMOVA,TEMPHANLA,0FHSWAPAORLA,TEMPLMOVTEMP_ZH,A组合后的值存入TEMP_ZHLCALLHEX2BCD1MOVTEMPL,AANLA,0F0HSWAPAORLA,TEMPHCMOVTEMPHC,AMOVA,TEMPLANLA,0FHSWAPATEMPLCHI个位数BCDORLA,TEMPLCMOVTEMPLC,AMOVA,R7JZTEMPC12ANLA,0FHSWAPAMOVR7,AMOVA,TEMPHCANLA,0FHORLA,R7MOVTEMPHC,ATEMPC12RET小数部分码表TEMPDOTTABDB00H,01H,01H,02H,03H,03H,04H,04H,05H,06HDB06H,07H,08H,08H,09H,09HDISPBCDMOVA,TEMPLCANLA,0FHMOV70H,A小数位MOVA,TEMPLCSWAPAANLA,0FHMOV71H,A个位MOVA,TEMPHCANLA,0FHMOV72H,A十位MOVA,TEMPHCSWAPAANLA,0FHMOV73H,A百位MOVA,TEMPHCANLA,0F0HCJNEA,010H,DISPBCD0SJMPDISPBCD2DISPBCD0MOVA,TEMPHCANLA,0FHJNZDISPBCD2十位数是0MOVA,TEMPHCSWAPAANLA,0FHMOV73H,0AH符号位不显示MOV72H,A十位数显示符号DISPBCD2RET温度显示子程序DISP1MOVR1,70H指向显示数据首址MOVR5,7FH扫描控制字初值PLAYMOVP0,0FFHMOVA,R5MOVP2,AMOVA,R1取显示数据到AMOVDPTR,TAB取段码表地址MOVCA,ADPTR查显示数据对应段码MOVP0,A段码放入P0口MOVA,R5JBACC6,LOOP5CLRP07LOOP5LCALLDL_MSINCR1指向下一个地址MOVA,R5放回R5内JNBACC3,ENDOUTRRAA中数据循环左移MOVR5,A放入R5中AJMPPLAY跳回PLAY循环ENDOUTMOVP0,0FFH一次显示结束,P0口复位MOVP2,0FFHP2口复位RETTABDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0BFH,0C7H,89HDL_MSMOVR6,0AHDL1MOVR7,64HDL2DJNZR7,DL2DJNZR6,DL1RET单字节十六进制转BCDHEX2BCD1MOVB,064HDIVABMOVR7,AMOVA,0AHXCHA,BDIVABSWAPAORLA,BRET报警值TH、TL数据转换ALERT_TLMOV79H,0CHMOV78H,0BHMOVA,TEMP_TLMOVR0,77HMOVB,064HDIVABCJNEA,01H,ALERT_TL1MOVR0,AJMPALE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国红尾扯旗鱼项目创业计划书
- 中国桑蚕养殖项目创业计划书
- 中国开源软件项目创业计划书
- 中国集群通信系统项目创业计划书
- 2025年学校教职工公寓租赁合同样本示例
- 中国牛肝菌项目创业计划书
- 中国奶山羊养殖项目创业计划书
- 中国干黄花菜项目创业计划书
- 中国豆制品加工项目创业计划书
- 网络营销与品牌建设-洞察阐释
- 2024年黑龙江医疗卫生事业单位招聘(药学)备考试题库(含答案)
- 2024年新高考1卷数学真题试卷及答案
- 湖北省武汉市洪山区2023-2024学年七年级下学期期末考试语文试卷
- 施工现场水电费协议
- 畜产品加工学复习资料
- 预防接种门诊验收表4-副本
- 离心泵的结构与工作原理通用课件
- 畜牧业的生物安全与疫情防控
- 国开电大可编程控制器应用实训形考任务5
- 关于皮肤科药物知识讲座
- 【小学心理健康教育分析国内外文献综述4100字】
评论
0/150
提交评论