严格按如下开发文档链接写了一个 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. . . ) }}