我用的pic16f877a,如何让lcd12864以十进制显示寄存器里的数字啊

2019-07-15 09:42发布

用的汇编语言但又不是很懂
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
愚塘霸主
1楼-- · 2019-07-15 16:53
不管是单片机自带的液晶驱动还是液晶驱动芯片,一般你要知道是几com,然后知道每个液晶的pin和单片机连的pin。
资料上的lcdram会这样描述,lcdram0 的8个bit位会这样对应,bit7 - com8,bit6 - com7。。。。bit0 - com0。说白了你单片机seg0使用到的地址就是lcdram0,这些寄存器都是有说法的,需要看资料。然后看液晶真值表,需要什么显什么。数字的话一般这样处理,数字有7段,真值表会告诉a段到g段在每个字节的位置,通过不同的bit位就可以组合成数字。所谓的查表,就是把这些bit位组成的字节放进一个数组里。4就用数组arr[4]里的,然后在把这些arr里的字节放到lcdram里面,具体就要看pin和pin是怎么连的。
愚塘霸主
2楼-- · 2019-07-15 18:35
你可以看下资料描述,一般就是在液晶缓存里写数据。比如你的lbdram0是pin0对应的buff,一般bit7 - com8。。。bit0-com4.然后你看液晶真值表,会有不同的显示段。数字一般由7段组成,a段到g段,每个段都有自己的位置。你可以用一个字节定义a-g段,举个例子,假如a-0x01。。。g-0x40,通过不同的段的组合,数字就出来了。所谓查找表就是查找这些段组合出来的字节。假如1由a和b组成,就是a|b,你的数组表就是存放了从0到z。然后再将这些值写入到液晶buff里,这里需要注意lcdram里用到的是低半字节,一般4com数字由两个lcdram组成,就可以lcdram[n]=xx>4,lcdram[n+1]=xx&0x0f。总之就是要会看液晶真值表和液晶驱动资料。
wufa1986
3楼-- · 2019-07-16 00:11
 精彩回答 2  元偷偷看……

一周热门 更多>