首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于嵌入式系统的LCD汉字显示(2)

基于嵌入式系统的LCD汉字显示(2)

1) 设置SPI;
2) 设置TIMER1(可以启动TIMER);
3) 设扫描行指针n=0;
4) 设DMA传输数据格式(8位/次,400个数据);
5) 启动DMA。
以上过程在完成一行空扫描后, 进入连续的 LCD 扫描过程。
4.3 程序举例
以下列出了16x16方阵汉字显示的部分程序代码:
            wm = *(s + i + 1);  //计算位码
            ISN = qm<<8;               
ISN += wm;          //机内码
            ii=0;               //先定位在第一个汉字
            while((ISN!=DDSHZTable[ii][0]) && (DDSHZTable[ii][0] !=0xffff) )
                    ii++;       //寻找与ISN相同的机内码,即寻找要显示的汉字
            for( j = 0; j < 16; j ++ )
                hzbuf[j] = DDSHZTable[ii][j+1];//取字模
               for( y = 0; y < 16; y++ ){
                for( x = 0; x < 16; x++,Hk++ ){
                        Hk = Hk % 16;
                   if( hzbuf[y]  & (0x8000 >> Hk) ){
//确定y行x列是否有笔画
                        xx = x0 + x + ChiWords * 16;
                        LCDRam[y+y0][xx]  = ForeColor;//显示像素
                    }
               }
           }
显示英文字符的原理及程序代码与汉字的类似,就不再赘述。
5 结束语
建立非完整汉字库最大的特点是可以按照现实需要柔性地显示汉字、软件编程容易、可混合显示汉字和英文字符。作为人机交互界面的重要部分它可被广泛应用于工业控制、医疗、科研以及教学等领域。
继承事业,薪火相传
返回列表