牧夫天文网

 找回密码
 加入牧夫(请注明天文爱好者,否则无法通过审核)

QQ登录

只需一步,快速开始

[自制DIY] OnStep手柄汉化方法

[复制链接]
jia2shuo 发表于 2020-3-7 01:26 | 显示全部楼层 |阅读模式 来自: 河南省安阳市 联通

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?加入牧夫(请注明天文爱好者,否则无法通过审核)

x
本帖最后由 jia2shuo 于 2020-3-7 01:37 编辑

OnStep是一个开源的赤道仪控制系统,其功能很强大,仔细研究会有很多收获。该系统支持手机通过wifi连接来控制赤道仪,也支持通过手柄控制。只是手柄操作界面是英文,对部分英文不太好的可能有点不适应(实际也就是一些常用的词条,)经过一段时间摸索,初步把手柄汉化成功,有部分词条翻译拿不准,所以没有动,显示仍为英文。还有部分词条即使翻译了也无法显示中文,可能是程序的问题,抽时间再研究。今天把汉化的大致过程和方法分享下。

主要分为几个步骤:

1.      中文字库的制作。

2.      程序语言文件的翻译

3.      修改程序配置和部分程序内容。

下面分别介绍:

一.  中文字库的制作(最复杂的一步)

由于手柄是利用u8g2来驱动OLED显示,而u8g2自带的中文字库里不包含该程序需要的文字,而且u8g2字库里文字字体设置太大,在手柄上显示会出现文字重叠,不太理想。所以自己制作了合适的字库。制作好后覆盖u8g2自带的字库即可。具体方法参考这里:

https://www.arduino.cn/thread-92313-1-1.html

制作好后将制作好的字库覆盖掉u8g2自带的字库就行了。

二.  程序语言文件的翻译

在手柄固件所在的目录

OnStep\addons\St4Serial\SmartHandController)里有个strings_en.h文件,这里就是英文的语言文件,把他复制一个,然后名字改成“strings_cn.h”,用andrino打开它,把里面带双引号的英文翻译成中文,然后保存。

三.  配置程序。

1.      打开arduino,然后打开 config.h,里面有这样几行(新版的程序一般都有,老版的如果没有,你就自己加上)

#define LF_CATALOGS     u8g2_font_6x13_tf   

#define LF_GREEK      u8g2_font_unifont_t_greek

#define LF_STANDARD      u8g2_font_helvR10_tf   

#define LF_LARGE      u8g2_font_helvR12_tf      


#define DISPLAY_LANGUAGE             L_en


第一行不要改,那个是星表的字体,一般就用原字体就行。

第二行也不用改,那是希腊字符的字体

第三行和第四行需要改一下,后面的值改为 u8g2_font_unifont_t_chinese1,(这是我制作的字库字体的名称),你需要根据自己制作的字库名称来灵活改。

最后那一行 你需要把后面的值  改为 L_cn ,表示选择中文



2.      打开Locale.h 在最后加上

#if DISPLAY_LANGUAGE == L_cn

#include "Strings_cn.h"

#endif

这个语句。这个表示 如果你选择了中文语言,他就加载中文语言文件。
打开Locales.h,最后加上
#define L_cn 5
这样一句

3.      修改程序文件

分别打开程序包里的的,利用 搜索-替换 功能,将程序中所有的

u8g2_font_6x13_tf”替换成 LF_CATALOGS”,

u8g2_font_unifont_t_greek 替换成“LF_GREEK

u8g2_font_helvR10_tf”替换成 LF_STANDARD

u8g2_font_helvR12_tf”替换成 LF_LARGE

然后保存。

好了 配置和修改完成,先编译一下,如果能通过,那么就可以向板子上刷了。如果无法通过,你就检查一下看是不是修改程序时哪里语法有错误。一般会提示哪出错了。


OK,就到这里,有什么问题互相交流。

最后附上 我的修改后的程序包和字库文件。
1.PNG
2.PNG
3.PNG
4.PNG

OnStep-release-3.16f.rar

2.53 MB, 下载次数: 278

u8g2_fonts.rar

6.74 MB, 下载次数: 1911

山脚落 发表于 2020-3-7 09:40 | 显示全部楼层 来自: 广西 移动数据上网公共出口
哇!技术强大~ 奉献造福广大同好!
回复 支持 反对

使用道具 举报

fsclub 发表于 2020-3-7 14:30 | 显示全部楼层 来自: 陕西省西安市 电信
这个厉害了!!点赞!
回复 支持 反对

使用道具 举报

鬼星团 发表于 2020-3-7 17:38 | 显示全部楼层 来自: 陕西省西安市 移动
感谢为onstep及开源项目努力的人们
回复 支持 反对

使用道具 举报

