shamiao的KL25开源项目进行中.... (12864单色视频播放)
先谢阿莫网站批准。这次将一个旧制作移植到飞思卡尔平台。原制作请见: http://www.bilibili.com/video/av373429/ 。这是一个12864液晶屏幕的黑白动画播放实验,原来实现的平台是Raspberry Pi。
本次的制作目标是将这个程序原样迁移到规定的飞思卡尔平台。
原项目详细信息
原来用于Raspberry Pi平台的程序如下。(授权方式:公共领域/Public Domain,放弃版权要求)
实验器件:12864小尺寸LCD模块,主控芯片ST7565
硬件连接:VCC - P1.1,GND - P1.6,SDA - P1.19,SCK - P1.23,CS - P1.24,A0 - P1.11,RST - P1.15
另外,原先在Raspberry Pi上曾经用过另一款OLED模块去重复这个实验:http://www.bilibili.com/video/av400439/
所以本次制作,也要同时把OLED模块的效果做出来。
无其他外围元件,硬件图不单独绘制。
迁移到飞思卡尔后,硬件连接基本上改为:SDA/SCK/CS连接到单片机的SPI,A0/RST挂到任何其他GPIO上。
总费用:液晶模块淘宝标价15~30元不等。我就直接用现成的了
计划完成时间:不会太久,15年1月份完成
本帖最后由 shamiao 于 2015-2-13 14:34 编辑
新年狠狠高烧两次,耽搁了不少时间,总算是在节前完成了。
视频地址:http://v.youku.com/v_show/id_XODkyNDk4Njky.html
http://player.youku.com/player.php/sid/XODkyNDk4Njky/v.swf
按照开源项目的习惯,本项目托管在Coding.net上。
项目主页:https://coding.net/u/shamiao/p/KL25_LCM12864_ST7565_Movie (可以直接在线查看所有代码、下载所有代码的zip包、直接fork到自己的账号下随意修改等)
电路连接关系、许可证等请查看项目主页,或参阅项目代码中的README.md(纯文本)文件。
git用户请直接克隆这个仓库:git://coding.net/shamiao/KL25_LCM12864_ST7565_Movie.git
论坛也上传一份1.0.0版本(即仓库中1.0.0标签)的代码作为存档(仅为存档,不推荐使用,建议总是从在线代码仓库获得最新代码)。
使用苏州大学提供的部分项目框架文件,自写本项目内的GPIO、SPI、SysTick中间层,与SDHC存储卡、液晶模块的驱动组件。颇有实现的比较草率之处,请多海涵。其实把代码放在Coding上也是为了以后能够慢慢完善。
个人感觉比较得意的地方在于GPIO驱动部分,这部分使用了Arduino wiring模块的函数调用风格,方便其他硬件的开发者。代码示例:
pinMode(PORTB, 18, OUTPUT); // 原Arduino的第一个参数(针脚号码)全部变成两个(端口号+针脚号)
digitalWrite(PORTB, 18, HIGH); // Arduino中的常用宏均保留
pinMux(PORTB, 18, MUX1_GPIO); // 新增函数,控制KL25的引脚复用(在配书ISBN9787302333661中直接参阅附录A) 看起来不错,我也准备KL25的SPI方向 方案不错 ,期待楼主快点完成 看着不错,预祝早日成功 {:lol:}码一个···期待成功 12864液晶屏幕的黑白动画播放实验,这个不错! 响应号召,,, ST7565一秒能刷几帧?如果用RA8835之类的应该会快很多 这次开源项目效率真高 ijlc1314 发表于 2014-12-30 23:13
ST7565一秒能刷几帧?如果用RA8835之类的应该会快很多
考虑屏幕残影太厉害,响应时间上不去,所以这个问题意义不大了
原项目是按照24fps做的 期待楼住快点完成 shamiao 发表于 2014-12-30 23:57
考虑屏幕残影太厉害,响应时间上不去,所以这个问题意义不大了
原项目是按照24fps做的 ...
单色屏响应没那么快,楼主准备用并行还是串行的驱动方式呢? 不错 加油 期待中 确实,应该考虑考虑SPI,I2C挂个什么的 ijlc1314 发表于 2014-12-31 08:20
单色屏响应没那么快,楼主准备用并行还是串行的驱动方式呢?
看楼主的介绍 如果仅仅是简单移植的话楼主采用串行的方式驱动LCD反应速度会慢一些 方案不错 ,期待楼主快点完成。
只要对KL25的SPI了解一些就可以完成了。。 这次项目 很有意义 双赢 不错的策划 期待楼主的大作 单色还能放视频?有灰度? 不知道Raspberry Pi 与KL25 从开发角度讲有那些不同。 jinyi7016 发表于 2015-1-5 15:19
单色还能放视频?有灰度?
很遗憾,使用的这个屏没有灰度,所以特意使用著名的黑白单色视频 bad apple (几乎没有灰度部分)
如果能弄到gameboy那类的几级灰度的屏幕,确实值得尝试一下 貌似当年文曲星也是没有灰度的,结果有人用汇编模拟出了16级灰度放图片,效果还不错,不知道在这块屏上能不能模拟出来 正在学习液晶屏驱动、显示部分程序,期待完成 子鱼 发表于 2014-12-31 15:00
看楼主的介绍 如果仅仅是简单移植的话楼主采用串行的方式驱动LCD反应速度会慢一些 ...
对单色屏来说,串行不见得就慢。在RAM足够而且有DMA的时候也很方便 期待楼主大作,学习啊,学习才是硬道理。 视频是直接传输给25处理,不经别的芯片? Ray______ 发表于 2015-1-12 00:56
视频是直接传输给25处理,不经别的芯片?
提方案的时候疏忽了,不同于Raspberry Pi,KL25的存储空间肯定装不下视频文件…
引入个SD卡试试看 shamiao 发表于 2015-1-12 02:28
提方案的时候疏忽了,不同于Raspberry Pi,KL25的存储空间肯定装不下视频文件…
引入个SD卡试试看 ...
有意思啊,以前就看过别人在oled放视频 顶,视频用什么格式?avi能解不?rmvb? astankvai 发表于 2015-1-12 08:06
顶,视频用什么格式?avi能解不?rmvb?
应该是位图序列吧,K25的运算能力解MJPEG的动画也比较累吧 看上去好棒的说 用的屏是什么控制器? shamiao 发表于 2015-1-12 02:28
提方案的时候疏忽了,不同于Raspberry Pi,KL25的存储空间肯定装不下视频文件…
引入个SD卡试试看 ...
有用avr做类似的就是接sd卡,spi就可以读sd卡了。 先顶一个,等等看视频 unknown 发表于 2015-1-5 21:16
貌似当年文曲星也是没有灰度的,结果有人用汇编模拟出了16级灰度放图片,效果还不错,不知道在这块屏上能不 ...
坛子里面以前有人用12864黑白屏播放过(模拟出来的)灰度视频 tim 发表于 2015-2-13 00:25
坛子里面以前有人用12864黑白屏播放过(模拟出来的)灰度视频
这次用的12864 COG LCD模块残影非常严重,看视频就清楚了,就不拿来做这种试验了……
我买了个12864 OLED,还没到货,也许会用那个试一试。 shamiao 发表于 2015-2-13 11:38
这次用的12864 COG LCD模块残影非常严重,看视频就清楚了,就不拿来做这种试验了……
我买了个12864 OLE ...
嗯哪,LCD反应慢,OLED也许能好一些 armok 发表于 2014-12-31 19:13
你的开发套件已经寄出,申通:768996913987
支付运费我们已经支付,广东省内1-2天到,省外3-5天到。
视频及项目代码已经放出,请网站进行审核,谢谢 /ok 灰度视频? sunday640 发表于 2015-2-13 18:54
灰度视频?
纯黑白视频
灰度视频需要采购专门的4级灰度液晶模块才行 本帖最后由 shamiao 于 2015-2-15 18:33 编辑
补一个CPU使用率实测数据。大概是20%左右。这还是LCD的驱动代码写的很粗糙,延时加的较多的情况下。(LCD资料不全,没有拿到时序图中准确的各种时间数据,因此保证可靠只能尽量放宽)
不错不错,已经完成了 恭喜了 年前完成
页:
[1]