严格按如下开发文档链接写了一个LCD驱动,打算集成到SDK的组件中,报这样的错误,大伙知道是哪里出问题了吗?或者说我哪一步需要进行排查的。
https://doc.winnermicro.net/w800/zh_CN/latest/component_guides/driver/drv_tft_lcd.html
我实际查看build目录下的dt表,的确没有这个设备,如下:
但是我有在W803下的wm_dt_hw.c中有加入st7789这个设备。
前两天也遇到这个问题,后来发现是driver目录下的CMakeLists.txt,需要添加新增驱动文件的编译项,这个文件里面搜一下ST7735,应该就能找到在哪里增加了。
文档里面没有提这点,我这边最后报错就是编译时设备符(ops)找不到,你尝试增加一下CMake项。
我遇到的问题大概是这样:
1)先按文档增加了显示驱动相关源文件,然后尝试编译一个LCDDemo,编译可以成功,但是找不到设备
2)然后我就想到设备没有添加成功,于是在文档里找到添加设备表介绍——另外还需要修改tools目录下的wmdt.py,也是找到添加对应的驱动内容,generate_tftlcd()这个函数中增加新增设备名称。这个函数是用来生成新增设备相关源文件的。
3)wmdt.py修改后开始编译出错了,一直提示设备符找不到,开始也是没想明白以为是源文件有问题,后来才找到是CMake的原因。
的确,除了按官方的文档来外,还需要修改这个文件内容,附件是我修改的内容,ST7789部分是我添加的,编译运行后,设备加载成功了,大伙得注意这个坑,也希望官方尽快更新SDK描述文档。
wmdt.py{{wmdt.py(uploading...)}}