OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10352|回复: 3

LCD显示屏显示字符的时候,在调用显示字符的函数时,显示函数中的字符是如何转换成相应的ASCII码或UNICODE码的???

[复制链接]

54

主题

248

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
484
金钱
484
注册时间
2012-3-23
在线时间
0 小时
发表于 2012-8-16 23:15:54 | 显示全部楼层 |阅读模式
LCD显示屏显示汉字的时候,在调用显示字符的函数时,而在显示函数中却是把字符(即str字符串)当成已经有相应的ASCII码或UNICODE码处理了,请问各位输入的字符是如何转成ASCII码或者UNICODE码的???
就是下面这个显示汉字的函数。
void Show_Str(u8 x,u8 y,u8*str,u8 size,u8 mode) 
{                  
    u8 bHz=0;     //字符或者中文                     
     
    while(*str!=0)//数据未结束 
    {  
        if(!bHz) 
        { 
          if(*str>0x80)bHz=1;// 中文  
          else              //字符 
          {       
                if(x>(LCD_W-size/2))// 换行 
    {        
     y+=size; 
     x=0;     
    }            
            if(y>(LCD_H-size))break;//越界返回       
            if(*str==13)// 换行符号 
            {          
                y+=size; 
     x=0; 
                str++;  
            }   
            else LCD_ShowChar(x,y,*str,size,mode);//有效部分写入  
    str++;  
            x+=size/2; //字符,为全字的一半  
          } 
        }else// 中文  
        {      
            bHz=0;// 有汉字库     
            if(x>(LCD_W-size))// 换行 
   {      
    y+=size; 
    x=0;     
   } 
          if(y>(LCD_H-size))break;//越界返回              
          Show_Font(x,y,str,size,mode); //显示这个汉字, 空心显示  
          str+=2;  
          x+=size;//下一个汉字偏移       
        }              
    }    
从心所欲
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-8-17 00:17:20 | 显示全部楼层
这个函数的输入字符串,是GBK码+ASCII的,不是unicode码
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

54

主题

248

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
484
金钱
484
注册时间
2012-3-23
在线时间
0 小时
 楼主| 发表于 2012-8-17 11:11:56 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
那输入的汉字,GBK有两个字节,是高字节在前还是低字节在前???
从心所欲
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-8-17 11:47:24 | 显示全部楼层
这个自己写个代码验证下就知道了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-21 05:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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