基于C51单片机设计的擂台机器人.doc

上传人:仙人指路1688 文档编号:2293184 上传时间:2023-02-09 格式:DOC 页数:30 大小:19.54MB
返回 下载 相关 举报
基于C51单片机设计的擂台机器人.doc_第1页
第1页 / 共30页
基于C51单片机设计的擂台机器人.doc_第2页
第2页 / 共30页
基于C51单片机设计的擂台机器人.doc_第3页
第3页 / 共30页
基于C51单片机设计的擂台机器人.doc_第4页
第4页 / 共30页
基于C51单片机设计的擂台机器人.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《基于C51单片机设计的擂台机器人.doc》由会员分享,可在线阅读,更多相关《基于C51单片机设计的擂台机器人.doc(30页珍藏版)》请在三一办公上搜索。

1、武汉工程大学 计算机科学与工程学院综合设计报告设计名称: 嵌入式综合设计 设计题目: 擂台机器人程序设计 学生学号: 专业班级: 学生姓名: 学生成绩: 指导教师(职称): 完成时间: 武汉工程大学计算机科学与工程学院 制说明:1、报告中的第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。3、指导教师评语一栏由指导教师就学生在整个设计期间的平时表现、设计完成情况、报告的质量及答辩情况,给出客观、全面的评价。4、所有学生必须参加综合设计的答辩环节,凡不参加答辩者,其成绩一

2、律按不及格处理。答辩小组成员应由2人及以上教师组成。5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计的情况另行规定。6、平时表现成绩低于6分的学生,取消答辩资格,其本项综合设计成绩按不及格处理。7、此表格式为武汉工程大学计算机科学与工程学院提供的基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计的特点及内容做适当的调整,并上报学院批准。答辩记录表学生姓名: 学号: 班级: 答辩地点: J523实验室 答辩内容记录:答辩成绩合计分值各项分值评分标准实际得分合计得分备注2510在规定时间内能就所设计的内容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定

3、时间内能准确、完整、流利地回答教师所提出的问题。答辩小组成员(签字): 年 月 日成绩评定表学生姓名: 学号: 班级: 类别合计分值各项分值评分标准实际得分合计得分备注平时表现1010遵守学习纪律,表现良好,积极完成综合设计任务,无旷课、迟到、早退等情况。设计完成情况3020按照要求完成设计内容,方案合理,功能完善,设计工作量饱满,能运用专业知识和技能去发现与解决实际问题。10在设计过程中展现出了较强的学习能力、动手实践能力、团队协作能力和创新意识。报告质量3510报告格式规范,表述清晰,章节内容组织恰当。符号统一,图表完备,符合规范要求。参考文献数量在5篇以上,格式及引用符合要求。15报告内

4、容翔实,结构严谨合理。课题背景介绍清楚,综述充分。设计与实现等主要过程完整,论述具体透彻。能运用所学专业知识对问题加以分析和求解。无抄袭现象。10设计报告对整个设计过程进行了全面总结,体现了收获,得出了有价值的结论或结果。答辩情况2510在规定时间内能就所设计的内容进行阐述,言简意明,重点突出,论点正确,条理清晰。15在规定时间内能准确、完整、流利地回答教师所提出的问题。总评成绩指导教师评语 指导教师: (签字) 日期: 年 月 日一、综合设计目的、条件、任务和内容要求:设计目的:1.学习使用掌握几种新型的传感器;2.将这些传感器的信息进行综合处理;3.应用C语言的各种知识;4.学习编程技术和

5、技巧条件:每人一套“C51+AVR版两轮教育机器人套件“任务: 设计擂台机器人,在规定的场地内活动,搜索对手,找到对手,并将对手推出场地。内容要求:使用套件中的元件自行拼装,编程,自己动手制作二、进度安排:2015/3/3掌握嵌入式基础,了解C51基础知识2015/3/5深入学习嵌入式知识2015/3/9模拟仿真C51单片机实验2015/4/6整机测试,程序试运行2015/4/20完善程序,优化设计,进行答辩三、应收集资料及主要参考文献:应学习的基础知识:1. 单片机基础知识2. 机器人设计基础3. C语言程序设计文献:1 赵德安,单片机原理与应用M,北京:机械工业出版社,20092 陈黎明,

