搜索
bottom↓
回复: 4

关于51驱动TFT程序移植到AVR上碰到的问题

[复制链接]

出0入0汤圆

发表于 2010-8-13 11:33:43 | 显示全部楼层 |阅读模式
请教马老师及大家:
我买了2个液晶屏,一个跟买你的一样是160x128的AUO屏,另一个也是个小屏.卖家给我了51的原代码(22M晶振).然后我用51都成功点亮.我把代码移植到atmega128L 8M晶振上(改了引脚和底层),发现:

1. AUO屏能显示图像,但图像在屏上的位置不对,这说明初始化成功,但写数据有问题

2.另外一个屏只是在不停的闪(程序是个死循环,不停重复现实图像),但无图像显示

3. 对于AUO屏,我每次改了屏初始化里的延时,显示不正常且每次显示都不一样

4.我把一个atmega88的ok的程序里初始化和延时部分移植过去也不行(atmega88用的是1M内部晶振)

5.另外一个屏改了屏初始化里的延时,始终不成功.

6.我把atmega88代码和卖家给我了51的原代码比较了下,发现屏初始化部分基本一致,除了延时和reset位置)

大家以前碰到过这类问题吗,问题的原因是什么呢?是因为晶振不一样, 数据写进液晶后的延时不够?


附示意图 (原文件名:AUO.JPG)

出0入0汤圆

 楼主| 发表于 2010-8-13 13:05:22 | 显示全部楼层
下面摘自马老师的一段话:
AVR采用RISC架构的,一个指令周期就是一个系统时钟的周期,指令长度为16位和32位。大部分的指令执行需要一个指令周期,个别的指令执行需要2个指令周期。

标准51架构为CISC,一个指令周期为12个系统时钟周期,指令长度有8/16/24/32位不同。有的指令执行需要一个指令周期,有的需要2个,还有需要3个的(可能有出入)。而现在很多的改进型、兼容型51芯片就不同了,百花齐放,一个指令周期可能为1/2/4/6系统时钟周期,需要看所使用芯片的手册。比如STC的51就可以在1和12个之间选择。

大家看看会不会是这个原因?

出0入0汤圆

发表于 2010-8-23 16:51:42 | 显示全部楼层
我可以提供相关移植程序实例函数 可参考下 Q我吧 85082559

出0入0汤圆

发表于 2011-10-26 10:53:53 | 显示全部楼层
我的也是,不过我这个直接什么都不显示了,不知道为什么

出0入0汤圆

发表于 2011-10-26 14:19:29 | 显示全部楼层
效果会不会很差
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 18:00

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表