基于MSP430的温度检测系统设计与实现终稿.doc

上传人:laozhun 文档编号:4148187 上传时间:2023-04-07 格式:DOC 页数:78 大小:2.84MB
返回 下载 相关 举报
基于MSP430的温度检测系统设计与实现终稿.doc_第1页
第1页 / 共78页
基于MSP430的温度检测系统设计与实现终稿.doc_第2页
第2页 / 共78页
基于MSP430的温度检测系统设计与实现终稿.doc_第3页
第3页 / 共78页
基于MSP430的温度检测系统设计与实现终稿.doc_第4页
第4页 / 共78页
基于MSP430的温度检测系统设计与实现终稿.doc_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《基于MSP430的温度检测系统设计与实现终稿.doc》由会员分享,可在线阅读,更多相关《基于MSP430的温度检测系统设计与实现终稿.doc(78页珍藏版)》请在三一办公上搜索。

1、南 京 工 程 学 院毕业设计说明书(论文)作 者: 王 超 学 号: 240092323 系 部: 康尼学院 专 业: 通信工程 题 目:基于MSP430的温度检测系统设计与实现指导者: 汪 力 纯 (实 验 师) 评阅者: 2013 年 6 月 南 京MSP430-based temperature detection system design and implementationA Dissertation Submitted toNanjing Institute of TechnologyFor the Academic Degree of Bachelor of Science

2、ByChao Wang Supervised by Technician Lichun WangCollege of KangniNanjing Institute of TechnologyJune 2013摘要MSP430单片机是德州公司最新开发的具有16位总线带FLASH 的单片机,由于它的性价比和集成度高,受到广大技术开发人员的青睐。它的可靠性能比较好,加强电干扰运行不受影响,适应工业级的运行环境,在各种行业中都占有重要的位置,越来越多的领域应用到以单片机为控制核心,用液晶显示作为显示终端的数字化控制设备,通过单片机对被控对象进行智能控制。MSP430单片机将会在工程技术应用中得到广泛

3、的应用。而且,它是通向DSP系列的桥梁,随着自动控制的低功耗化和高速化,MSP430系列单片机将会得到越来越多人的喜爱。通过这次毕业设计,我对MSP430单片机有了完整的了解,并且着重了解了MSP430F149芯片的原理图以及它的工作原理,对内部的硬件资源和自身的汇编语法进行了实验,把它和DS18B20温度传感器联系在一起实现了温度的测量以及报警。关键词:MSP430;超低功耗;单片机;DS18B20AbstractTexas MSP430 microcontroller is the latest development of a 16-bit bus with FLASH MCU, due

4、 to its cost-effective and highly integrated, by the majority of technology developers of all ages. Its reliability is better, enhancing electrical interference unaffected, adapt industrial-grade operating environment, in a variety of industry occupies an important position in both, applied to more

5、and more areas to microcontroller core, with LCD as a digital control display terminal equipment, through the controlled object MCU intelligent control.MSP430 microcontroller applications engineering technology will be widely used. And, it is a bridge leading DSP family, with automatic control, low

6、power consumption and high speed, MSP430 MCU will get more and more peoples favorite.Through this graduation project, I have a complete understanding of the MSP430 microcontroller, and focus on understanding the MSP430F149 chip schematic and it works, and the internal hardware resources and their ow

7、n assembler syntax conducted experiments it and DS18B20 linked to the temperature sensor of the temperature-measuring and alarm.Keywords: MSP430; ultra-low power; SCM; DS18B20目录第一章 绪论11.1 引言11.2 现状和发展状况11.3 课题研究的主要内容21.3.1 研究内容21.3.2 论文安排2第二章 系统总体方案设计32.1 系统组成结构32.2 温度测量原理32.3 系统工作流程42.4 系统核心器件选型42.

8、5 系统硬件主要电路说明42.5.1 数据采集系统电路42.5.2 PL2303下载电路72.5.3 报警模块蜂鸣器电路82.5.4 LCD1602显示模块电路92.5.5 电源及复位模块电路10第三章 系统软件设计143.1 系统软件总体结构及流程图143.1.1 主程序流程图143.1.2 读出温度子程序流程图153.1.3 温度转换命令子程序流程图163.1.4 计算温度子程序163.1.5 显示数据刷新子程序173.2 主模块程序设计183.3 LED显示模块程序设计243.4 温度采集模块程序设计303.5 报警模块程序设计373.6 上位机及辅助功能设计373.6.1 系统主界面的

