




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕 业 设 计(论 文)设计题目:取暖器温控系统设计-软件部分 姓 名 学 号院(系) 专 业指导教师 摘要本文介绍了取暖器温度控制系统的软件设计部分。这套系统由由一片51单片机、4*4矩阵键盘、DS18B20传感器、LCD1602显示器、DAC0832芯片、晶闸管触发电路和单相桥式半控整流电路组成。以AT89C51单片机为主要控制芯片,采用温度传感器DS18B20实现温度的检测,并用LCD1602液晶显示器显示检测到的温度,然后与键盘输入设定的温度值比较,再由PID算法给出控制量,以合适的控制电压控制晶闸管的通断,最后由主电路控制取暖器发热功率。本文中涉及到的温度控制系统具有硬件组成简单,读
2、数方便,精度高等优点,在实际工程中叶得到广泛应用。本软件系统能很好配合硬件系统完成各种功能,满足设计要求。关键词:移相触发;温度测量;温度控制;PID算法 ABSTRACTThis paper introduces the heater temperature control system software design part. The system by a piece of 51 SCM, 4
3、60;* 4 matrix keyboard, DS18B20 sensor, LCD1602 displays, DAC0832 chip, thyristor trigger circuit and single-phase bridge type half control of rectifier circuit. With AT89C51 singl
4、e-chip microcomputer as the main control chip, the temperature sensor DS18B20 realize temperature detection, and LCD1602 liquid crystal display shows detection to temperature, then
5、;with the keyboard input setting value comparison, then the PID algorithm is given control with the appropriate control the voltage control thyristor hige, finally by main
6、0;circuit control heater heating power. This paper involves in the temperature control system has the hardware composition is simple, easy reading, high precision of advantages,
7、60;in the middle of the actual engineering used widely. This software system can be very good hardware system with finish all kinds of function and meet the design
8、160;requirements.Keywords: phase shifting trigger; Temperature measurement; Temperature control; PID algorithm目录第一章 绪论51.1 背景51.2 应用范围51.3 研究状况51.4设计任务及要求6第二章 系统的总体结构72.1总体设计思路72.2 51单片机7第三章 软件设计部分103.1主程序设计103.2各模块子程序的介绍103.2.1 键盘扫描处理流程103.2.2 DS18B20温度传感器采样流程123.2.3 PID模块流程143.2.4 LCD1602显示流程16第四章
9、 系统的调试194.1 软件开发环境的介绍194.2 软件开发环境的使用194.3 调试及结果分析194.3.1调试步骤194.3.2 调试心得20总 结+21致 谢22参考文献23附录 程序设计24第一章 绪论1.1 背景随着科技的发展和时代的进步,自动化智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到工业生产,日常生活的各个方面,空调系统、电热炉等家电产品以至手持式高速高效的计算机和电子设备,均需要提供温度控制功能。以计算机为例,当中的中央处理器的运行速度愈快,所耗散的热量便愈多,为免计算机系统过热而受损,有关系统必须加强温度过高保护功能,但温度控制一直是一个未
10、完全开发的领域,针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景与实际意义。1.2 应用范围温度是科学技术中最基本的物理量之一,工业生产,日常生活都离不开与温度相关的方面。食品行业,冶炼,航空航天等各行各业都与温度息息相关,更离不开对温度的控制。 1.3 研究状况传统的温度采集电路相当复杂,需要经过温度采集、信号放大、滤波、AD转换等一系列工作才能得到温度的数字量,而且这种方式不仅电路复杂,元器件个数多,而且线性度和准确度都不理想,抗干扰能力弱。现在常用的温度传感器芯片不但功率消耗低、准确率高,而且比传统的温度传感器有更好的线性表现,最重要的一点是使用起来方便。随着科技以及应用需求的
11、发展,单片机技术的开发与应用开始被广泛关注,在高级程度,高速度,低功耗及高性能方面取得了很大的进展。单片机很好的解决了温度的采集和数据处理的问题。本设计通过采用单片机及PID算法来实现对温度的自动调节。1.4设计任务及要求本系统由一片51单片机、4*4矩阵键盘、DS18B20传感器、LCD1602显示器、DA0832芯片、晶闸管触发电路和单相桥式半控整流电路组成。以AT89S51单片机为控制芯片,采用DS18B20实现温度的检测,并用LCD1602液晶显示器显示检测到的温度,然后与键盘输入设定的温度值比较,再由PID算法给出控制量,以合适的控制电压控制晶闸管的通断,最后由主电路控制取暖器发热功
12、率。上机调试时,液晶显示屏上能显示温度的设定值与检测值,当温度高于设定值时,减小发热功率;当温度低于设定值时,增大发热功率,使温度恒定。第二章 系统的总体结构2.1总体设计思路本系统硬件部分的总体结构是用51单片机控制整个温控系统,外接4*4矩阵键盘输入给定温度值,DS18B20采集实时温度数据送入单片机,并用LCD1602液晶显示器显示实时和给定温度,然后单片机给出控制量,再由主电路晶闸管触发电路和单相桥式半控整流电路控制发热功率。设计流程图如图1所示键盘输入给定温度值触发电路数模转换主电路51单片机DS18B20温度采集发热丝LCD1602显示温度 图1 硬件设计流程图2.2 51单片机
13、本系统采用AT89C51单片机。它是一款集CPU,存储器,I/O接口于一体的大规模集成电路芯片。常用它作为控制系统的核心,是目前使用最广泛的芯片。其内部主要包括一个8位CPU,一个片内振荡器及时钟电路,4KBROM程序存储器及128BRAM数据存储器,可寻址64KB外部数据存储器和64KB外部程序存储空间的控制电路,32条可编程I/O线,两个16位的定时计数器,一个可编程全双工串行口,5个中断源及两个优先级嵌套结构。51单片机内部结构框图如图2图2 51单片机内部结构框图51系列单片机在控制系统中需要扩展外围芯片,这就要求我们有数据线,地址线,控制线的可总线扩展的引脚去连接外部电路,可总线扩展
14、的单片机有44个引脚的方形封装形式及40个引脚的双列直插式封装形式,本系统是采用常用的40个引脚的封装形式来实现的。单片机的40个引脚可分为4类:电源,时钟,控制和I/O引脚。电源有VCC芯片电源,与VSS接地端;时钟为XLAT1,XLAT2,晶振电路的时钟信号输入输出端口;控制端有RST/Vpd,表示复位信号输入/电源掉电备用电源,ALE/PROG,表示地址锁存允许,PSEN表示外部ROM读选通信号,EA/Vpp,表示内外ROM选择端口。80C51共有4个8位并行I/O端口:P0,P1,P2,P3口。其中P0口为数据/低8位地址复用总线端口,可以作为输入输出口,常作为地址数据总线口,低8位地
15、址与数据线分时使用。P1口为静态通用端口,每一位都能作为可编程的输入输出口线。P2端口为高8位地址总线动态端口,与P0口一起组成16位地址总线。P3口为双功能静态端口,第一功能与P1口相同,第二功能是用于特殊信号输入输出和控制信号。键盘和显示器是单片机应用系统中常用的输入输出装置。这里主要介绍一下本系统键盘的选定,当按键少时可采用独立键盘,一个键对应一个IO口,当按键多时这种方法占用口线较多,因此当按键多时可采用矩阵键盘,矩阵键盘的每个按键都有行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵键盘编程复杂,但节省I/O口,适用多数据直接输入的电路中。本系统中由于需要进行数字直接输入,按键
16、较多,因此采用4*4矩阵键盘。 第三章 软件设计部分3.1主程序设计本系统软件设计主程序是先将系统初始化,用4*4矩阵键盘输入设定温度值,并用1602液晶显示器显示给定温度值,以温度传感器DS18B20来实现实时温度的检测,并与键盘给定的温度值进行比较,得到偏差,再由PID算法进行运算减小偏差并给出控制量,以合适的控制电压控制晶闸管的通断,经D/A转换,将这个电压转换为温度,最后用1602液晶显示器显示检测到的温度。主程序流程图如图3所示开始 系统初始化及显示 取键值 键值处理 DS18B20温度采集 PID运算 D/A转换 LCD显示 返回 图3 主程序流程图 3.2各模块子程序的介绍 在主
17、程序中需要调用各模块子程序,其中有键盘扫描子程序,DS18B20温度采集子程序,PID算法子程序,LCD液晶显示子程序。 3.2.1 键盘扫描处理流程键盘一般有独立式和行列式(矩阵式)两种。当然还有其它的结构,比如交互式结构等等,不过其它的结构比较少用,在这里就不介绍了。在中颖的单片机中,有些单片机的LCD 驱动引脚的SEGMENT 口可以共享按键扫描口,当选择为按键扫描口时,可以使用这些口来扫描按键,所以在外部电路可以连接LCD 和按键矩阵,采用分时扫描进行处理。3.2.2 DS18B20温度传感器采样流程 本系统采用单总线式数字温度传感器DS18B20,能把温度直接转化为相应的数字量输出。
18、它具有独特的单线接口,CPU只需一根IO总线就能与DS18B20通信,占用的微处理器端口较少,被测温度用符号扩展的16位数字量方式串行输出。 DS18B20温度采集子程序流程图如图5。在测温时首先设置DS18B20的DQ为高电平,然后初始化DS18B20;在初始化成功后DS18B20接受单片机的命令。为了简单起见可跳过ROM命令设置匹配过程,然后再次初始化DS18B20;在初始化成功后启动测温,然后将温度保存起来,返回。开始设置DQ=1初始化DS18B20 N是否成功 N写DS18B20命令,跳过ROM延时750ms等待温度转换完成 初始化DS18B20是否成功 N 开始测温并获取温度 返回
19、图5 DS18B20温度采集自程序 由于DS18B20是采用一根IO总线读写数据,因此,DS18B20对读写数据位有严格的时序要求。DS18B20遵循相应的通信协议从而保证数据传输的正确性和完整性。该通信协议定义了多种信号时序:初始化时序、读时序、写时序。所有时序都是将单片机作为主机,DS18B20作为从机。本程序中主要用到读时序。 对于DS18B20的读时序分为读0时序和读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15s之内就得释放单总线,以让DS18B20把数据传输到单总线上。读0时序时是主机与DS18B20把单总线拉低,主机在15s之内释放总线,然后迅速的读0
20、,而DS18B20是在DS18B20是在15s到60s期间释放总线。读1时序则是主机把单总线拉低,15s之内释放总线,释放总线后再读1,整个过程在15s内完成。在完成一个读时序过程,至少需要60s才能完成。DS18B20的读时序图如图6图6 DS18B20读时序图3.2.3 PID运算流程(1) PID控制概述 PID是控制是比例积分微分控制的简称。它是自动控制的发展历程中,历史最悠久,生命力最强的基本控制方式。在20世纪40年代以前,它就被广泛采用。PID控制的最大基本组成原理比较简单,容易理解,参数调整方便,是在长期的工程实践中总结出来的一套控制方法。另外PID控制还有适用性强,鲁棒性强,
21、对模型依赖少等优点。正由于这些优点,PID仍在很多控制系统中的起着重要的作用。由于本课题中设计的系统是大惯性纯滞后系统,因此必须加上PID。 PID控制器根据系统的误差,利用误差的比例、积分、微分三个环节的不同组合计算出控制量。系统原理框图如图7所示。 PID控制量被控对象积分微分比例 r(t) e(t) u(t) y(t) -图7常规PID控制器系统原理框图 PID控制器的输入值为设定值r(t)与被调量实测值y(t)构成的控制偏差信号e(t) e(t)=r(t)-y(t) (2-1)偏差信号为e(t)在PID调节作用下,控制器对误差信号e(t)分别进行比例(P),积分(I),微分运算(D),
22、其结果的加权和构成系统的控制信号u(t),送给被控对象加以控制。 数字PID控制器的数学描述公式为: u(k) = Kp * e(k) + Ki * e(k) + Kd (e(k) e(k-1) (2-2) Ki = Kp*T/Ti (2-3) Kd = Kp*Td/T (2-4)上式中,Kp为比例系数,Ki为积分时间常数,Kd为微分时间常数。基本偏差e(t) 结果可以是正或负,正数表示还没有达到,负数表示已经超过了设定值。这是面向比例项用的变动数据。累计偏差:e(t)= e(t) + e(t-1) + e(t-2)+e(1),这是我们每一次测量到的偏差值的总和,这是代数和,考虑到
23、正负符号的运算,这是面向积分项用的变动数据。基本偏差的相对偏差:e(t)e(t-1),用本次的基本偏差减去上一次的基本偏差,用于考察当前控制的对象的趋势,作为快速反应的重要依据,这是面向微分项的一个变动数据。比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用减少偏差。比例作用大,可以加快调节,减小误差,但是过大的比例,使系统趋于不稳定。积分调节作用:是使系统消除稳态误差,提高无差度。因为有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一常值。微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在
24、偏差还没有形成之前,已被微分调节作用消除。因此,可以改善系统的动态性能。 在本次设计中实际温度为y(t),由传感器DS18B20采集得到;设置温度r(t)由人为键盘输入;输出信号u(t)即为控制信号。 程序流程图如图8开始输入y(k)采样值,r(k)给定值计算偏差e(k)=r(k)-y(k)计算积分e(k)计算微分e(k)-e(k-1)计算控制量u(k) = Kp * e(k) + Ki * e(k) + Kd (e(k) e(k-1) 返回 图8 位置式PID算法流程图(2) PID参数确定首先是采样周期的选择,从抑制扰动的要求来说,采样周期应该选择得小些。从计算机精度考虑,采样周期不宜过短
25、。从系统成本上考虑,希望采样周期越长越好。 综合上述各因素,选择采样周期,应在满足控制系统的性能要求的条件下, 尽可能地选择低的采样速率。 在本次课题的设计中,刚开始是根据大量的受控对象都具有低通的性质,由给出的经验选择采样周期。选择采样周期为20s。接着是比例系数,积分时间常数,微分时间常数的选择,本次设计中经多次试凑,最后选择了性能较好时,比例系数为1.5,积分时间常数为0.5。3.2.4 LCD1602显示流程LCD1602液晶显示器的控制芯片有80个字节的RAM缓冲区,第一行显示的地址为0x00-0x27,第二行地址为0x40-0x67,两行加起来刚好80个地址单元,编程控制这些地址单
26、元的指针就可以控制想要显示的字符的位置,其中0x00-0x0F是可以直接显示出来的,而0x10-0x27这个范围的地址要通过移屏的指令才能显示出来。图9为LCD1602的内部显示地址。要控制字符的具体显示位置就要对数据指针进行设置,具体设置为80H+地址码(0-27H,40H-67H)。图9 LCD1602的内部显示地址LCD1602液晶显示器显示的基本流程为先初始化并写入设置命令,然后延时5ms后检测LCD是否处于忙状态,即STA7是否为0,等于0时为不忙,等于1时为忙,最后设置显示数据的地址,稍作延时后,在指定位置显示相应数据。LCD液晶显示器基本流程如图10。返回主程序数据显示完毕写入相
27、应的数据延时5ms获得显示RAM地址STA7=0?检测忙信号延时5ms初始化并写入显示设置命令入口 N Y 图10 LCD1602程序流程图基本操作时序介绍读状态 输入:RS=L;RW=H,E=H输出:DB0-DB7=状态字写指令 输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=指令码输出:无读数据 输入:RS=H,RW=H,E=H输出:DB0-DB7=数据写数据 输入:RS=H,RW=L,E=下降沿脉冲,DB0DB7=数据输出:无 写指令时,将RS置为低电平,R/W置为低电平,然后将数据送到数据口D0D7,最后E引脚一个高脉冲将数据写入。写数据时将RS置为高电平,R/W置为低电平,然
28、后将数据送到数据口D0D7,最后E引脚一个高脉冲数据写入。LCD1602写时序图如图11图11 LCD1602写时序图对液晶显示器的屏幕、光标、读、写控制都是通过指令完成的,表1即为它的指令表。指令RSR/WD7D6D5D4D3D2D1D01清屏00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存储器地址0001字符发生存储器地址(AGG)8置数据存储器地址001显示数据存储器地址(AGG)9读忙标志或地址01BF计算器地址(AC)10写数到
29、CGRAM或DDRAM10要写的数11从CGRAM或DDRAM读数11读出的数据表1 指令表第四章 系统的调试4.1 软件开发环境的介绍本设计采用Keil C51 uVision2软件和超想-3000TB单片机综合实验仪进行仿真和调试。Keil C51是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上,结构性,可读性,可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外,Keil C51生成的目标代码效率非常高,多数语
30、句生成的汇编代码很紧凑,容易理解。4.2 软件开发环境的使用在调试之前,必须事先将硬件设备、Keil仿真器、计算机连接好。创建项目uVision2包括一个项目管理器,他可以使8051应用系统设计变得简单,要创建一个应用,需要进行以下操作:1. 启动uVision2,新建一个项目文件并从文件库中选择一个器件。2. 新建一个原文件并把它加入到项目中。3. 增加并配置你选择的器件的启动代码。4. 针对目标硬件设置工作选项。5. 编译项目并生成可以编程PROM的HEX文件。4.3 调试及结果分析4.3.1调试步骤(1) 先在桌面上新建一个文件夹test,然后打开keil软件。(2) 在工具栏点击新建一
31、个工程test1,然后把工程放入刚新建的文件夹当中保存。(3) 保存完工程后选择单片机芯片型号AT89C52,确定后新建一个后缀名为.c的文件。(4) 把新建的文件添加到新建的工程中去,然后复制粘贴已写好的程序。(5) 编译已经写好的程序生成.hex文件,然后再编译一下程序。(6) 利用PROGISP下载软件,同样设置好单片机芯片型号AT89C52,然后载入.hex文件,最后点自动,然后可以真正是系统运行了。(7) 观察结果:下载程序运行后,实验仪开始工作,LCD显示器上显示实际温度和测得温度。4.3.2 调试心得 在实际调试过程中遇到了不少问题,但总体上都是由于程序上的错误引起的,主要表现在
32、以下几个方面:(1)程序中的时序问题在调试DS18B0采集温度时,刚开始总是没有反映,后来发现是由于没有严格按照芯片的读写时序,所以导致采集温度没有成功。(2)LCD1602显示的问题 在调试液晶显示时总是没有显示,后来发现芯片使能引脚定义的IO口与实验仪上的不相符合,最后将他按实验仪上实际连接的要求重新编码,才使得液晶显示成功了。(3) 键盘输入问题 键盘输入时只能设定和显示一个个位数,不能显示一个十位数,而我们的温度设定的范围大都在1530左右。后来发现编写键盘代码有问题,中间需要设置一个循环执行两次,并且有一个标志位,就是得到两次的键值,这样才能显示一个十位数。 (4)PID算法中P、I
33、、D三个参数的具体选择问题。在调试控制部分时,多次发现所编的程序不能对温度进行很好的控制,后发现是比例、积分、微分三个系数没有选择好,后经多次实验最后确定了比例系数为1.5,积分时间常数为0.5。总体上说,51单片机使用C语言来编程简单易学,代码执行效率高。在学习中,先要熟悉51单片机的硬件资源,了解各个寄存器的功能及设置。 总 结通过几个月的不断学习与实践,我的毕业设计完成了,毕业设计是大学学习的最后一个阶段,是对我所学知识的融合与考验。通过此次毕业设计,我明白了自己所学知识的欠缺,对很多的知识还不理解。学习是一个积累的过程,需要我们不懈的坚持,所以在以后的工作生活中,我会不断的学习,以提高
34、自身的素质。本次毕业设计是设计一个取暖器温控系统,采用51单片机控制,以温度传感器DS18B20实现温度的检测,并用1602液晶显示器显示检测到的温度,然后与键盘输入设定的温度值比较,再由PID算法给出控制量,以合适的控制电压控制晶闸管的通断,最后由主电路控制取暖器发热功率。此次毕业设计使我学习到很多,最初接到任务时感觉困难重重,但是在通过老师的指导,图书馆借阅资料,网上查阅相关资料不断地努力过后,一切才渐渐明朗起来。虽然此次毕业设计还有一些问题,但是在设计过程中,我所学习到的东西才是最大的收获。致 谢在这次毕业设计的过程中,我得到了老师的以及同学们的很多帮助,尤其是论文指导老师张定学,本次论
35、文的完成是在他的大力支持与悉心指导下完成的,在此我表示感谢。在做毕业设计的这几个月的时间里,我遇到了很多的困难,才发现自己所学知识还很少,但这也提醒我要不断学习,不断上进。虽然此次毕业设计还有一些问题,但是在设计过程中,我学到了很多东西。对所有帮助我的老师与同学表示衷心的感谢!参考文献1 李群芳.张世军.黄建 单片微型计算机M.北京:电子工业出版社,20082 徐爱军.8051单片机实践教程M.北京:电子工业出版社,20053 4 李正军.计算机控制系统M.北京:机械工业出版社,20085 张迎新.单片机微型计算机原理,应用及接口技术M.北京:国防工业出版社,19996 赵丽娟 邵欣编著基于单
36、片机的温度监控系统的设计与实现M 机械造7 武庆生 仇梅 编著 单片机原理与应用 电子科技大学出版社 1998.28 蔡美琴,毛敏等.MCS-51系列单片机系统及其应用M.高等教育出版社,20069 王文海.单片机应用于实践项目化教程M.化学工业出版社,201010 马忠梅等.单片机C语言应用程序设计M.北京:北京航空航天大学出版社,199711 谭浩强 编著C程序设计.北京:清华大学出版社,199912 彭伟 单片机C语言程序设计实训100例 M.北京:电子工业出版社,200913 郭天祥 新概念51单片机C语言教程M.北京:电子工业出版社,200914 Guiyun Tian Founda
37、tion and Application of Microcontraller 高等教育出版社 2004.1115(美)Bjarne Stroustrup THE C+ PROGRAMMING LANGUAGE, SPECIAL EDITION Addison Wesley 1997附录 程序设计#include <reg52.h>#include <intrins.h>#include<math.h> #include<string.h> #define uchar unsigned char#define uint unsigned ints
38、truct PID uint SetPoint; / 设定目标 Desired Value float Proportion; / 比例常数 Proportional Const float Integral; / 积分常数 Integral Const float Derivative; / 微分常数 Derivative Const uint LastError; / Error-1 uint PrevError; / Error-2 uint SumError; / Sums of Errors ; struct PID spid; / PID Control Structure uin
39、t rout; / PID Response (Output) uchar code mytab8 =0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00,;uchar code distab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04, 0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09 ;uchar set_temper; uchar temp_per; uint a,b;bit presence;sbit WR=P20;sbit CS=P21;sbit DQ=P30; /定义DS18B20端口D
40、Q sbit LCD_RS= P31; sbit LCD_RW=P32;sbit LCD_EN= P22;uchar data display5 =0x00,0x00,0x00,0x00,0x00;/温度值显示uchar data display15 = "give:"/给定字母显示uchar data display2 = "real:"/实时字母显示uchar data RomCode8 = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00;uchar data temp_data2 = 0x00,0x00;#defin
41、e delayNOP(); _nop_();_nop_();_nop_();_nop_();/*/void delay1(int ms) uchar y; while(ms-) for(y = 0; y<250; y+) _nop_(); _nop_(); _nop_(); _nop_(); /*/* */*检查LCD忙状态 */*lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。 */* */*/ bit lcd_busy() bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP(); result = (bit)(P0&0x80); LCD_EN = 0; return(result); /*/*写指令数据到LCD /*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 /*/void lcd_wcmd(uchar cmd) delay1(10); LCD_RS = 0; LCD_RW = 0; LCD_EN = 0; _nop_(); _nop_(); P0 = cmd; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; /*/*写显示数据到LCD /*RS=H,RW=L,E=高脉冲,D0-D7=数据。 /
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年全媒体运营师高级模拟试卷:全媒体内容策划与网络内容审核
- 骨科专科护理门诊
- 基础护理学2.填空题复习试题及答案
- 德语欧标B2024-202年情景对话专项训练试卷及解析
- 患者出入院护理流程与管理
- 2025年注册消防工程师技术实务火灾风险评估难点试题解析
- 2025年工业机器人系统运维员高级模拟试题集:机器人编程与维护技能提升策略
- 2025年MSOffice心态调整建议试题与答案
- 福建省厦门市08-09学年高二下学期期末考试(生物)
- 福建省莆田市第二十五中学2018-2019学年高二地理下学期第一次月考试题(含解析)
- 2016年社区获得性肺炎(CAP)指南解读与抗生素应用
- 预应力混凝土连续梁张拉记录
- GB/T 41028-2021航空航天流体系统液压软管、管道和接头组件的脉冲试验要求
- GB/T 28728-2012溶液聚合苯乙烯-丁二烯橡胶(SSBR)微观结构的测定
- 化工环境保护与及安全技术概论考试题及答案
- 领退转款账户确认书
- 精益生产精管理培训课件
- 监理大纲(综合)
- 钳工技能-刮削与研磨课件
- 浙大中控DCS系统AdvanTrol-Pro软件培训-编程综合编程案例课件
- 2021版《安全生产法》培训课件
评论
0/150
提交评论