基于51单片机的RGB背光系统

西安邮电大学专业课程设计报告书院系名称:电子工程学院学生姓名:学号:专业名称:光电子技术系班级:实习时间:一.课程设计题目基于51单片机的RGB背光系统二.任务和要求1.收集资料并绘制51单片机的最小系统原理图,熟悉单片机开发环境KEILC51和C语言编程。2.查阅资料了解I2C总线协议。3.参照LED驱动芯片NCP5623和串口通信芯片MAX232数据手册绘制总电路图。4.根据电路图在面包板上连接电路并测试。5.画出软件流程图并在KEILC51开发环境上编写源代码并调试。6.利用STC—ISP下载软件将调试好的代码烧录到单片机中,在面包板观察LED亮暗变化,然后通过改动源代码实现LED现象的不同功能。7.分析总结此次课程设计过程中遇到了问题及解决办法和心得体会并撰写设计报告。三.总设计方案硬件设计:采用单片机作为LED的控制核心器件,选用NCP5623实现LED背光源的静态显示。单片机主要实现的功能是通过I2C协议控制NCP5623芯片,NCP5623根据单片机发送的命令调节3种颜色的LED的亮度从而达到背光的效果。NCP5623是安森美半导体推出的高能效3路输出LED驱动器,带有I2C接口,并且内置渐进调光功能,3路LED可独立控制,总LED电流可达90mA,并且是一种无铅器件。软件设计:NCP5623是接收单片机的命令而产生动作,单片机给NCP5623芯片发送指令是通过I2C总线,两者之间通过I2C协议进行通信。(I2C总线是PHLIPS公司推出的一种串行总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能高性能串行总线。I2C总线只有两根双向信号线,一根是数据线SDA,另一根是时钟线SCL)。NCP5623能实现的功能如下表:该表的$70代表NCP5623的I2C器件写地址对于NCP5623来讲没有读操作。该器件的命令为1个字节,它可以被认为是I2C传输的内容部分。该字节最高3位用来表征命令,后面5位用来表征命令的参数,比如001表示对个3个LED亮度同时进行控制,而后面5位则表示亮度。下面是每个命令的子程序实现,I2C_Start()是启动I2C总线读写函数,I2C_Stop()是停止I2C传输函数,write_Byte()是传输数据函数。每个命令的实现开头都应该有I2C_Start()启动传输,最后应该有I2C_Stop()停止I2C总线活动。四.单元电路设计1.STC89C52单片机最小系统模块最小系统电路图单片机最小系统是在单片机上接晶振电路和复位电路,VCC接高电平,GND接地。单片机为宏晶公司生产的STC89C52RC,外部晶振为12MHz。2.MAX232串口下载模块MAX232为美信公司生产的串口芯片,通过引脚R1OUT和T1IN分别与单片机的P3.0(RxD)和P3.1(TxD)连接实现通信。I2CAddressCOMMANDBits[7:0]OperationNote$70000XXXXXSystemShutDownBits[4:0]areirrelevan$700010000000111111SetUptheILEDcurrentILEDregisterBits[4:0]containtheILEDvalueasdefinedbytheIREFvalue$700100000001011111SetUptheREDPWMREDPWMBits[4:0]containthePWMvalue$700110000001111111SetUptheGREENPWMGREENPWMBits[4:0]containthePWMvalue$701000000010011111SetUptheBLUEPWMBLUEPWMBits[4:0]containthePWMvalue$701010000010111111SetUptheIENDUpwardUPWARDBits[4:0]containtheIENDvalue$701100000011011111SetUptheIENDDownwardDWNWRDBits[4:0]containtheIENDvalue$701110000111111111SetUptheGradualDimmingtimeandrunthesequenceGRADBits[4:0]containtheTIMEvalue3.LED驱动芯片NCP5623电路模块NCP5623为安森美公司生产的一种LED驱动芯片,上图LED为共阳极接法,还需接100Ω左右限流电阻,SDA为数据端,接单片机P2.0,SCL为时钟端,接单片机P2.1.五.总电路图根据各模块连接总的电路图如下:六.软件部分I2C协议总流程图1.I2C起始与终止函数SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。I2C协议I2C起始函数I2C终止函数字节数据发送函数响应函数写控制字响应函数起始函数voidI2C_Start(void)//定义I2C起始函数{SDA=1;//SCL为高电平时,SDA由高电平变为低电平时为开始delay();SCL=1;delay();SDA=0;delay();SCL=0;delay();}终止函数voidI2C_STOP(void)//定义I2C终止函数{SDA=0;delay();//SCL为...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?