6、传感器技术机器应用M,北京:清华大学出版社,20083 秦志强,机器人辅助C程序设计M,北京:电子工业出版社,20134 楼然苗,李光飞,51单片机设计实例M,北京:北航出版社,2005四、综合设计(课程设计)摘要(中文):嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很简单,如小车上的一个小型的电机,当接收到某种信号时启动电机。基于AT89C51芯片的单片机与多种传感器和舵机的组合设计成的擂台小车就是一个嵌入式系统,通过传感器检测到的数据来做出判断,以执行各种命令,实现擂台格斗的功能

7、。传感器是一种将非电量转换为电量信号的检测装置,灵活的运用它,可以赋予小车感知能力。关键词: 嵌入式系统;AT89C51;传感器;擂台小车五、综合设计(课程设计)Abstract(英文):Embedded systems in general by means of embedded computer systems and actuators composed , the actuator is also known as the controlled object , it can accept an embedded computer system sends control comma

8、nds , operate or perform specified tasks . Execution means may be as simple as a small trolley motor , the starter motor when receiving a signal . AT89C51 microcontroller chip based on a combination with a variety of sensors and servos designed the ring car is an embedded system , detected by the se

9、nsor data to make judgments, to execute various commands to achieve the ring fighting capabilities. The sensor is a non-power converted into electricity signal detection device , flexible use of it, you can give the perception of the car .Keywords:Embedded systems; AT89C51; Sensor; The ring car目 录目

10、录I摘 要IIAbstractII第一章 机器人设计绪论11.1 目的与意义11.2 制作条件1第二章 机器人设计方案42.1 机器人原理42.2 超声波机器人42.3 红外机器人5第三章 单元模块设计63.1 距离测量模块63.2 液晶显示模块73.3 循迹模块10第四章 机器人控制程序设计124.1 舵机控制124.2 红外传感器控制134.3 超声波传感器控制134.4 LCD液晶显示器控制14第五章 总结与分析19致 谢20摘 要嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很

11、简单,如小车上的一个小型的电机,当接收到某种信号时启动电机。基于AT89C51芯片的单片机与多种传感器和舵机的组合设计成的擂台小车就是一个嵌入式系统,通过传感器检测到的数据来做出判断,以执行各种命令,实现擂台格斗的功能。传感器是一种将非电量转换为电量信号的检测装置,灵活的运用它,可以赋予小车感知能力。关键词: 嵌入式系统;AT89C51;传感器;擂台小车AbstractEmbedded systems in general by means of embedded computer systems and actuators composed , the actuator is also kn

12、own as the controlled object , it can accept an embedded computer system sends control commands , operate or perform specified tasks . Execution means may be as simple as a small trolley motor , the starter motor when receiving a signal . AT89C51 microcontroller chip based on a combination with a va

13、riety of sensors and servos designed the ring car is an embedded system , detected by the sensor data to make judgments, to execute various commands to achieve the ring fighting capabilities. The sensor is a non-power converted into electricity signal detection device , flexible use of it, you can g

14、ive the perception of the car .Keywords:Embedded systems; AT89C51; Sensor; The ring car第一章 机器人设计绪论随着科学的发展,在未来的几十年,大部分人类的体力劳动必将为智能机器人所替代,并且在抢险救灾、太空开发、资源探测等领域将发挥不可替代的作用。而机器人擂台赛是一个加强学术交流,互相提高的非常好的平台,因为只有实践才能出真知,只有勇于探索才可能有创新。基于51单片机设计的机器人能根据摇控接收模块的信号来控制电机正反转及快慢,从而制机器人的运动,并且机器人上的红外测距传感器还能判断对手的方位。1.1 目的与意

