|
这一年多时间,在STM32上,根据自己的想法,设计了一些代码。+ A& e7 R8 a) {4 v! d4 [& ~6 ` 具体可见一下帖子: P! X& d% X0 S* p1 Y$ Y, S6 V https://www.stmcu.org.cn/module/forum/thread-617214-1-1.html8 i: j3 A) Y! Y! f$ B4 Q https://www.stmcu.org.cn/module/forum/thread-615814-1-1.html( t6 [& w% h8 i8 ^ https://www.stmcu.org.cn/module/forum/thread-615206-1-1.html 当时的代码在github仓库: http://github.com/wujique/stm32f407) f$ \+ V8 d+ ^' X: R% k9 U 有段时间没在论坛发帖了,其实这些代码一直在迭代。 为了更好的验证代码可移植性,做了一些新硬件: Canary stm32103
下面的外扩接口跟F407核心板完全兼容, 看过以前的帖子的朋友就知道,这样的接口设计& q# ], @% O/ J" d9 \/ ^, t 是为了让我思考一下问题:8 G) Y$ {* } H0 ?# n$ f; d 一个SPI的LCD接在不同的地方、 同样控制器的LCD用I2C和SPI方式、" i4 r; ?8 Q4 q. T 等等这样的兼容,代码要怎么写?
2 x" `7 o, S9 X. H* m 在这两块板子上,对代码 组织形式 进行了大改动。 并矫情的取了个PetiteDrv做为github仓库的名字。' ^0 B. f9 l, V http://github.com/wujique/PetiteDrv 2 ?# q5 }. ?. i, r# o* W1 ] 经过在这两个板子上试验,调整了部分代码的配置。 不过如果你只想用上层的驱动,可以不关心这个。# c: ~! S2 c4 M: R! m5 Z8 x' Z 目前代码还是用标准库。可能很多朋友觉得不可思议。* q& H( j6 r! F$ f8 W+ m. M" B& c, i 不辩解,我想做的是外设驱动,不是芯片驱动。4 z7 u: N7 p" U9 ^7 ]" m& f& @ PetiteDrv,是外设驱动,比如各种LCD驱动; 是外设框架设计,例如多个SPI代码如何管理,I2C总线的管理。 而不是这个芯片偏上用标准库还是HAL库,更者,用寄存器操作,这不是重点。 [ b" g& Z, `- R; C 为了验证PetiteDrv的可用性能,后续会不断在其他方式的芯片上试水。 下一款是ST的H750VB,板子就快回来了,可能会试试ST最新的环境和HAL。0 O9 v6 E5 n: E' J' j" |" v 4 p2 T3 T- R! u$ f4 f" T0 m 如果你觉得PetiteDrv能用,尽管拿去。" J6 D$ i( d# A, a$ I4 i 如果你觉得PetiteDrv不咋地,多提意见。; X4 j3 q% B2 h. N& a0 n 再放一次github地址: http://github.com/wujique/PetiteDrv |
微信公众号
手机版
thks
谢谢,去学习学习