版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
...wd......wd......wd...课程设计论文题目:基于RDA5807的数控FM收音机院〔系〕:信息与通信学院专业:电子信息工程学生姓名:杜俊峰学号:1100220509指导教师:蔡晓东2013年12月15日摘要此收音机基于RDA5807收音模块,通过STC89C52单片机来控制频率显示、音量控制,单片机与收音模块之间通过IIC通信协议来进展通信控制。该数控收音机具有噪音消除、软静音、低音增强,而且灵敏度高、噪声小,抗干扰能力强,能够在液晶屏上实时显示频率和声音。并且体积小、方便携带。关键词:RDA5807,STC89C52.IIC通信AbstractThisradioradiomodulebasedRDA5807bySTC89C52microcontrollertocontrolthefrequencydisplay,throughIICcommunicationprotocolforcommunicationbetweenthecontrolvolumecontrol,microcontrollerandradiomodule.Thedigitalradiowithnoisecancellation,softmute,bassboost,andhighsensitivity,lownoise,stronganti-interferenceabilitytodisplaythefrequencyandsoundinrealtimeontheLCDscreen.Andsmall,easytocarry.Keywords:RDA5807,STC89C52、IIC目录TOC\o"1-3"\u引言 11设计要求及方案选择 11.1设计要求11.2方案选择11.2.1方案比照11.2.2方案构图21.2.3各局部作用22理论分析与设计32.1单片机最小系统设计32.1.1STC89C52特性32.1.2STC89C521引脚功能32.2收音模块及存储芯片电路设计43电路设计63.1硬件电路设计63.1.1单片机最小系统电路63.1.2模块电路设计64软件设计74.1IIC通信协议分析74.2程序流程图95系统调试105.1调试结果105.2结果分析106结论 10谢辞11参考文献 12附录13引言收音机在日常生活中必不可少,在信息化的今天,数字化已经成为时代潮流,数控收音机越来越受到人们的青睐,相比于传统收音机,数控收音机以良好的人机互动、操作简单化更符合人们的要求1设计要求及方案选择1.1设计要求〔1〕65-108MHz全球FM接收频段相容〔包括日本76-91MHz和欧美87.5-108MHz〕〔2〕具备噪声消除、软静音、低音增强等功能〔3〕灵敏度高、噪声小、抗干扰能力强〔4〕具备频率显示功能1.2方案选择在如今这个信息化时代,信息的接收和处理显得越发重要,收音机作为传统承受信息的工具,已经深入到人们的日常生活中。在电子领域,对于制作调频收音机,有以下两种方法。一是用分立元件设计收音机。二是运用集成模块用数控来做收音机。1.2.1方案比照方案一:分立元件所做的收音机,其缺点显而易见,调试难度大,音质差,本钱相比集成收音机高很多,在现在根本上已经被淘汰了。方案二:用集成模块做收音机。集成模块做的收音机有以下特点:(1)体积和功耗小。一片集成电路放大器可具有数十个晶体管、二极管、电阻和电容等所组成电路的功能。但其体积和功耗仅相当于一个小功率晶体管。
(2)可靠性高。由于集成电路外部连线和焊点极少,减小了出故障的可能性,故可靠性高。
(3)保真度好。由于集成电路是把所有晶体管都制在一块片子上,晶体管的配对和静态电流等都可处于最正确状态,所以失真度很小,一般都小于1%。故用它制作的收音机保真度较好。
(4)灵敏度高。这是因为集成电路可以在其内部多制一些晶体管,从而提高整机的灵敏度。
(5)功率大、音质优美。用集成电路和大功率晶体管共同组装的收音机能到达几十瓦以上的不失真功率输出,功率余量大。因此,声音洪亮,音质优美。
(6)频响宽。集成电路放大器的开环增益非常高,接成闭环后能减小失真和加宽频响。其频响范围可从40赫到20千赫,比分立元件组装的收音机频响宽。
(7)稳定性好、性能指标高。集成电路工作稳定,为提高整机性能,电路可设计成分立元件难以实现的高性能电路。
(8)集成电路中相邻元件的参数匹配优良,故放大器的零点漂移和共模抑制比等直流参数得到改善。在输入端无信号时,功率输出级的中点始终保持零电位,不会因温漂而烧扬声器。这是目前元件所达不到的。
(9)装配和调试比拟简单。用集成元件组成的功放电路,只要焊接无误,几乎不需调整,即能保证放音。对于变频和中放集成电路,则不必调整静态工作点。用集成元件组成的组合式收音机,只要调准中频频率,完成三点统调即可。
(10)价格廉价。即在整机性能和功能一样的情况下,本钱比分立元件收音机低很多,这样有利于收音机的推广普及。此外,集成电路的应用,为收音机的多功能创造了必备的条件。例如,自动选台、预选节目、频率的数字显示等性能,已随着集成电路的应用而相继实现。所以我最终选择了方案二,选用RDA5807收音模块做调频收音机。1.2.2方案构图基于RDA5807的数控收音机,在电子领域有许多相关的方案和设计思路,在仔细考量现有的条件和本身的专业能力后我选择用STC89C52单片机作为控制系统来驱动RDA5807收音模块。由于5807的工作电压只要3.3V,而单片机的工作电压是5V,所以我选用AS1117降压芯片来将5V的电压降到3.3V来给收音模块供电,因为担忧内存不够,我外加一块24C02存储芯片,与RDA5807一起通过IIC串口通信与单片机最小系统相连。我用四个按键分别控制音量的加减和上下搜索频道,并且用1602液晶来显示当前频道频率和音量大小。因为都是模块化的器件,所以本次的作品体积小,携带方便,有实用价值。方案利用的是单片机最小系统、液晶显示局部、按键控制和收音模块与存储芯片局部共同等组成的系统,以下列图为方案系统框图。液晶显示STC89C52单片机控制系统收音模块及存储芯片液晶显示STC89C52单片机控制系统收音模块及存储芯片按键控制按键控制1-1方案系统框图1.2.3各局部的作用〔1〕液晶显示。液晶显示用1602液晶屏来显示频率和音量信息。单片机最小系统将收到的频率和音量数据发送给液晶,让其显示出来。〔2〕按键控制。四个按键分别用来控制音量大小和频率搜索,提供人机互动,通过单片机来控制收音模块〔3〕单片机最小系统。用STC89C52单片机来实现数控,承受按键信息来控制收音模块,再将收音模块反响的信息传给液晶。〔4〕收音模块。通过和最小系统进展信息交换,按要求完成用户的指令2.理论分析与设计2.1单片机最小系统电路设计2.1.1STC89C52特性STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改良使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断构造〔兼容传统51的5向量2级中断构造〕,全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停顿工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停顿,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。STC89C52实物图2.1.2STC89C52引脚功能1电源:①VCC-芯片电源,接+5V;
②VSS-接地端;
2.时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
3.控制线:
控制线共有4根:
ALE/PROG:地址锁存允许/片内EPROM编程脉冲
①ALE功能:用来锁存P0口送出的低8位地址
②PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
PSEN:外ROM读选通信号。
RST/VPD:复位/备用电源。
①RST〔Reset〕功能:复位信号输入端。
②VPD功能:在Vcc掉电情况下,接备用电源。
EA/Vpp:内外ROM选择/片内EPROM编程电源。
①EA功能:内外ROM选择端。
②Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
4.I/O口线:P0、P1、P2、P3共四个八位口。
P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。P0口也用以输出外部存储器的低8位地图1址。由于是分时输出,故应在外部加锁存器将此地址数据锁存,地址锁存,信号用ALE。
P1口是专门供用户使用的I/O口,是准双向口。
P2口是从系统扩展时作高8位地址线用。不扩展外部存储器时,P2口也可以作为用户I/O口线使用,P2口也是准双向口。
P3口是双功能口,该口的每一位均可独立地定义为第一I/O功能或第二I/O功能。作为第一功能使用时操作同P1口。STC89C52的引脚图2.2收音模块及存储芯片电路设计“RRD-102V2.0〞立体声收音模块〔FMStereoradioModule〕高灵敏度、低功耗、超小体积的调频立体声收音模组。采用RDAMicroelectronics的RDA5807M〔或RDA5802NM〕,此电路外围元件少、噪声系数极小。具有体积小、低功耗、低本钱、应用简单、使用范围广等优点。是一款简单易用且具极高性价比的单芯片FM立体声收音模组。它能很好的完成课设要求。由于它只需要3V电压工作,我用as1117线性稳压芯片将5v的单片机工作电压降到3V。模块的引脚及外围电路图AS1117应用电路3.电路设计3.1硬件电路的设计本次课设的硬件电路主要分成两大块来做板,一块是单片机最小系统和液晶及按键的局部;另一局部是以收音模块为主的模块局部。3.1.1单片最小系统局部电路图单片机最小系统外围电路只需要接复位电路及震荡电路就行,而显示及按键只需要接到I/O口就行了。下面是其原理图:3.1.2模块电路设计由单片机给1117芯片和24C02供电,再将降压得到的3V电压供应RDA5807模块,由于模块和芯片的外围电路都资料上都已经给出来了,所以只需要将其连接到一起就可以了。J1接单片机电源,J3接单片机I/O口模块原理图4.软件设计4.1IIC通信协议分析本次课程设计硬件电路设计比拟简单,但是程序比拟难,它的难度在于RDA5807采用的是IIC通信模式,这种通信模式对时序要求很严格。IIC通信协议有以下特点:(1)只要求两条总线线路一条串行数据线SDA一条串行时钟线SCL(2)每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址;主机可以作为主发送器或主机接收器(3)它是一个真正的多主机总线,如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁防止数据被破坏(4)串行的8位双向数据传输位速率在标准模式下可达100kbit/s快速模式下可达400kbit/s高速模式下可达.4Mbit/s(5)片上的滤波器可以滤去总线数据线上的毛刺波保证数据完整(6)连接到一样总线的IC数量只受到总线的最大电容400pF限制I2C协议总线信号时序分析1.数据的有效性:SDA线上的数据必须在时钟的高电平周期保持稳定数据线的高或低电平状态只有在SCL线的时钟信号是低电平时才能改变。2.起始和停顿条件当SCL线是高电平时,SDA线从高电平向低电平切换,这个情况表示起始条件。当SCL线是高电平时,SDA线由低电平向高电平切换表示停顿条件。3.总线空闲状态SDA和SCL两条信号线都处于高电平,即总线上所有的器件都释放总线,两条信号线各自的上拉电阻把电平拉高;4.数据传输与应答信号ACK发送到SDA线上的数据必须是8位的。每次传输可以发送的数据不受限制。每个字节后必须在时钟的第9个脉冲期间释放数据总线〔SDA为高〕,由接收器发送一个ACK(把数据总线的电平拉低)来表示数据成功接收。首先传输的是数据的最高位〔MSB〕。如果从机要完成一些其他功能后〔例如一个内部中断服务程序〕才能接收或发送下一个完整的数据字节,可以使时钟SCL保持低电平迫使主机进入等待状态。当从机准备好接收下一个数据字节并释放时钟线SCL后,数据传输继续。4.地址格式数据的传输遵循如图4.1完整的数据传送所示,在起始条件之后,发送一个7位的从机地址,紧接着第8位是数据方向〔R/—W〕,0-表示发送数据〔写〕,1-表示接收数据〔读〕。数据传输一般由主机产生的停顿位〔P〕终止。但是如果主机仍希望在总线上通讯,它可以产生重复起始条件〔Sr〕,和寻址另一个从机,而不是首先产生一个停顿条件。在这种传输中,可能有不同的读/写格式结合。现代电子系统中,有为数众多的IC需要进展相互之间以及与外界的通信。为了提供硬件的效率和简化电路的设计,PHILIPS开发了一种用于内部IC控制的简单的双向两线串行总线I2C。I2C总线支持任何一种IC制造工艺,并且PHILIPS和其他厂商提供了种类非常丰富的I2C兼容芯片。作为一个专利的控制总线,I2C已经成为世界性的工业标准。每个器件都有一个唯一的地址,而且可以是单接收的器件〔例如:LCD驱动器〕或者可以接收也可以发送的器件〔例如:存储器〕。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。I2C是一个多主总线,即它可以由多个连接的器件控制。根本的I2C总线标准于20年前发布,其数据传输速率最高为100Kbits/s,采用7位寻址。但是由于数据传输速率和应用功能的迅速增加,I2C总线也增强为快速模式〔400Kbits/s〕和10位寻址以满足更高速度和更大寻址空间的需求。I2C总线始终和先进技术保持同步,但仍然保持其向下兼容性。并且最近还增加了高速模式,其速度可达3.4Mbits/s。它使得I2C总线能够支持现有以及将来的高速串行传输应用,例如EEPROM和Flash存储器。IIC通信协议一般的过程:1-先向总线发出芯片地址2-如果有芯片地址正确的芯片,会产生一个SDA上应答。3-接着主机再发出应答过的芯片发出将要所进展操作的片内地址。4-芯片地址正确的芯片,会再产生一个SDA上应答。5-此时如果是读操作,从芯片将输出数据到SDA上。如果是写操作,主时机将数据写到SDA上。4.2程序流程图:根据以上资料,结合单片机知识,编出了相关程序,这是程序流程图:程序框图初始化初始化液晶显示初始值液晶显示初始值检测是否有按键按下检测是否有按键按下模块进展搜索频道和音量的相关变化模块进展搜索频道和音量的相关变化液晶显示当前频率和音量液晶显示当前频率和音量完毕完毕具体程序详见附录5.系统测试5.1调试结果:所能承受的频率87.0MHZ87.1MHZ88.0M88.3M89.8M90.0M94.1M95.0M96.0M97.799.0M100.0101.1101.4101.51021041051061085.2结果分析:根据结果可知,其满足了87~108MHZ〔欧美〕频率承受要求,并且具有良好的噪音消除和抗干扰能力。液晶显示频率和音量,完全符合课设题目要求,因此,此作品到达教师所给要求,是成功的。6.总结通过这段时间的辛苦努力,在教师和大家的帮助下,终于把这个课程设计题目完成了,也能够满足课设题目所定的要求,具有频率显示功能,并且能够搜索到相应范围内的频率,采用数字控制,操作简单,携带方便。谢辞本论文设计在教师的悉心指导和严格要求下业已完成,从课题选择到具体的写作过程,论文初稿与定稿无不凝聚着心血和汗水,在我的课程设计期间,教师为我提供了种种专业知识上的指导和一些富于创造性的建议,教师一丝不苟的作风,严谨求实的态度使我深受感动,没有这样的帮助和关心和熏陶,我不会这么顺利的完成课程设计。在此向教师表示深深的感谢和崇高的敬意!同时,在论文写作过程中,我还参考了有关的书籍和论文,在这里一并向有关的作者表示谢意。我还要感谢同组的各位同学以及我的各位室友,在课程设计的这段时间里,你们给了我很多的启发,提出了很多珍贵的意见,对于你们帮助和支持,在此我表示深深地感谢!参考文献[1]康华光.电子技术根基[M].北京:高等教育出版,2006,68〔3〕:40~57.[2]李强.51系列单片机应用软件编程技术[M].北京:北京航空航天大学,2009:77~90.[3]谭浩强.C语言程序设计教程[M].北京:高等教育出版社,1991:30~32.[4]樊昌信通信原理〔第6版〕[M].北京:国防工业出版社,2006:20~65[5]宋树祥,周冬梅.高频电子线路.[M]北京大学出版社,2007年2月[6]陈邦媛.射频通信电子线路学习指导.[M]科学出版社,2007年6月[7]吴慎山.高频电子线路.[M]电子工业出版社,2007年1月[8]谢沅清.通信电子线路.[M]电子工业出版社,2007年7月[9]曾兴雯.高频电子线路.[M]高等教育出版社,2004年1月[10]杨翠娥.高频实验与课程设计.[M]哈尔滨工程大学出版社,2005年1月[11]于洪珍.通信电子线路.[M]清华大学出版社,2006年1月[12]陈利永.电子电路根基.[M]中国铁道出版社,2006年7月附录附录一程序/*主程序*/#include"reg52.h"#include"intrins.h"#include"lcd.h"#include"IIC.h"#include"delay.h"sbitK1=P2^1;sbitK2=P2^2;sbitK3=P2^3;sbitK4=P2^4;unsignedlongfrequency;//RDA5807存放器unsignedcharRDA_reg_data[8]={0xd0,0x00,//02H0x00,0x00,//03H0x00,0x40,//04H0x90,0x88,//05H};unsignedcharcodecdis1[]={"XiaoDU'sRADIO"};unsignedcharcodecdis2[]={"FMVOL"};charcodereserve[3]_at_0x3b;//保存0x3b开场的3个字节/**********************************************************连续写存放器子函数**********************************************************/voidRDA5807_write_reg(void){uchari;I2C_start();//收音模块写入操作I2C_write_byte(0x20);//存放器连续写操作for(i=0;i<8;i++){I2C_write_byte(RDA_reg_data[i]);}I2C_stop();}/**********************************************************连续读存放器子函数**********************************************************/voidRDA5807_read_reg(uchar*reg_buf){I2C_start();//收音模块读取操作I2C_write_byte(0x21);//存放器连续读操作reg_buf[0]=I2C_read_byte(I2C_ACK);reg_buf[1]=I2C_read_byte(I2C_ACK);reg_buf[2]=I2C_read_byte(I2C_ACK);reg_buf[3]=I2C_read_byte(I2C_NACK);I2C_stop();}/**********************************************************模块上电初始化子函数**********************************************************/voidRDA5807_power(void){delayms(50);//发送软件复位指令RDA_reg_data[0]=0x00;RDA_reg_data[1]=0x02;RDA5807_write_reg();delayms(10);//收音模块默认参数RDA_reg_data[0]=0xd0;RDA_reg_data[1]=0x01;RDA5807_write_reg();}/**********************************************************功能描述:收音模块自动寻台模式**********************************************************/voidRDA5807_FM_seek(void){uintchan;ucharreg_data[4]={0x00,0x00,0x00,0x00};RDA_reg_data[3]&=~(1<<4);//调谐禁用//内部自动寻台使能RDA_reg_data[0]|=(1<<0);//SEEK位置1RDA5807_write_reg();//等待STC标志置位while(0==(reg_data[0]&0x40)){delayms(20);//读取内部状态RDA5807_read_reg(reg_data);}//获取当前工作频点chan=reg_data[0]&0x03;chan=reg_data[1]|(chan<<8);chan=chan<<6;//保存当前工作频点RDA_reg_data[2]=(chan>>8)&0xff;RDA_reg_data[3]=(chan&0xff);}/**********************************************************频率显示子函数**********************************************************/voidshow_frequency(void){unsignedchari,display[5];unsignedinttemp;temp=(RDA_reg_data[2]*256)+(RDA_reg_data[3]&0xc0); //计算temp=temp>>6;frequency=(unsignedlong)(100*temp+87000)/100;for(i=0;i<5;i++)//清显存单元display[i]=0x00;display[0]=(frequency)/1000;//数据转换display[1]=(frequency%1000)/100;display[2]=(frequency%100)/10;display[3]=0x2e;//小数点display[4]=(frequency%10);if(display[0]==0){display[0]=display[1]+0x30;display[1]=display[2]+0x30;display[2]=display[3];display[3]=display[4]+0x30;display[4]=0x20;}else{display[0]+=0x30;display[1]+=0x30;display[2]+=0x30;display[4]+=0x30;}lcd_pos_xy(3,2);//频率显示lcd_wdat(display[0]);lcd_wdat(display[1]);lcd_wdat(display[2]);lcd_wdat(display[3]);lcd_wdat(display[4]);}/**********************************************************音量显示子函数**********************************************************/voidshow_volume(){unsignedchartemp,display[2];temp=RDA_reg_data[7]&0x0f;//取音量值display[0]=temp/10;display[1]=temp%10;if(display[0]==0)//如果高位为0{display[0]=display[1];//低位显存内容进入高位显存display[1]=0x20;//低位不显示}else{display[1]+=0x30;}display[0]+=0x30;lcd_pos_xy(13,2);//音量值显示lcd_wdat(display[0]);lcd_wdat(display[1]);}voidmain(void){P0=0xff;P1=0xff;P2=0xff;lcd_init();lcd_w_string(0,1,cdis1,0);lcd_w_string(0,2,cdis2,0);RDA5807_power();while(1){if(K1==0){delayms(20);if(K1==0){RDA_reg_data[0]|=(1<<1); //SEEKUP RDA5807_FM_seek(); while(K1==0);}}if(K2==0){delayms(20);if(K2==0){RDA_reg_data[0]&=~(1<<1);//SEEKDOWN RDA5807_FM_seek();while(K2==0);}}if(K3==0){delayms(20);if(K3==0){if((RDA_reg_data[7]&0x0f)<0x0f){RDA_reg_data[0]=0xd0;RDA_reg_data[1]=0x01;RDA_reg_data[3]&=~(1<<4);RDA_reg_data[7]++; //音量递增RDA5807_write_reg(); while(K3==0);}}}if(K4==0){delayms(20);if(K4==0){if((RDA_reg_data[7]&0x0f)>0x00){RDA_reg_data[0]=0xd0;RDA_reg_data[1]=0x01;RDA_reg_data[3]&=~(1<<4);RDA_reg_data[7]--; //音量递减RDA5807_write_reg();while(K4==0);}}}show_volume();show_frequency();}}/*模块子程序*lcd.c*/#include"reg52.h"#include"intrins.h"#include"lcd.h"#include"delay.h"#defineucharunsignedchar#defineuintunsignedint#defineDATAP1sbitLCD_RS=P0^0;sbitLCD_RW=P0^1;sbitLCD_EN=P0^2; /*******************************************************************检查LCD忙状态lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。*******************************************************************/bitlcd_busy(){bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;delay();result=(bit)(DATA&0x80);LCD_EN=0;return(result);}/*******************************************************************写指令数据到LCDRS=L,RW=L,E=高脉冲,D0-D7=指令码。Check=1,进展忙检测。*******************************************************************/voidlcd_wcmd(ucharcmd,bitCheck){if(Check)while(lcd_busy());LCD_RS=0;LCD_RW=0;LCD_EN=0;delay();DATA=cmd;delay();LCD_EN=1;delay();LCD_EN=0;}voidlcd_wdat(uchardat){while(lcd_busy());//进展忙检测LCD_RS=1;LCD_RW=0;LCD_EN=0;DATA=dat;delay();LCD_EN=1;delay();LCD_EN=0;}/*******************************************************************LCD初始化设定*******************************************************************/voidlcd_init(){delayms(50);lcd_wcmd(0x38,0);//16*2显示,5*7点阵,8位数据delayms(5);lcd_wcmd(0x38,0);//不进展忙检测,强制执行。delayms(5);lcd_wcmd(0x38,0);delayms(5); lcd_wcmd(0x38,1);//进展忙检测delayms(5);lcd_wcmd(0x0c,1);//显示开,关光标delayms(5);lcd_wcmd(0x06,1);//移动光标delayms(5);lcd_wcmd(0x01,1);//去除LCD的显示内容delayms(5);}/*******************************************************************设定显示位置*******************************************************************/voidlcd_pos_xy(ucharpos_x,ucharpos_y){ucharpos_temp;pos_temp=pos_x&0x0f;pos_y&=0x0f;if(pos_y==0x01)pos_temp|=0x80;elseif(pos_y==0x02)pos_temp|=0xc0;lcd_wcmd(pos_temp,1);}/*******************************************************************写字符串子函数*******************************************************************/voidlcd_w_string(ucharpos_x,ucharpos_y,ucharcode*str,uinttimes){ucharm;lcd_pos_xy(pos_x,pos_y);//设定起始位置for(m=0;m<16;m++){lcd_wdat(str[m]); delayms(times);}}/*IIC.c*/#include"reg52.h"#include"delay.h"#include"IIC.h"sbitSDA=P2^5;sbitSCL=P2^6;/**********************************************************
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年哑光丝绸内墙乳胶漆项目投资价值分析报告
- 2024至2030年不锈钢雕刻工艺品项目投资价值分析报告
- 2024年中国陶瓷异鞍环填料市场调查研究报告
- 2024年防静电牛仔服项目可行性研究报告
- 2024年针线拉钩项目可行性研究报告
- 2024年豪华型电子根尖测定仪项目可行性研究报告
- 2024年中国营养壮骨粉市场调查研究报告
- 《恒大·山水城图》课件
- 中班幼师教育教学计划
- 2024地铁线路建设施工合同
- 2024煤炭购销居间合同
- 中国融通线上笔试真题
- 2024-2030年中国清洁机器人行业市场发展趋势与前景展望战略分析报告
- DL∕T 5161.6-2018 电气装置安装工程质量检验及评定规程 第6部分:接地装置施工质量检验
- 马王卫生院医疗质量提升攻坚年行动部署落实情况汇报
- GB/T 18029.1-2024轮椅车第1部分:静态稳定性的测定
- 【化归思想在中学数学中的应用探究6600字(论文)】
- 国家开放大学《个人与团队管理》期末考试题库及答案
- 科普版四年级上册英语全册同步练习
- 2024年监狱民警述职报告范文(3篇)
- 铁路局客运段考核判断题题库与答案
评论
0/150
提交评论