15、义 在社会不断发展的今天,人们越发的认识到了机器人技术的重要性,促使着机器人技术在不断地改革和创新当中,机器人的应用也在各个领域取得了重大进步,增加了可操作性和实际性。而在运动时也不仅限于单一操控,在机器人技术往高水平迈进的同时,对于其在执行任务时的的精确度拥有了更高的要求,运动的实时性和可靠性也在逐步提高。 目前,中国很多高等院校及公司都在不同领域研发机器人,例如足球机器人,勘测机器人,医疗救护机器人等等,人们开始认识到了在机器人领域有着很大的发展空间,而同时期的机器人比赛更是络绎不绝,而我们所设计的则是一款擂台赛的机器人。 我通过对中科欧鹏公司推出的产品基于C51单片机设计的机器人的学习,

16、以及查阅相关材料,设计出了一款擂台机器人。它能够自动检测擂台边缘,对敌方进行侦测。它采用了红外传感器,超声波传感器和QTI传感器套件,组成了一个集环境感应,动态决策与规划,行为控制与执行等多种功能于一体的综合系统。以C语言进行运动程序的编写,最终实现一个能够参加擂台竞赛的机器人。1.2 制作条件 根据机器人擂台的竞赛规则,以中科欧鹏公司生产C51单片机为基础,设计可应用于擂台竞赛的攻击型机器人的行为策略,设计具有竞争力的总体比赛方案。在进攻、防守时机器人用何种速度和方式行进,以及设计控制系统和比赛程序。在用教学机器人套件搭建的机器人上进行调试,根据问题进行进一步的完善以提高其竞争力。1.2.1

17、 硬件平台图 1.0.1 AT89S52单片机AT89S52 是一种低功耗、高性能 CMOS8 位微控制器, 具有 8K 在系统可编程 Flash 存 储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完 全兼容。片上 Flash 允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上, 拥有灵巧的 8 位 CPU 和在系统 可编程 Flash ,使得 AT89S52 为众多嵌入式控制应用系统 提供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能:8k 字节 Flash,256 字 节 RAM,32 位 I/O 口线,看门狗定时器,2

18、个数据指针,三个 16 位定时器/计数器, 一 个 6 向量 2 级中断结构, 全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持2 种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM 、 定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止1.2.2 软件平台Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件

19、。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。 Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列

20、处理器模型。在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。第二章 机器人设计方案本章简要介绍机器人的设计原理以及方案。以AT89S52单片机为控制主板,各路传感器为输入设备,通过编写程序来控制小车的动作。2.1 机器人原理 擂台机器人包括五个模块,分别为电源模块、红外检测模块、声纳测距模、QTI循线模块以及液晶显示模块。电源采用可以安装四节五号电池的电池盒,红外检测以及QTI模块都为红外传感器集成套件,超声波模块(声纳)使用的是HC-SR04传感器,最后采用LCD液晶显示器来输出测出的距离和检测到的数据。它们的关系如下图所示:AT89S52电源模块红外检测模块声纳测距模块液晶

21、显示模块QTI红外循迹模块图 2-1 各部分关系图2.2 超声波机器人根据比赛规则和要求,经过分析,设计以超声波传感器为主的擂台小车。在小车上安装超声波传感器的目的是为了确定目标的具体位置,以此来采取相应的行动。采用声纳的原因是因为其测量距离较远、精度较高。根据场地的设计,给小车安装QTI循迹传感器套件,以此检测自身所处是否为场地内的擂台上,避免走出擂台。第一步,为小车提供必要的功能函数,实现小车的前进、后退、左转、右转。这里设计两个方面,一是软件,二是硬件。硬件部分是要理解舵机的驱动原理,即通过某种频率的脉冲信号来控制舵机的转动速度和方向。软件也就是程序,通过C语言编程来实现对硬件的控制,这

