
这一年多时间,在STM32上,根据自己的想法,设计了一些代码。& n& Q+ Y" O+ ~, D, T 具体可见一下帖子: https://www.stmcu.org.cn/module/forum/thread-617214-1-1.html https://www.stmcu.org.cn/module/forum/thread-615814-1-1.html3 L. O2 j% o. z) e* t https://www.stmcu.org.cn/module/forum/thread-615206-1-1.html9 w1 e# Y1 D+ p+ s 当时的代码在github仓库:) @* m! Z5 _# ~/ [' o http://github.com/wujique/stm32f407 有段时间没在论坛发帖了,其实这些代码一直在迭代。 为了更好的验证代码可移植性,做了一些新硬件:4 `& J( ^8 y$ J2 W9 s Canary stm321030 e+ _$ `. C, ?" W ![]() 下面的外扩接口跟F407核心板完全兼容, 看过以前的帖子的朋友就知道,这样的接口设计 是为了让我思考一下问题: 一个SPI的LCD接在不同的地方、 同样控制器的LCD用I2C和SPI方式、 等等这样的兼容,代码要怎么写? ![]() 6 `$ _6 ~8 }1 Y8 V* F4 H 在这两块板子上,对代码 组织形式 进行了大改动。/ l+ U, F. G3 h F; z, F 并矫情的取了个PetiteDrv做为github仓库的名字。6 A* y/ J$ s: y http://github.com/wujique/PetiteDrv 经过在这两个板子上试验,调整了部分代码的配置。 不过如果你只想用上层的驱动,可以不关心这个。0 m; P1 o9 M' ?) d" c 7 x& P8 j( ?1 k1 z: E8 k 目前代码还是用标准库。可能很多朋友觉得不可思议。 不辩解,我想做的是外设驱动,不是芯片驱动。 PetiteDrv,是外设驱动,比如各种LCD驱动;9 A0 A `- z4 n, o& \7 E5 M! Q 是外设框架设计,例如多个SPI代码如何管理,I2C总线的管理。 而不是这个芯片偏上用标准库还是HAL库,更者,用寄存器操作,这不是重点。! d" e# U1 ~, Z) F# h; V* g 3 g) a; x8 @; h: x0 \ 为了验证PetiteDrv的可用性能,后续会不断在其他方式的芯片上试水。! k" p2 `! F- D 下一款是ST的H750VB,板子就快回来了,可能会试试ST最新的环境和HAL。 如果你觉得PetiteDrv能用,尽管拿去。& S* J6 t0 p0 h& N' O+ w 如果你觉得PetiteDrv不咋地,多提意见。) }2 X; ~, G6 [! }' ?6 q . K& b$ X+ v$ \' u+ X 再放一次github地址: http://github.com/wujique/PetiteDrv9 ~6 Y6 f9 ^5 P' ~+ H: G3 U$ q 7 x$ U' A1 g2 \* D! A |
thks
谢谢,去学习学习