这个问题以为很简单,但最后花很多功夫才能完成,所以总结一下分享给大家。
解决思路
UTF-8->Unicode->GB2312->点阵编码,其中Unicode转GB2312要转码表,GB2312转点阵编码要HZK16字库。
代码:https://github.com/lyaohe/UTF-8toGB2312
解决过程
经多番研究,OLED显示屏显示中文最简单还是用HZK16字库转点阵编码,这里有一个算法:
《UCDOS下点阵字库在嵌入式OLED应用中的移植》
http://www.cqvip.com/read/read.aspx?id=25100512#
想要完整的算法,自行搜索。
当时使用这个算法,在Linux下测试,不对,在Windows测试,转换编码正确。
那就奇怪了,经具体了解发现HZK