2020年3月更新说明 - notrynohigh/BabyOS GitHub Wiki

b_log

打印日志分等级,当调试的时候多点信息,开发的后期可以仅打印错误或者

警告信息。打印数据的大小在 b_log.h 里面配置。

错误级别和警告级别都会额外打印函数名,行号。错误级别还多一项文件名。

b_gui

GUI 功能模块是基于 uGUI 完成,首先进行配置:

其中 X,Y 的物理尺寸按照竖屏时的尺寸进行配置。触屏的 AD 值同样是按照

竖屏的尺寸配置。LCD_DISPLAY_MODE 配置显示方式:横屏或者竖屏。

调用初始化,指定 LCD 和触屏芯片的设备号(b_device_list.h)

int bGUI_Init(int lcd, int touch);

初始化后便可以使用 uGUI 的 API,具体 API 可以查看 ugui.h。

uGUI 使用教程查看:

bos/thirdparty/UGUI/Reference Guide ugui v0.3.pdf

b_menu

菜单的构建是基于页面与页面的关系,页面与页面之间是兄弟关系或者是父

子关系。根据这两个关系便可以构建出整个多级菜单。因此设计两个 API:

int bMenuAddSibling(uint32_t ref_id, uint32_t id, pCreateUI f);

int bMenuAddChild(uint32_t ref_id, uint32_t id, pCreateUI f);

菜单构建完成后便是跳转,菜单模块提供了上、下、确定、返回四个动作,

同时增加了跳转指定页面的 API,完成基本的需求。

void bMenuAction(uint8_t cmd);

void bMenuJump(uint32_t id);

每个页面都有唯一的 ID,因此直接跳转和设置页面是否可见都是通过 ID 对

应到页面:

uint32_t bMenuCurrentID(void);

int bMenuSetVisible(uint32_t id, uint8_t s);