9、设计373.6.2 串口设置界面38第四章 系统调试和结果分析434.1 调试步骤434.1.1 显示模块调试434.1.2 温度数据采集模块调试444.1.3 报警模块调试444.1.4 上位机辅助功能设计454.1.5 整体调试:464.2 遇到的问题及解决方案47第五章 总结与展望49致谢50参考文献51附录A:系统硬件的实物图及MSP430原理图52附录B:系统主程序54附录C:MSP430F149单片机封装管脚定义60第一章 绪论1.1 引言十七世纪是温度计诞生和发展的最初阶段,这个仪器几乎比任何其它仪器都得到更加广泛的应用。现代历史研究认为最早发明温度计的科学家是伽利略,他在159

10、2年发明了最早的气体温度计,最早的液体温度计则是荷兰科学家华伦海特制造出来的1。随着核能,宇航,冶金,低温,材料,微电子学和生物医学等方面的发展,对于温度测量控制的精度和范围提出了很高的要求,特别是对温度的测量不但要准确,而且需要读取数值时要更直观,更方便,这样的要求促进了温度测量和控制技术的迅速发展。在如今虽然水银温度计仍是各温度测量的计量标准,可是它的缺点则是刻度间隔通常很密,不能准确分辨,读数困难,而且它们的热容量比较大,这使得达到热平衡所需的时间非常长,因此更难读准,同时,玻璃管易碎,里边的水银有毒,使用起来非常不方便。后来出现了代替水银的有,酒精温度计和金属簧片温度计。它们虽然无毒性

11、,但是测量精度很低,只能作为一个大概的指示。后来接着又出现了热电阻温度计、热电偶温度计等温度计。之后随着大规模集成电路技术的提高,又出现了多种集成的数字化温度传感器。如今随着电子工业的发展,数字仪表的优点有反应速度快,操作简单,并且对使用环境要求不高,市场上出现越来越多的数字式温度计,纵观国际上现有的温度计的变化,总趋势是从模拟信号向数字信号转变,相应的体积也在不断的减小,一切向着数字化,智能化控制方向发展2。 1.2现状和发展状况温度检测和控制是在工业生产过程中是比较典型的应用之一,随着传感器在生产生活中的广泛应用,利用新型总线式数字温度传感器来实现对温度的测试,并且让控制得到更快的开发。在

12、现在的生活中,所用到的家具设备,电器,工业产品等对温度的要求日益增高,与此同时灵敏的温度控制报警系统已经成为了日常生活中必不可少的产品。例如锅炉,冰箱的温控系统等,都需要用到了这一功能部件。对此,我这次设计了基于MSP430F149单片机的温度检测系统,来模拟现实中的温度控制系统。此系统的设计和布线简单,体积小,重量轻,结构紧凑,抗干扰能力比较强,扩展方便,性价比高,在工厂,大型仓库,智能化的建筑等领域的多点温度检测系统中有广阔的应用前景3。所以在科学技术发展的今天,温度的检测,控制应用于许多行业,随着电子工业的迅速发展,数字仪表的优点有反应速度快,操作简单,对使用环境要求不高,市场上出现了越

13、来越多的数字式温度计,实践表明,低功耗,高精度的便携式数字式温度计使用十分方便,工作状况稳定,待机时间比较长,已经开始得到广泛应用。1.3课题研究的主要内容1.3.1研究内容本设计的目标是实现基于MSP430单片机的温度检测系统,主要内容有:1、介绍MSP430单片机的结构及工作原理;2、温度测量的控制方法;3、控制系统所需要的控制电路,设计控制系统;控制电路主要由MSP430F149单片机、DS18B20温度传感器,LCD1602.4、系统原理图,开发板方框图和系统硬件线路图等。1.3.2论文安排第一章、绪论第二章、系统总体方案设计第三章、系统软件设计第四章、系统调试和结果分析第五章、总结与

