怎么实现自动识别串口接收的数据是GB2312还是unicode,BIG5

tao20002008 2018-06-13 02:50:16

通过程序怎么实现自动识别串口接收的数据是GB2312还是unicode,BIG5的编码格式?
本人通过识别到的编码格式,进行LCD显示。

就是让自己的设备支持多种编码格式;支持GB2312,UNICODE,BIG5等;
...全文
816 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2018-06-14
  • 打赏
  • 举报
回复
有希望了。重点在编码范围上。 GB2312 编码范围:A1A1-FEFE。(第二字节均起始于 A0) A1A0-A3FE:标点符号、序号、数字和西文字母。 A4A0-A8E9:日文假名、俄文字母、拼音字母和注音字母。 A9A0-A9EF:制表符。 B0A0-F7FE:汉字。 BIG5 编码范围: A140-A3BF 标点符号、希腊字母及特殊符号。 A440-C67E 常用汉字。 C6A1-F9DC 其它汉字。 F9DD-F9FE 制表符。 Unicode 汉字编码范围: 3000-303F:中日韩标点符号。 4E00-9FBF:CJK 统一表意符号(汉字) 从编码范围看,Unicode 很容易区分。 GB2312 与 Big5 范围有重叠。但还是可以利用其中非重叠部分区分。也可以用常出现的标点符号来识别规范的文本。 Big5 中第二字节可小于 A0,GB2312 不可。 例如,Big5 中 “,” 的编码是 0xA141,“。” 的编码是 0xA143,它们不在 GB2312 编码范围内。 在 GB2312 中 “。” 的编码是 0xA1A3。
of123 2018-06-13
  • 打赏
  • 举报
回复
要么让发送方先发固定内容供识别,要么就用人工智能。 当然,还有一种方法,就是建立“乱码”字库。把一些本来是常用语的字符识别成基本不用的生僻字的情况识别出来。当然,如果信息量小,命中率就不高了。 总之,人识别“乱码”很容易,机器识别很难。计算机唯一的优势是快,它可以把所有可能都试一遍,然后判断是否合理。

27,373

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