22、里是要求使单片机的I/O口输出适当的脉冲信号。第二步,先掌握HC-SR04的工作原理,并且连接好电路,最后编写C程序来驱动超声波传感器。第三步,实现小车对敌人的搜索功能。第四步,制定相应的作战策略。马达启动开始搜索目标是否发现行动策略是否图 2.2 结构流程2.3 红外机器人 红外机器人是以红外传感器来实现对目标的检测的。通过红外信号的有无返回来判断目标是否被检测到,在小车中的功能与声纳的用法相似,设计方案相同,在第三章中会介绍红外传感器的应用,这里不做赘述。第三章 单元模块设计在第二章中,简要介绍了擂台小车设计原理以及硬件选材,包括设计思路与设计方案等。在第二章的基础上,本章为各个模块的设计

23、进行详细介绍。 3.1 距离测量模块 超声波传感器是一款通过超声波发射装置发出超声波,根据接收器接到超声波时的时间差就可以知道距离了。这与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。小车的距离测量模块正是用超声波传感器设计的。3.1.1 超声波传感器工作原理图 3.1 超声波传感器控制口发一个 10US 以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,就可以

24、达到你移动测量的值了。3.1.2 控制方式引脚定义:正面对传感器,从左至右依次为VCC、Trig、Echo、GND应用方法:(1)采用 IO 触发测距,给至少 10us 的高电平信号; (Trig控制端送一个10us以上高电平)(2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回; (3)有信号返回,通过 IO 输出一高电平,高电平持续的时间就是波的往返时间;(Echo接收端收到声波后输出高电平)(4)超声波从发射到返回的时间测试距离=(高电平时间*声速(340M/S)/2;图 3.2 超声波传感器时序图以上时序图表明你只需要提供一个10uS以上脉冲触发信号,该模块内部将发出

25、8个40KHz周期的电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此用过发射信号到收到的回响信号时间间隔可以计算出距离。公式为:uS/58将单位化成厘米(CM),uS/148将单位化成英寸;距离=高电平时间*声速(340m/s)/2;建议测量周期为60ms以上,以防止信号对回响的影响。3.1.3 注意事项此模块不宜带电连接,如果要带电连接,则先让模块的 GND端先连接,否则会影响模块工作。测距时,被测物体的面积不少于 0.5 平方米且要尽量平整。否则会影响测试结果。 3.2 液晶显示模块该LCD1602液晶显示模块是专为鸥鹏科技教育机器人定制产品,

26、接口方式及安装位置完全适应鸥鹏科技教育机器人系列,在使用过程中仅需要对位安装即可。3.2.1 DM-EC-D16 LCD1602液晶显示模块接口定义图 3.3 接口定义图 3.2.2 安装步骤一、首先拿到的是已经焊接好接口排母的LCD1602液晶显示模块。图 3.4 液晶显示模块 二、该模块配有接口安装用的两排10pin等长排针。图 3.5 LCD模块与排针 三、使用C51单片机驱动显示LCD1602时,需将两排10Pin的等长排针插入JP2排母接口。而当要使用AVR单片机驱动显示LCD1602时,需将两排10Pin的等长排针插入JP1排母接口。注意:JP2和JP2不可同时使用。下面以C51驱

27、动显示LCD1602的安装方法为例说明。图 3.6 排针安装效果图 将安装好排针的LCD1602液晶显示模块对位安装到鸥鹏科技C51 AVR控制板上的JP7排母接口,并在另一端安装好配套的铜柱和螺母螺钉。图 3.7 安装效果图3.3 循迹模块 这个模块使用的QTI(Quick Track Infrared)传感器如图3.8所示。它的工作原理同红外传感器原理完全一样,只是对两个电路进行了封装,并用一个信号线来实现对红外线的发射和接收控制,节约了单片机微控制器的宝贵接口(引脚)资源。这里使用的QTI传感器探测到黑色物体时输出高电平(+5V),探测到白色物体输出低电平(0V)。图 3.8 QTI传感

28、器 3.3.1 性能参数QTI传感器的特性使其很适合用在巡线、迷宫导航、探测场地边缘等应用项目。本模块所使用QTI传感器的性能参数如下:工作温度:-40-85工作电压:5V连续电流:50mA功耗:100mW最佳探测距离:5-10mm最佳距离下最佳散射角度:65度响应时间:上升沿时间10us,下降沿时间50us QTI传感器的引脚图如图3.8所示,根据背面的几号,引脚的功能如下:GND:电源地线VCC:5V直流电源SIG :信号输出3.3.2 安装方式图 3.9 传感器与铜导柱连接将QTI传感套件包里的铜导柱与传感器按照上如所示进行安装,图示左端的螺杆用于将安装在铜导柱上的传感器固定到小车地盘上

29、。安装效果图如下:图 3.10 最终效果图 第四章 机器人控制程序设计 这章将介绍各个模块的程序控制。4.1 舵机控制图 4.1 MG995舵机 舵机(英文叫Servo):它由直流电机、减速齿轮组、传感器和控制电路组成的一套自动控制系统。上图为MG995舵机,是常用的舵机之一。通过发送信号,指定输出轴旋转角度。舵机一般而言都有最大旋转角度(比如180度。)与普通直流电机的区别主要在,直流电机是一圈圈转动的,舵机只能在一定角度内转动,不能一圈圈转(数字舵机可以在舵机模式和电机模式中切换,没有这个问题)。普通直流电机无法反馈转动的角度信息,而舵机可以。用途也不同,普通直流电机一般是整圈转动做动力用

30、,舵机是控制某物体转动一定角度用(比如机器人的关节)。我们使用的是360度舵机,即为无角度限制,可以360度旋转的舵机,通过脉冲宽度为1.7ms或1.3ms的脉冲信号来控制舵机正向或者反向全速转动。下面是以C语言编写的程序,控制单片机的特定端口发出脉冲信号。/使用P1_1端口控制左边舵机P1_1=1; /使P1_1端口发出高电平delay_nus(1700); /延时函数,信号脉冲宽度为1.7msP1_1=0; /使P1_1端口发出低电平/使用P1_0端口控制左边舵机P1_0=1; /使P1_0端口发出高电平delay_nus(1300); /延时函数,信号脉冲宽度为1.3msP1_0=0;

31、/使P1_0端口发出低电平4.2 红外传感器控制本设计使用的是一种集成的红外传感器,在一块较小的PCB上焊有红外线接收模块和红外发射模块、74HC00D四与非门电路芯片以及外围电路,使用起来方便。这块传感器有三个引脚,其中两个分别为VCC和GND,另一个为SIG。显然,如果传感器在一定距离内检测到物体,就会通过SIG端返回信号。所以只要通过编写检测SIG所连接的I/O端口电平高低状态的程序就能实现红外传感器的应用了。int P2_3_state(void)/检测LEFT return(P2&0x08)?1:0;/P2的第0x08号端口状态int P2_4_state(void)/检测Middl

32、e1 return(P2&0x10)?1:0; /P2的第0x10号端口状态4.3 超声波传感器控制在上一章中已经介绍了超声波传感器的原理,接下来就是编写C程序,来使用传感器了。根据它的原理得出,需要用到计时器,所以在使用传感器之前,需要先对C51单片机的计时器(计数器)寄存器进行初始化。再者,就是编写一个返回距离的函数。#includeat89x52.h /宝贝车的标准头文件#includeBoebot.h#includeuart.h /串口的头文件#include #include #define trig P1_3#define echo P1_4void Time0_Init (voi

33、d) /计数器0初始化程序TMOD |= 0x01;/计数器选择工作模式1TL0 = 0;/计数器低四位至零TH0 = 0;/计数器高四位至零TR0 = 0;/停止计数int DistanceMeasure() int count,x; /定义变量count,x为16位数 int a,y; TL0 = 0;/计数器低四位至零TH0 = 0;/计数器高四位至零 trig = 0 ;/置P1_3为0 trig = 1; /置P1_3为1 delay_nus(10000); /延时10ms trig = 0; /置P1_3口为0 while(echo = 0); /等待接收端高电平,表示测量开始TR

34、0 = 1;/定时器1计时开始,while (echo = 1);/等待超声波测量脉冲下降沿 TR0 = 0;/定时器1计时停止a = TH0;y = TL0; count=a*256 + y; /将计数值赋给变量countx=count/29.034; /转换为距离,即29.034us超声波能传播1cmreturn x;delay_nms(5);int main(void) int x; uart_Init(); /串口初始化 Time0_Init();/计数器初始化 while(1) /进入循环体x = DistanceMeasure();/距离测量 printf(“distance is

35、 :%d”,x); 4.4 LCD液晶显示器控制这款LCD是中科欧鹏公司生产的,所以与市场通用的LCD略有不同,不同点在于它使用的数据口只用了4个P0口,其它为空位,并且四个数据口分两次传送数据来完成一个数据的写入,程序如下:#include #include #define LCM_RW P2_1 /定义引脚#define LCM_RS P2_2#define LCM_E P2_0#define LCM_Data P0#define Busy 0x80 /用于检测LCM状态字中的Busy标识void Delay_5Ms(void)/5ms延时 unsigned int TempCyc = 5

36、552; while(TempCyc-);void Delay_400Ms(void)/400ms延时 unsigned char TempCycA = 5; unsigned int TempCycB; while(TempCycA-) TempCycB=7269; while(TempCycB-); ;/*= 函数名:Read_Status_LCM() 功 能: 忙检测函数 =*/void Read_Status_LCM(void) unsigned char read=0; LCM_RW = 1; LCM_RS = 0; LCM_E = 1; LCM_Data = 0xff; do re

37、ad = LCM_Data; while(read & Busy); LCM_E = 0;/*- 函数名:Write_Data_LCM ( ) 功 能: 对LCD 1602写数据 -*/void Write_Data_LCM(unsigned char WDLCM) Read_Status_LCM(); /检测忙 LCM_RS = 1; LCM_RW = 0; LCM_Data &= 0x0f; LCM_Data |= WDLCM&0xf0; LCM_E = 1; /若晶振速度太高可以在这后加小的延时 LCM_E = 1; /延时 LCM_E = 0; WDLCM = WDLCM4; LCM_

38、Data &= 0x0f; LCM_Data |= WDLCM&0xf0; LCM_E = 1; LCM_E = 1; /延时 LCM_E = 0;/*- 函数名:Write_Command_ LCM ( ) 功 能: 对LCD 1602写指令 -*/void Write_Command_LCM(unsigned char WCLCM,BuysC) /BuysC为0时忽略忙检测 if (BuysC) Read_Status_LCM(); /根据需要检测忙 LCM_RS = 0; LCM_RW = 0; LCM_Data &= 0x0f; LCM_Data |= WCLCM&0xf0;/传输高四

39、位 LCM_E = 1; LCM_E = 1; LCM_E = 0; WCLCM = WCLCM4; /传输低四位 LCM_Data &= 0x0f; LCM_Data |= WCLCM&0xf0; LCM_E = 1; LCM_E = 1; LCM_E = 0;/*- 函数名:LCM_Init() 功 能: 对LCD 1602初始化 -*/void LCM_Init(void) /LCM初始化 LCM_Data = 0; Write_Command_LCM(0x28,0); /三次显示模式设置,不检测忙信号 Delay_5Ms(); Write_Command_LCM(0x28,0); De

40、lay_5Ms(); Write_Command_LCM(0x28,0); Delay_5Ms(); Write_Command_LCM(0x28,1); /显示模式设置,开始要求每次检测忙信号 Write_Command_LCM(0x08,1); /关闭显示 Write_Command_LCM(0x01,1); /显示清屏 Write_Command_LCM(0x06,1); /显示光标移动设置 Write_Command_LCM(0x0C,1); /显示开及光标设置/*- 函数名:Set_xy_LCM () 功 能:设定显示坐标位置-*/void Set_xy_LCM(unsigned char x, unsigned char y) unsigned char address; if( x = 0 ) address = 0x80+y; else address = 0xc0+y;

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号