14、展望第二章 系统总体方案设计2.1系统组成结构该系统主要由4模块组成,其中包括DS18B20温度传感器,MSP430F149微控制器,LED显示模块,报警模块4部分组成。由温度传感器负责数据采集,经过处理器转换后由LED显示模块输出,同时报警模块负责温度报警的上下限,当温度到达设定值时就会发生报警。其组成框图如下所示:图2-1 系统组成结构2.2温度测量原理本设计的原理是:温度采集系统主要通过单线数字温度传感器DS18B20采集得到温度数据,MSP430F149作为CPU从温度传感器读取数据,将得到的数据进行判断然后做相应处理,比如显示或报警。温度传感器通过某种关系的换算,就可以得到温度传感器

15、的输出电压,这样单片机通过模拟口采集得到传感器的输出电压。由于MSP430F149片内集成了A/D转换通道,这样可以直接将单片机的A/D输入通道和传感器的模拟电压输出通道相连接另外系统通过键盘输入来完成对报警温度上下限的设置,通过显示电路将得到的数据显示出来,当超过设定值时则会报警。该系统主要有电源及复位模块,温度传感器采集模块,温度报警模块和显示模块,分别有P1.0-P1.7,RESET,P2.5,P2.6,P4.0-P4.7控制。整个系统具有结构简单等特点。温度传感器的采集模块和单片机的数模转换的通道连接,这样可以使得采集模块的设计简单化,从而使得设计的程序和模块简单易懂。其中温度采集和显

16、示模块的很多运算功能是通过单片机的Pl口来实现的,由于Pl口中断功能,所以实现起来非常容易,并且也非常适合软件编程。电源及复位模块主要是为整个系统提供可靠的电源,另外考虑到系统工作需要有复位功能,因此也为系统提供复位信号4 5。2.3 系统工作流程首先设定温度报警的上下限值,然后由温度传感器进行温度数据的采集,当微处理器检测到温度超过设定的范围值时就实行报警,提醒用户做相关操作。.2.4 系统核心器件选型MSP430F149单片机,DS18B20温度传感器,液晶显示器2.5 系统硬件主要电路说明2.5.1数据采集系统电路该系统采用美国DALLAS公司生产的单线数字温度传感器DS18B20来采集

17、温度数据,作为单片机MSP430149的温度传感器,该芯片有很多优点,可把温度信号直接转换成串行数字信号供微机处理。由于每片DS18B20含有唯一的硅串行数,从DS18B20读出的信息或写入DS18B20的信息,仅需要一根口线(单线接口)。由于该系统采用DS18B20作为温度采集传感器,这部分电路就比较简单了,图2-2为温度采集电路。图2-2 温度采集电路DS18B20的读写时序和测温原理和DS1820相同,只是得到的温度值的位数因分辨率不同而不同,DS18B20的测温过程中温度的变化对晶振的振荡频率影响非常的小,会产生脉冲信号送到计数器1,而且是固定的频率。但高温度的晶振的振荡频率就会随着温

18、度的变化而产生明显的改变搞温度的晶振所产生的频率会做为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。DS18B20的引脚功能如下表2-1所示:引脚功能GND电压地DQ单数据总线VDD电源电压NC空引脚表2-1 DS18B20引脚接口说明表温度传感器DS18B20内部结构:DS18B20采用三脚P

19、R35封装如图2-3所示,其内部框图如图2-4所示。高速缓存器存储器包含一个高速暂存RAM和一个非易失性的可电擦除的EP2RAM。配置寄存器为高速缓存器中的第五个字节,它的内容用于确定温度值的数字转换分辨率。后五位一直是1,TM是测试模式位,用于设置DS18B20在工作模式还是测试模式,在DS18B20出厂时被设置为0,用户不需要去改动,R1和R0决定温度转换的精度位数6。 图2-3 DS18B20三脚PR35封装 图2-4 DS18B20内部结构图2.5.2 PL2303下载电路 图2-5 下载电路PL2303器件内置USB功能控制器,USB 收发器,振荡器和带有全部调制解调器控制信号的UA

20、RT,所以我们只需要外接几个电容就可实现RS232信号与USB信号的转换,这样能够方便我们嵌入到各种设备当中。这些信息的转换全部由器件自身完成,不需要我们自己动手操作。下图是PL2303的封装引脚: 图2-6 PL2303封装引脚2.5.3报警模块蜂鸣器电路图2-7 蜂鸣器电路报警处埋模块相当简单,这里只是简单的在一个I/O口上送出数据来驱动蜂鸣器,该模块包括数据产生和初始化端口两个部分,数据的产生部分主要是在输出端口产生数据,这里不是简单的一个高电平或者是低电平的问题,而是要有一定频率的数据才可以,因为只有是交流信号才能够让蜂鸣器发出声。而不同的周期信号可以得到不同的频率,则可以根据信号处理