xiaoyajian 发表于 2020-3-7 17:47 | 显示全部楼层 来自: 北京市 联通
牛人。感谢了。   
回复 支持 反对

使用道具 举报

iTang 发表于 2020-3-7 18:17 | 显示全部楼层 来自: 广东省广州市 联通
牛,大家一起努力
回复 支持 反对

使用道具 举报

壹二叁 发表于 2020-3-7 18:33 | 显示全部楼层 来自: 江苏省南京市 电信
其实U8G2库内字体自带中文,不需要自己制作字库
使用字体u8g2_font_wqy15_t_gb2312就可以了

点评

自带的字库里面有的没有我们需要的字,屏幕上那些字无法显示出来。而且自带的字体较大,显示不完全,或者重叠。[/backcolor]  详情 回复 发表于 2020-3-8 00:20
回复 支持 反对

使用道具 举报

ycgsxdl 发表于 2020-3-7 19:11 | 显示全部楼层 来自: 江西省九江市 电信
虽然不会弄,还是感谢无私分享,造福同好
回复 支持 反对

使用道具 举报

 楼主| jia2shuo 发表于 2020-3-8 00:20 | 显示全部楼层 来自: 河南省安阳市 联通
壹二叁 发表于 2020-3-7 18:33
其实U8G2库内字体自带中文,不需要自己制作字库
使用字体u8g2_font_wqy15_t_gb2312就可以了 ...

自带的字库里面有的没有我们需要的字,屏幕上那些字无法显示出来。而且自带的字体较大,显示不完全,或者重叠。
回复 支持 反对

使用道具 举报

蝶梦 发表于 2020-3-8 01:18 | 显示全部楼层 来自: 陕西省西安市 西安交通大学教育网
你用的是什么字体?

点评

开始用的文泉驿点阵宋体,后来换成 微软雅黑,效果比那个好点。  详情 回复 发表于 2020-3-8 18:43
回复 支持 反对

使用道具 举报

 楼主| jia2shuo 发表于 2020-3-8 18:43 | 显示全部楼层 来自: 河南省安阳市 联通
蝶梦 发表于 2020-3-8 01:18
你用的是什么字体?

开始用的文泉驿点阵宋体,后来换成 微软雅黑,效果比那个好点。

捕获.PNG

点评

建议用文泉驿微米黑,用FreeType转换成点阵字体。用微软雅黑有版权问题。  详情 回复 发表于 2020-3-8 18:56
回复 支持 反对

使用道具 举报

蝶梦 发表于 2020-3-8 18:56 | 显示全部楼层 来自: 陕西省西安市 西安交通大学教育网
jia2shuo 发表于 2020-3-8 18:43
开始用的文泉驿点阵宋体,后来换成 微软雅黑,效果比那个好点。

建议用文泉驿微米黑,用FreeType转换成点阵字体。用微软雅黑有版权问题。

点评

好的,回来试试。  详情 回复 发表于 2020-3-8 22:26
回复 支持 反对

使用道具 举报

 楼主| jia2shuo 发表于 2020-3-8 22:26 | 显示全部楼层 来自: 河南省安阳市 联通
蝶梦 发表于 2020-3-8 18:56
建议用文泉驿微米黑,用FreeType转换成点阵字体。用微软雅黑有版权问题。
...

好的,回来试试。
回复 支持 反对

使用道具 举报

奈何saber有呆毛 发表于 2020-3-23 15:33 | 显示全部楼层 来自: 山东省 BGP大带宽业务机柜段
3.修改程序文件那里分别打开什么?

点评

直接下载附件里的固件文件就行了,都已经改好了。  详情 回复 发表于 2020-3-23 17:53
回复 支持 反对

使用道具 举报

 楼主| jia2shuo 发表于 2020-3-23 17:53 | 显示全部楼层 来自: 河南省安阳市 联通
奈何saber有呆毛 发表于 2020-3-23 15:33
3.修改程序文件那里分别打开什么?

直接下载附件里的固件文件就行了,都已经改好了。
回复 支持 反对

使用道具 举报

fsclub 发表于 2020-4-11 14:17 | 显示全部楼层 来自: 陕西省西安市 电信
主板程序需要新的硬件库文件吗?

点评

STM32的库需要新的  详情 回复 发表于 2020-4-12 00:28
回复 支持 反对

使用道具 举报

 楼主| jia2shuo 发表于 2020-4-12 00:28 | 显示全部楼层 来自: 河南省安阳市 联通
fsclub 发表于 2020-4-11 14:17
主板程序需要新的硬件库文件吗?

STM32的库需要新的
回复 支持 反对

使用道具 举报

火攻 发表于 2020-5-22 10:56 | 显示全部楼层 来自: 河南省许昌市 联通
感谢无私分享,造福同好
回复 支持 反对

使用道具 举报

本版积分规则

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