上位机通过串口发汉字和数字混合排列的数据到单片机

比如上位机发送“你1我2他3”,单片机接收并在点阵上按顺序显示... 比如上位机发送“你1我2他3”,单片机接收并在点阵上按顺序显示 展开
 我来答
11kxmx
推荐于2016-04-15 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.2万
采纳率:70%
帮助的人:2514万
展开全部
只要上位机能发过来保存于数组中
以下是我从STM32教程中摘抄的子程序:
const uint8_t *pstr 是指针,指向存储字符串的数组
如果读入的第一个数据小于=126,则为英文字符
如果读入的第一个数据大于126,则为汉字,汉字是两个字符
/*
* 中英文混合显示,不能显示中文标点符号
* 中文大小:16*16
* 英文大小:12*6
*/
void LCD_DispEnCh(uint16_t x, uint16_t y, const uint8_t *pstr, uint16_t color)
{
while(*pstr != '\0')
{
if(*pstr <= 126) /* 字符串 */
{
if( x > (COLUMN-STR_WIDTH) )//COLUMN是宽度方向相素数
{
x = 0;
y += STR_HEIGHT;
}
if( y > (PAGE-STR_HEIGHT) )
{
x = 0;
y = 0;
}
LCD_DispChar(x, y, *pstr, color);
x += STR_WIDTH;
pstr++;
}
else /* 汉字 */
{
if( x > (COLUMN-CH_WIDTH) )
{
x = 0;
y += CH_HEIGHT;
}
if( y > (PAGE-CH_HEIGHT) )
{
x = 0;
y = 0;
}
LCD_DispCH(x, y, pstr, color);
pstr +=2;
x += CH_WIDTH;
}
}
}
查晓筠0i5
2015-04-02 · TA获得超过2752个赞
知道大有可为答主
回答量:2.1万
采纳率:1%
帮助的人:4973万
展开全部
需要给你完成一份吗
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式