Mstar的Monitor方案OSD 菜单制作(一)————开篇

news/2024/12/5 11:57:48/

Mstar 的Monitor 方案

开篇

最近在做一个显示器的项目,全是C,界面啥的都是用C写。完全不懂。就因为我们是搞上层android 的,所以和UI 相关的就分了过来。唉,也是没办法。为了工作,为了生活。干呗!

其实,这个项目系统就是一个单片机,我们的任务就是在这个单片机显示器上开发OSD 菜单。类似下面这样的菜单。
在这里插入图片描述

1. 开发工具

编译工具: keilc51

开发工具: source insight 或者sublime

代码管理: cygwin64

升级工具:ISP_Tool(v4.7.3).exe

debug 工具: MS Monitor System Tool.exe

OSD 菜单使用工具 :如下图
在这里插入图片描述

2. 代码结构

总代码结构:
在这里插入图片描述
主要代码结构:
在这里插入图片描述

3.编译

使用 keilc51 导入代码,然后点击编译。
在这里插入图片描述
编译成功后,会在Project 目录下生成bin 文件。

4.升级

编译生成bin 文件,然后使用如下工具升级:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
也可以用代码辅助升级,看自己项目的需求

5.关键文件

文件说明
MenuTbl.hosd 主菜单结构
msOsd.c绘制实现
menu.c绘制显示逻辑,切换菜单逻辑
ColorPalette.c色盘
LoadCommonFont.cload font
CommonFont.hfont 数据位置
MenuFunc.c功能函数实现
Global.h全局变量,font 起始位置,坐标定义
MenuStrProp.c字符串font 读取
KeyPad.c按键处理

6.debug 工具

右边是log 输出的窗口。
在这里插入图片描述

7. 踩过的坑

  1. 使用windows 拉代码编译,千万不要使用你的linux 拉完代码,然后再从windows 映射到你的linux 代码上,这样编译升级出来的是有问题的。最好使用cygwin64 在windwos 上直接拉代码,然后修改,提交,push。
  2. mstar 显示器,说白了就是一个单片机,内存有限,请注意加载的代码长短以及资源font的大小。

http://www.ppmy.cn/news/494999.html

相关文章

Ceph添加OSD节点

1、首先需要在新的节点上安装ceph软件,当然这个需要做一系列的准备工作 比如安装ssh-keygen,配置ntp等 在管理节点上执行: [rootceph-admin ~]#su -dgb $ceph-deploy install --no-adjust-repos ceph5 2、获取osd的ID 这个操作是在管理节点上执行 [rootceph-admin …

hi3519叠加OSD

编译环境:Ubuntu16.04 64位 交叉编译工具:arm-hisiv500-linux-gcc 最近需要在hi3519为图像叠加osd信息,目前已完成,这里做个总结。 文章目录 1. 交叉编译freetype1.1 裁剪1.2 配置编译1.3 目标文件 2. freetype的封装2.1 头文件2.…

ceph osd heartbeat 分析

Introduction 大规模分布式系统中,各种异常情况时有发生,如系统宕机,网络故障,磁盘损坏等等都有可能造成集群内部节点无法通信。 一个分布式系统要正常协调地运转,内部各节点进程间需要通过心跳机制来保证各节点处于正…

ceph基础知识

1,ceph介绍 ceph是一个可靠的,自动重均衡,自动恢复的分布式存储系统。 根据场景可以分为三大块:对象存储,块设备存储和文件服务系统。ceph相比于其他存储,优势点在于它不单单是存储,同时还充分…

ceph修改osd服务器IP,ceph增加osd流程

假如需要新增一个主机名:osd4 ip:192.168.0.110的OSD 1.在osd4创建挂载目录及放置配置文件的目录 ssh 192.168.0.110 (这里是从mon主机ssh到osd4主机) mkdir /ceph/osd.4 mkdir /etc/ceph 2.在osd4上格式化ext4的sda3分区,挂载分区。 mkfs.ext4 /dev/sda3 mount -o …

Ceph 学习——OSD读写流程与源码分析(一)

消息从客户端发送而来,之前几节介绍了 客户端下 对象存储、块存储库的实现以及他们在客户端下API请求的发送过程(Ceph学习——Librados与Osdc实现源码解析 、 Ceph学习——客户端读写操作分析 、 Ceph学习——Librbd块存储库与RBD读写流程源码分析&#…

ceph osd 修复备忘

目的 修复故障osd 现象 检测方法 磁盘检测 可以通过下面命令获取当前 ceph 磁盘与 osd 对应信息 命令行只显示本地磁盘及对应的 OSD 信息 下面输出只列出本地两个 OSD 磁盘例子 # ceph-volume lvm list ====== osd.6 =======[data] /dev/ceph-1ebbbbb6-c0ce-4723-b986-32c…

对视频图像进行OSD叠加

频叠加就是将图片和文字信息叠加到视频信号中,如电视台的LOGO,电影的字幕,电视机的菜单,都是通过视频叠加的形式显示在视频图像中的。区别于用于专业影视编辑行业的字幕叠加器,字符叠加器这一名称现在更加习惯用于各类…