打印
[其它应用]

如何通过C语言来写LCD RAM寄存器啊?

[复制链接]
1164|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
冰清玉洁|  楼主 | 2014-7-1 20:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何通过C语言来写LCD RAM寄存器啊?
沙发
冰清玉洁|  楼主 | 2014-7-1 21:01 | 只看该作者
还有,对应的LCD RAM写1,是不是就意味着,SEG为高,相应的COM为低?

使用特权

评论回复
板凳
wenfen| | 2014-7-1 21:02 | 只看该作者
LCD RAM属于外部RAM,需要使用xdata关键词

使用特权

评论回复
地板
冰清玉洁|  楼主 | 2014-7-1 21:06 | 只看该作者
不是很明白。。。

使用特权

评论回复
5
wenfen| | 2014-7-1 21:07 | 只看该作者




用指针去操作就OK了

使用特权

评论回复
6
zhuhuis| | 2014-7-1 21:11 | 只看该作者
unsigned int xdata dis_ram[] at 0x1e0
用AT这个关键字就不是把数据放在你led显存的RAM上了,以后写数据元素就是向0x1e0以上的地址写数据了

使用特权

评论回复
7
tian111| | 2014-7-1 21:12 | 只看该作者
也可以用指针去操作,也是让数组放在哪个地址上

unsigned int xdata dis_ram[] =  (*unsigned int)0x1e0;

使用特权

评论回复
8
tian111| | 2014-7-1 21:14 | 只看该作者
应该这样写,没有调试,如果不对,帮忙修改下哈!

使用特权

评论回复
9
宋倩2010| | 2014-7-1 21:15 | 只看该作者
void LCD_Write( unsigned  int address, unsigned char dat)
{
      unsigned char *ptr;
      ptr = (unsigned char *)(address+0x01e0);
     *ptr = dat;
}

你试一试吧!
LCD RAM每一位都是COM与SEG的交叉点,具体研究一下DATASHEET。
写1的话,意味着交叉点点亮!

使用特权

评论回复
10
冰清玉洁|  楼主 | 2014-7-1 21:18 | 只看该作者
哦,我试试,多谢大家

使用特权

评论回复
11
q626183467| | 2014-7-16 15:01 | 只看该作者
代理中颖SH88FXX/SH89FXX,欢迎咨询产品相关信息(广州迪圣通信设备有限公司),tel:13422116323,李工;QQ:626183467

使用特权

评论回复
12
倔强的小蜗牛| | 2016-1-21 14:22 | 只看该作者
我还不是很明白   求指导

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

307

主题

3250

帖子

5

粉丝