2 系统软件设计
中国照明网技术论文·LED照明2.1 点亮点线圆的设计及其算法和公式
中国照明网技术论文·LED照明点设计主要应用直角坐标到圆坐标转换,通过坐标转换点亮任何位置的灯。线设计源于点设计,在点设计基础上采用Bresenham直线演算法画出所需的直线、斜线、曲线。在线设计基础上衍生出矩形绘画、绘图、填充等功能。
中国照明网技术论文·LED照明程序初始化完了,接着定义由直角坐标转换到极坐标,在程序中将弧度转到角度,在转换的时候考虑到会有负数数据的输入,加入360+0.5均是为了优化程序,防止出现误差。程序中距离r=x2+y2,角度a=180×arctanxyπ+360+0.5。
中国照明网技术论文·LED照明直角坐标转换完后,可以设置点的亮灭,接着用Bresenham直线演算法画出直线。
中国照明网技术论文·LED照明程序的整体流程如图2所示。系统上电后,首先读取系统的初始状态,设置ARM和TLC5947的工作状态,开启无线通信;然后等待旋转屏幕稳定,初始化菜单,等待输入指令;利用Qtouch控制传输命令到STM32F103,执行指令(用户交互过程);执行用户命令操作。
中国照明网技术论文·LED照明2.2 TLC5947芯片时序
中国照明网技术论文·LED照明TLC5947时序如图3所示,芯片的主要控制引脚有4个[10]:数据输入端SIN、外部时钟输入端SCLK、灰度寄存器控制端XLAT以及输出控制端BLANK.通过数据输入端口将所需要的灰度数据送到SIN端,然后通过控制时钟信号SCLK将数据写入到芯片内部的灰度数据移位寄存器中,之后通过控制灰度寄存器的控制端XLAT的高低电平变换实现芯片TLC5947内部灰度数据的更新。当XLAT引脚的电平发生变化而产生一个上升沿时, TLC5947内部灰度数据将被更新一次,即图3中Grayscale LatchData 中被重新写入数据。芯片的数据输出分两部分,一部分是串行数据输出和恒流源数据输出。串行数据输出是接在灰度数据移位寄存器之后,当寄存器的数据满256位时,可以根据SCLK时钟的变化通过一个DQ触发器将数据从串行数据端口SOUT端输出,这一端口主要是芯片级联时后一级芯片的数据输入;而恒流源数据输出OUT0~OUT23则是通过输出控制端口BLANK和芯片内部自带时钟Oscillator Clock来共同控制,其中输出电流大小则可以通过芯片的VREF引脚的外接到地电阻来控制,根据外接LED的自身限流参数,保证LED正常工作。本系统中采用的是3.2 kΩ电阻,所以该芯片的控制主要是4个引脚端口的控制,操作上比较简单方便。
中国照明网技术论文·LED照明 中国照明网技术论文·LED照明图2 程序的整体流程
中国照明网技术论文·LED照明3 结论
中国照明网技术论文·LED照明实验中,通过主控制器STM32F103对两片级联的TLC5947芯片进行了测试,外围电路连接的是三色LED灯,外界供电电压为5 V稳压源,转换之后系统的供电电压为3.3 V稳压源。当写入相对应的程序控制字时,三色LED灯能够正确显示,单一色、混色两种工作模式均成功得以实现。而且LED灯之间的变化时间可以通过程序来控制,只要主控制器的时钟频率合适,变换时间均在人眼识别能力之外,这样就可以通过改变不同的程序控制字来实现全彩LED屏的设计。
中国照明网技术论文·LED照明 中国照明网技术论文·LED照明图3 TLC5947时序图
共2页 1 2 |
新发表论文及文章 |
· 再谈“护眼台灯”
|
最新论文回贴及评论 |
哈哈,给大家分享一个下载统计年鉴的好地方,夏泽网 nianjian.xiaze.com,里面的年鉴非常齐全,现在2019年的最新年鉴还可以免…
中照网网友 在2021-1-11 9:45:39发表
可否提供诸玉华的联系方式?
中照网网友 在2018-6-6 17:54:50发表
shiyong
中照网网友 在2016-12-29 17:53:27发表
伟然科技照明
中照网网友 在2016-6-2 11:44:56发表
这个确实是事实,可是国家一边为了照顾经济发展,一边又没有投入资金对企业进行辅导,确实让企业也茫然。是无奈还是放任,这需…
中照网网友 在2016-5-19 11:36:38发表
|
欢迎各位网友踊跃投稿! |
|
|