21、的知识来进行分析7。2.5.4 LCD1602显示模块电路图2-8 LCD1602显示电路液晶显示1602利用的是液晶的物理性质,由电压控制其显示区域,可以显示图形,只要有电源就可以显示图形。液晶显示装置有这不一般的厚度薄,适用于大规模集成电路的直接驱动,易于实现全彩色显示,这已被广泛应用于笔记本电脑,数码相机,CDA移动通信工具。在单片机系统中应用晶液显示器作为输出器件有以下几个优点:1、显示质量高:由于显示器在每一个点在收到信号之后就一直保持那种色彩和亮度,恒定发光,而不像显示器那样出现不断刷新的亮点。所以液晶显示器的画面质量很高,一般不会出现闪烁的现象,比传统的显示器画面要胜出一筹。2、

22、数字式接口:显示器全部是数字的,和其他单片机比起来更加的简单可靠,操作则也很方便。3、体积很小,重量很轻,i一般的传统的显示器轻上很多。而液晶显示器通过电极控制液晶内部的分子状态,从而达到显示的目的8 9。4、功耗低:相对与其他的单片机来说,液晶显示器的功耗主要消耗在驱动IC上,其他的则消耗在了内部电极上,因此消耗的电量比其它的传统显示器要少得多。它的引脚功能如下表2-2所示:表2-2 引脚口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶偏压显示11D4数据4RS数据/命令原则12D5数据5R/W读/写选择13D6数据6E使能信号14D7数

23、据7D0数据15BLA正极8D1数据16BLK负极2.5.5电源及复位模块电路电压电路:由于MSP430F149单片机的工作电压一般是1.8v3.6v,并且功率极低。为了方便起见,本系统可以采用电池来供电,用的是2号或者5号的电池,所以说输出电压为3V。对于整个系统来说采用3.3V供电。因为考虑硬件系统功率要求拥有纹波电压调节器的功能和特点,同时也要考虑低功率消耗的硬件系统的特点,因此使用TI公司的TPS76033芯片的硬件系统的电源部分,该芯片可以一个很好的小芯片封装,能够满足系统对硬件的要求,它可以有效节省PCB板面积。其目的是在于使输出特殊的输出功率的很小的一部分,而在输出方面则需要用了

24、一个2.2uF和0.1uF的电容,同时在另外一个芯片的输入端也放置一个0.1uF的滤波电容,这样就完成了初步的设置,之后再减少输入端受到的干扰。电源电路具体如图2-9所示。图2-9 电源电路复位电路:在单片机的系统里,很多的可以说大部分的单片机需要复位电路,复位电路的实现可以采用RC复位电路,当然也可以采用复位芯片来实现我们所需要的复位电路,而且RC复位电路也具有经济性,它唯一的问题就是可靠性不高,相对于RC复位电路用复位芯片来实现的复位电路具有非常高的可靠性,因此我们一般来说为了保证复位电路的可靠性,会在系统中采用复位芯片来实现我们所需要的复位电路。 10。另一个方面来说为了减小电源的干扰,

25、我们还需要在复位芯片的电源的输入端加一个0.1uF的电容来实现滤波,其目的是减小输入端受到的干扰。复位电路如图2-10所示:图2-10 复位电路这里我想重点的介绍一下MSP430F149单片机的P口和MSP430F149的定时器及转换模块。MSP430F149的P口:MSP430F149有6个8位的P口,可以显示16个字符,这样的单片机可以用P口来直接进行输入和输出,只需要直接的对外部进行通信就可以实现。P口可以和别的外设一起使用,因此在用之前我们都要选定它的功能,利用的是选择寄存器。完成这个就可以用来判断是P口还是外设,选定好之后还要在方向寄存器当中确定丹迪是输出还是输入,因此我还实验了一个

26、程序,它的前部分是实现中断功能的程序,后部分为中断程序是实现直接用P口对外提供一个短脉冲的程序,在我们设计的开发板中,专门利用了P口的输入输出功能对外存24WCXX和实时时钟芯片8563的数据通过的存取I2C总线的读取和写入。还利用了P口向电池充电的开启电路。MSP430F149的定时器及转换模块。我们所说的MSP430中有两个16位定时器,对于这一点,我们还可以使用单芯片看门狗定时器程序。由于计时器16位的,所以我们要有两个中断向量,而且它们确实有两个中断向量,容易实现各种定时器的中断。MSP430F149定时器在应用程序中的作用,是可以比较定时器的模式。MSP430F149采用数字脉冲调制

