keil-STM32开发-俄语显示

系列文章目录

keil-STM32开发-俄语
—增加俄语显示


前言

—最近正好要将一个项目的语言增加俄语功能,正好拿平台做个资源整合以及做记录功能,发现自己写的程序过了一段时间没看过 真的有种我当初是咋想的感觉,想明白后得加个注释进去。

一、俄文的编码

俄文的编码有西里尔(DOS),西里尔(ISO),西里尔(window-1251),西里尔(KOI8-U)

Unicode范围: 0400-052F (西里尔文)
locale编码: Windows, ISO, KOI8-U, KOI8-R

1.Windows
HTML charset: windows-1251
RTF charset: 204
编码方式: 1 byte语系

2.ISO
HTML charset: iso-8859-5
RTF charset: 无
编码方式: 1 byte语系

3.KOI8-U
HTML charset: koi8-u
RTF charset: 无
编码方式: 1 byte语系

4.KOI8-R
HTML charset: koi8-r
RTF charset: 无
编码方式: 1 byte语系

因为本人keil开发使用的语言方式是GBK2312,为了方便我个人开发方便,使用的是GBK2312的俄文编码:大写 a7a1-a7c1 小写:a7d1-d7f1
当然上面的编码方式都是可以使用的 这里推荐使用易木雨软件工作室制作的点阵字库生成器

二、字库的使用

1.俄文取模

俄文33个字母,大小写如下

АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ

абвгдеёжзийклмнопрстуфхцчшщъыьэюя

针对俄文来说大小其实跟英语差不了太多,但是因为字库是双字节的原因,跟中文的代码写法很类似,但是显示字形差强人意,主要还是俄文的翻译显示普遍比英文长很多 再加上字库字形的原因在显示开发上更改会增加很大的难度。
通过互联网这个大平台寻找到了相关资源,当然也可以用取模软件自己画,我比较相信我的画画天赋,选择相信了互联网,感谢大佬的分享,分享链接: https://download.csdn.net/download/yjdnjgg/10781259 逐行式 高位在前

2.代码编写

因为数据量比较少,可以直接放在FLASH中,查找方式跟keil的语言有关,例如你是unicode则判断当前字是否在0400-052F之间,这里有一点不同 因为俄文跟中文一样占用2个字节所以要进行双字节的判断:
优先级最好设置英文优先级最高来区分,这样很多标点字符可以利用英文来显示

/* unicode 的编码查找 */
font_16 = (u16)(*Str_p*0x100+*(Str_p+1)) ;
if( font_16 >=0x0400 && font_16<=0x052F ){} //在当前范围时则为俄文
/* GBK2312 的编码查找 */
font_16 = (u16)(*Str_p*0x100+*(Str_p+1)) ;
if( font_16 >=0xa7a1 && font_16<=0xa7f1 ){} //在当前范围时则为俄文

总结

以上就是今天要讲的内容,本文仅仅简单介绍了关于我个人开发中知识总结相关代码就不献丑了,可以参考正点原子写的显示程序,基本差不多。

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Keil-STM32F1xx芯片包是Keil公司为STM32F1xx系列微控制器提供的软件集成开发环境(IDE)的扩展组件。该芯片包包含了STM32F1xx系列微控制器的支持文件,可以帮助开发者更加方便地进行嵌入式软件开发Keil-STM32F1xx芯片包具有以下几个主要功能: 1. 提供了针对STM32F1xx系列微控制器的初始化和驱动程序库。这些库包含了常用的外设驱动程序,如GPIO、串口、定时器等,开发者可以直接调用这些库函数来简化软件开发过程。 2. 集成了STM32F1xx系列微控制器的编译工具链。开发者可以在Keil环境中直接进行代码编写、编译和调试,无需另外安装和配置工具链,简化了开发环境的搭建流程。 3. 提供了丰富的调试功能。Keil-STM32F1xx芯片包支持单步调试、断点设置、变量监视等调试功能,可以帮助开发者快速定位程序中的问题并进行调试和修复。 4. 针对不同的STM32F1xx系列微控制器提供了相应的工程模板。开发者可以根据自己的需求选择合适的工程模板开始开发,省去了从零开始建立工程的麻烦。 总而言之,Keil-STM32F1xx芯片包为开发者提供了一套完整的软件开发工具集,使得在STM32F1xx系列微控制器上进行嵌入式软件开发变得更加高效和便捷。无论是初学者还是有经验的开发者都可以通过该芯片包实现快速、稳定的STM32F1xx系列微控制器应用程序开发

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

远命

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值