arm微控制器lpc210x的lcd接口技术(编辑修改稿)内容摘要:

也可以用串行移位进行传输,具体代码如下: unsigned char i。 for(i=0。 i8。 i++){ //依次发送 8 位数据 if((dataamp。 0x80)!=0) //最高位为 1,对应口线置 1 IOSET=IO_TURN。 Else IOCLR=IO_TURN。 //否则置 0 data=1。 //移到下一数据线 } IO_TURN=0x00000080。 //8 位数据传输完毕后,仍然将 设 为起始线 } 下面以左半屏来说明如何在屏幕上任意显示 1616 点阵汉字。 传送指令子程序如下: void wcodel(unsigned char code){ //送指令 IOSET=LCD_CS1。 //开左屏 IOCLR=LCD_CS2。 //关右屏 IOCLR=LCD_RW。 //写选择 IOCLR=LCD_DI。 //指令选择 SendData(code)。 //依次将指令代码传到数据线上 IOSET=LCD_E。 //模拟使能 E 下降沿 IOCLR=LCD_E。 } 同理,只要把 IOCLR=LCD_DI 改为 IOSET=LCD_DI 便成传送数据了。 为便于区分,可将函数名改为 wdata1( data)。 显示左屏汉字子程序如下: void hzleft(unsigned char page,unsigned charrow,unsigned char number){ //形参分别为页、列、汉字序号 unsigned char i,j。 wcode1(0xc0)。 //设置 12864 从第 1 行显示 wcode1(0x3f)。 //开显示器 for(j=page。 jpage+2。 j++){ wcode1(row)。 //设置显示列 wcode1(0xb8+j)。 //设置显示页 for(i=16*(jpage)。 i16*(j+1page)。 i++)//依次取字模传输 wdata1(hangzi[32*a+i])。 } } 每个汉字字模由 32 个字节组成,前 16 个字节显示汉字上半部分,后 16 个字节显示汉字下半部分,构成完整的 1616 点阵。 其中 number 代表存在 Flash 中的汉字排名序列号,只要把页、列、汉字序号实参值传到汉字显示子程序中进行调用即可显示汉字了。 参考上面程序便能很方便地写出字母、数字的显 示子程序。 程序中使用寄存器名称时要先在头文件中将其映射到对应地址,如对 IOS。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。