27、波形,然后通过在低通滤波器上的功能,产生任意波形,我们可以经常使用的比较模式实现数字信号到模拟信号的变化。计时器还具有拍摄模式,我们可以使用各种定时器的捕捉功能测量,并与比较器组合,这样你就能测量电阻,电容,电压,电流,温度和脉冲宽度等数值的测量。可以说,只要能通过传感转换为时间长度的,都可以通过定时器的捕获定时功能实现值的测量11。DS18B20中的温度传感器完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。例如125的数字输出为07D0H,25.0625的数字输出为0191H,25.06的数字输出为FF6FH,55的数字输出为FC9

28、0H。下表为温度转换表:表2-2 温度转换对应表TEMPERATUREDIGITAL OUTPUT(Binary)DIGITAL OUTPUT(Hex)+125000001111101000007D0H+8500000101010100000550H+25.062500000001100100010191H+10.125000000001010001000A2H+0.500000000000010000008H000000000000000000000H-0.51111111111111000FFF8H-10.1251111111101011110FF5EH-25.06251111111001

29、101111FE6FH-551111110010010000FC90H第三章 系统软件设计3.1 系统软件总体结构及流程图DS18B20初始化按键处理发报警搜索命令有键按下吗?显示DS18B20 OK显示温度数据处理读DS18B20DS18B20?显示DS18B20 ERROR N结束3.1.1主程序流程图YNY鸣报警器NY图3-1 主程序流程图3.1.2 读出温度子程序流程图读出温度子程序的主要功能是读出RAM中的字节,其程序流程图如图3-2所示。开始发DS18B20复位命令发跳过ROM命令发读取温度命令移入温度暂存器结束图3-2 读温度流程图3.1.3 温度转换命令子程序流程图温度转换命令

30、子程序主要是发温度转换开始命令,采用12位分辨率的时后转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如下图,如图3-3所示。开始发DS18B20复位命令发跳过ROM命令发温度转换开始命令结束 图3-3 温度转换流程图3.1.4计算温度子程序计算温度子程序将RAM中读取值进行BCD码的转换运算,其程序流程图如图3-4所示。 开始计算小数位温度BCD值 计算整数位温度BCD值 结束图3-4 计算温度流程图3.1.5显示数据刷新子程序温度数据移入寄存器十位数0?百位数0?十位数显示百位数不显示显示百位数数据 结束 开始显示数据刷新子程序主要是对显

31、示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。程序流程图如图3-5所示。NYNY 图3-5 显示数据刷新流程图3.2主模块程序设计主处理模块主要是将各个模块进行协调处理和实现数据交互。主处理模块首先完成初始化上作,初始化后进入循环处理,在循环过程中主处理获得采集模块的数据,井将数据进行处理,据处理结果是显示或报警。由于报警设置了上限和下限,所以除了考虑数据的保存,使得主要程序在第一次检查是确定是否有FLASH的阈值存在,如果没有,则等待,说明需要调整。而在下一阶段完成后,也就是程序必须在有设置数据的情况下才能正常运行。主模块程序的设计很简单,包括各端口,键盘,还有

32、时钟的初始化操作,然后就一个While()循环,此循环实现的是动显温度值,同时用于判断温度报警参数实现温度报警,其他就当相应的中断产生时转到相应的中断服务子程序中执行相应的操作。下面是程序:/*程序功能:读取DS18B20进行温度测量以后的结果并在1602液晶上显示-测试说明:观察显示温度数值。*/#include msp430.h#include cry1602.h#include DS18B20.htypedef unsigned char uchar;typedef unsigned int uint;/要显示的6位温度数字uchar dN6; void Disp_Numb(uint t

