【前言】
MCXN236在移植好LVGL前提下,可以非常方便的创建用户的GUI界面。本篇将分享如何快速的展示智能家居环境监测。
【硬件】
1、FRDM-MCXN236开发板
2、LCD-PAR-S035LCD显示屏
3、STCC4二氧化碳监测模块
【软件】
1、GUI_GUIder
2、Keil
【界面设计】
1、使用gui_guider创建一个基于FRDM-MCXN236开发板的lvgl9.0的空白自定义工程。
2、在界面添加eeworld、得捷的图标。
3、添加标题为STCC4环境监测系统。
4、添加三个标签分别为lable_co2,lable_hum、lable_tmp用于展示检测结果。
界面效果如下:
【工程导出】
1、生成基本C语言的代码,并使用预览功能查看汉字是否显示正常。
2、导出基于keil的工程。
【STCC4简介】
STCC4 是由瑞士传感器制造商 Sensirion (盛思锐) 开发的超小型直接测量二氧化碳 (CO₂) 传感器,于 2024 年第四季度正式发布。它是目前全球体积最小的直接测量 CO₂传感器之一,专为室内空气质量监测和空间受限的 IoT 应用设计。开发板采用I2C接口连接。
【传感器的连接】
MCXN236支持最多8路的SPI/UART/I2C,其中LPI2C2给了TFTLCD驱动使用,经测试,在启动中GT911有初始化的动作,我偿试不大好用,因此重新找到了J2跳线的第20、18口用做LPI2C5来与STCC4进行连接。
【驱动移植】
STCC4有C语言的驱动库,我在CW32L012中已经验证过了。
将其的驱动文件添加到keil工程中。
【LPI2C5接口配置与初始化】
J2的20、18口是接到了N236的P1_17与P1_16。需要先从官方的数据手册中查阅到它的复用数。
1、下载了它的数据手册后,在74页的Table 64. Pinmux Assignments…continued,表中查它作为I2C使用时的复用为AF2。
2、根据MCX的配置过程,即打开端口时钟、配置IO的输出模式、打开I2C的时钟、重置I2C的配置,配置I2C的总线速度。修改stcc4_hal.c驱动:
void sensirion_i2c_hal_init(void) {
LPI2C5_InitPins();
CLOCK_SetClkDiv(kCLOCK_DivFlexcom5Clk, 1u);
CLOCK_AttachClk(kFRO12M_to_FLEXCOMM5);
BOARD_LPI2C_Init(LPI2C5, BOARD_ACCEL_I2C_CLOCK_FREQ);
}
3、在主程序中新建一个获取sttc4的任务。任务的流程为初始化sttc4IIC总线,获取他的ID,如果获取成功就进行开始转换,在while中周期获取co2、温度、湿度,通过LVGL展示出来。效果如下
【总结】
通这次DigiKey与EEWORLD的活动,我体验到了得捷的优质服务,再次感谢!

