找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6220|回复: 0
打印 上一主题 下一主题
收起左侧

在Arduino里输出中文汉字

[复制链接]
跳转到指定楼层
楼主
ID:124139 发表于 2016-5-30 23:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
制作一个电压表示例:第一步:建立一个新程序:
         打开Arduino的开发环境(关于板子的选择和串口的选择,略),选择:文件->新建

在特定的目录建立一个存放源程序的目录,我建立的是E:\arduino 的目录,此时选择:文件->另存为:
选择E:\arduino\   并把文件名起名为udemo
此步的目的是为下一步建立中文字符串文件做准备;
保存之后:
目录就建立好了,
第二步:建立中文字符串文件
         使用记事本(或其他类似文本编辑器),填写如下C代码:

const char hz[][32]={

"当前电压:",   //0-

"Arduino 电压表演示程序", //1

"使用串口液晶屏直接输出",         //2

};

使用记事本的“文件”->“另存为:”
选择E:\arduino\udemo\ 目录,并将文件起名为hz.c,注意编码一定要选择“ANSI”,千万不要选择UTF8之类;
点击保存,文件存好;
备注:
         constchar hz[][32] 实际上是声明了一个字符串数组,每个字符串不能超过32字节(GB2312编码的汉字16个),如果你要显示的汉字特别长,请修改32这个数字;
         此种方法实际上是将汉字全部提出到一个数组中,应用此类方式很容易实现国际版程序,即切换数组就可以实现不同语种的显示;
【注意】:建立这个外挂文件的目的就是为了解决使用IDE编程环境无法编辑GB2312内码汉字的问题,请勿使用IDE编程环境打开编辑此文件,这样操作会将此文件改写为UTF8内码的文件!
第三步:编辑主程序
         在开发环境中输入以下代码:

#include"hz.c"

void setup() {

   Serial.begin(9600);

   Serial.println(hz[1]);

   Serial.println(hz[2]);

}


void loop()

{

   int sensorValue = analogRead(A0);

   float vol = sensorValue * 2.5 / 1024;

   Serial.print(hz[0]); Serial.print(vol, 2);  Serial.println("V");

   delay(150);

}

点击“上传”,之后打开串口,输出就是中文内容。

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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