33、emper);/*主函数*/void main( void ) /*下面六行程序关闭所有的IO口*/ P1DIR = 0XFF;P1OUT = 0XFF; P2DIR = 0XFF;P2OUT = 0XF0; P3DIR = 0XFF;P3OUT = 0XFF; P4DIR = 0XFF;P4OUT = 0XFF; P5DIR = 0XFF;P5OUT = 0XFF; P6DIR = 0XFF;P6OUT = 0XFF; uchar i; WDTCTL = WDTPW + WDTHOLD; /关狗 /P6DIR |= BIT2;P6OUT |= BIT2; /关闭电平转换 /*-选择系统主时钟

34、为8MHz-*/ BCSCTL1 &= XT2OFF; /打开XT2高频晶体振荡器 do IFG1 &= OFIFG; /清除晶振失败标志 for (i = 0xFF; i 0; i-); /等待8MHz晶体起振 while (IFG1 & OFIFG); /晶振失效标志仍然存在? BCSCTL2 |= SELM_2 + SELS; /MCLK和SMCLK选择高频晶振 /计数时钟选择SMLK=8MHz,1/8分频后为1MHz TACTL |= TASSEL_2 + ID_3; /打开全局中断 _EINT(); LcdReset(); DispNChar(0,0, 15,Temperature

35、is:); /循环读数显示 while(1) Disp_Numb(Do1Convert(); Disp1Char(4,1,dN5+0x30); Disp1Char(5,1,dN4+0x30); Disp1Char(6,1,0x2e); /0x2e是小数点对应的ASCII码值 Disp1Char(7,1,dN3+0x30); Disp1Char(8,1,dN2+0x30); Disp1Char(9,1,dN1+0x30); Disp1Char(10,1,dN0+0x30); 3.3 LED显示模块程序设计该部分主要完成数据的显示功能。在硬件设计中,显示电路直接和单片机的数据I/O口进行连接。P4

36、.0-P4.7是用来显示数据,P2.2、P2.3和P2.4是用来控制数码管的选通状态,显示模块相对比较简单,只是简单的将数据显示在数码管脚上,该模块主要包括端口初始化和数据显示两部分,我设计的在显示页面是“WangchaoYuZeHua Temper is:”温度显示是精确到小数点后两位的数字。下面是程序:#include #include cry1602.htypedef unsigned char uchar;typedef unsigned int uint;/*宏定义*/#define DataDir P4DIR#define DataPort P4OUT#define Busy 0x

37、80#define CtrlDir P5DIR#define CLR_RS P5OUT&=BIT7; /RS = P5.7#define SET_RS P5OUT|=BIT7;#define CLR_RW P5OUT&=BIT6;/RW = P5.6#define SET_RW P5OUT|=BIT6;#define CLR_EN P5OUT&=BIT5;/EN = P5.5#define SET_EN P5OUT|=BIT5;/*函数名称:DispNchar功 能:让液晶从某个位置起连续显示N个字符参 数:x-位置的列坐标 y-位置的行坐标 n-字符个数 ptr-指向字符存放位置的指针返回值

38、 :无*/void DispNChar(uchar x,uchar y, uchar n,uchar *ptr) uchar i; for (i=0;in;i+)Disp1Char(x+,y,ptri);if (x = 0x0f) x = 0; y = 1;/*函数名称:LocateXY功 能:向液晶输入显示字符位置的坐标信息参 数:x-位置的列坐标 y-位置的行坐标返回值 :无*/void LocateXY(uchar x,uchar y) uchar temp;temp = x&0x0f;y &= 0x01;if(y) temp |= 0x40; /如果在第2行temp |= 0x80;

39、LcdWriteCommand(temp,1);/*函数名称:LcdReset功 能:对1602液晶模块进行复位操作参 数:无返回值 :无*/void LcdReset(void) CtrlDir |= 0xF0; /控制线端口设为输出状态 DataDir = 0xFF; /数据端口设为输出状态 LcdWriteCommand(0x38, 0); /规定的复位操作Delay5ms();LcdWriteCommand(0x38, 0);Delay5ms();LcdWriteCommand(0x38, 0);Delay5ms();LcdWriteCommand(0x38, 1);/显示模式设置 LcdWriteCommand(0x08, 1);/显示关闭 LcdWriteCommand(0x01, 1); /显示清屏LcdWriteCommand(0x06, 1);/写字符时整体不移动LcdWriteCommand(0x0c, 1);/显示开,不开游标,不闪烁/*函数名称:LcdWriteCommand功 能:向液晶模块写入命令参 数:cmd-命令, chk-是否判忙的标志,1:判忙,0:不判返回值 :无*/void LcdWriteComm

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号