申请了一个聆思的MCU的开发板,CSK6系列芯片内部合封了8MB的PSRAM,主频高达300M,性能很棒,但是这个开发板用的是Zephyr,基于命令行开发,我平常都是使用keil ,IAR 等IDE,来做项目,用起来Zephyr很不习惯,但在B站找到了这个“ 一顿饭吃好几碗”这个UP主的视频
串口实验
进入你想要创建工程的目录,右键选择在终端中打开
创建项目指令:
lisa zep create
将例程代码改为
#include <zephyr/kernel.h>
int main(void)
{
while(1)
{
printk("Hello World! %s\r\n", CONFIG_BOARD);
}
return 0;
}
编译命令:
lisa zep build -b csk6011a_nano
下载命令:
lisa zep flash -r pyocd --frequency 20000000
输出的内容
LVGL 移植
lisa zep create 创建项目
可以使用NXP的 Guider导出GUI工程代码
然后将src 的内容复制到 创建的LVGL的src就可以了,
.conf文件和CMake要添加修改一些内容
CONFIG_HEAP_MEM_POOL_SIZE=16384
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_DISPLAY=y
CONFIG_DISPLAY_LOG_LEVEL_ERR=y
CONFIG_LOG=y
# CONFIG_LOG_STRDUP_BUF_COUNT=16
CONFIG_LVGL=y
CONFIG_LV_Z_DISPLAY_DEV_NAME="ST7789V"
CONFIG_LV_Z_HOR_RES_MAX=320
CONFIG_LV_Z_VER_RES_MAX=480
CONFIG_LV_Z_POINTER_KSCAN=y
CONFIG_LV_Z_POINTER_KSCAN_DEV_NAME="FT5336"
CONFIG_GPIO=y
CONFIG_SPI=y
CONFIG_ST7789V=y
CONFIG_I2C=y
CONFIG_KSCAN=y
CONFIG_KSCAN_FT5336=y
CONFIG_KSCAN_FT5336_INTERRUPT=y
CONFIG_LV_COLOR_16_SWAP=y
CONFIG_LV_Z_POINTER_KSCAN_INVERT_X=y
CONFIG_LV_MEM_CUSTOM=y
CONFIG_LV_USE_LOG=y
CONFIG_LV_USE_LABEL=y
CONFIG_LV_USE_BTN=y
CONFIG_LV_USE_IMG=y
CONFIG_LV_FONT_MONTSERRAT_14=y
CONFIG_LV_Z_MEM_POOL_NUMBER_BLOCKS=8
CMake文件
# SPDX-License-Identifier: Apache-2.0
cmake_minimum_required(VERSION 3.20.0)
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(gui_guider)
FILE(GLOB app_sources src/*.c src/generated/*.c src/custom/*.c src/generated/guider_customer_fonts/*.c src/generated/guider_fonts/*.c src/generated/images/*.c)
target_include_directories(app PRIVATE src/generated src/custom src/generated/guider_customer_fonts src/generated/guider_fonts src/generated/images)
target_sources(app PRIVATE ${app_sources})
target_compile_definitions(app PRIVATE LV_LVGL_H_INCLUDE_SIMPLE)
还有个比较有意思的地方
这里使用了一个CH32V003 做GPIO拓展
|