你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

PetiteDrv:基于STM32的嵌入式软件开发实践

[复制链接]
wujique 发布时间:2019-5-7 17:49
这一年多时间,在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
2 U7 ]7 ~8 i; v3 C6 x8 U
! N! j" |" B; U; w: f当时的代码在github仓库:
" O) d6 E7 T) H! y. s$ ]- qhttp://github.com/wujique/stm32f407) f$ \+ V8 d+ ^' X: R% k9 U

' k' E0 C9 K; \% v3 h4 E) P有段时间没在论坛发帖了,其实这些代码一直在迭代。
' K; b# w. C: |, o# A/ [2 d# a为了更好的验证代码可移植性,做了一些新硬件:
8 G3 E4 n% G( [* @Canary stm32103
+ S  \0 f' F# k* B. r camary.JPG
9 U1 n, T. a: _7 W0 }6 H9 a' a! L下面的外扩接口跟F407核心板完全兼容,
, e! W' R7 W' B看过以前的帖子的朋友就知道,这样的接口设计& q# ], @% O/ J" d9 \/ ^, t
是为了让我思考一下问题:8 G) Y$ {* }  H0 ?# n$ f; d
一个SPI的LCD接在不同的地方、
6 I  I4 p& K3 J1 O3 G+ x同样控制器的LCD用I2C和SPI方式、" i4 r; ?8 Q4 q. T
等等这样的兼容,代码要怎么写?
% J) q$ U% `' }# j6 N Canary外扩接口1.png
* E4 b0 h% R+ M5 H2 x" `7 o, S9 X. H* m
在这两块板子上,对代码 组织形式 进行了大改动。
0 F3 L2 y* n  r并矫情的取了个PetiteDrv做为github仓库的名字。' ^0 B. f9 l, V
http://github.com/wujique/PetiteDrv
, K: R) Z/ d1 G9 \8 W+ [- r1 y2 ?# q5 }. ?. i, r# o* W1 ]
经过在这两个板子上试验,调整了部分代码的配置。
9 K' ^" N6 G; g9 G! B不过如果你只想用上层的驱动,可以不关心这个。# c: ~! S2 c4 M: R! m5 Z8 x' Z

4 S2 }7 k7 l: ~目前代码还是用标准库。可能很多朋友觉得不可思议。* q& H( j6 r! F$ f8 W+ m. M" B& c, i
不辩解,我想做的是外设驱动,不是芯片驱动。4 z7 u: N7 p" U9 ^7 ]" m& f& @
PetiteDrv,是外设驱动,比如各种LCD驱动;
7 q; A8 H: Q* H' T! S; S8 h是外设框架设计,例如多个SPI代码如何管理,I2C总线的管理。
2 A) U: z  U$ d/ J  S而不是这个芯片偏上用标准库还是HAL库,更者,用寄存器操作,这不是重点。
2 Q4 k/ ?5 p7 |( h: d9 m4 b  [  b" g& Z, `- R; C
为了验证PetiteDrv的可用性能,后续会不断在其他方式的芯片上试水。
4 c7 F. j9 n% k$ L2 t, T# J下一款是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

" i" t  M5 g& i: y再放一次github地址:
$ h" B; T1 Z% S' @http://github.com/wujique/PetiteDrv
, P) W5 W$ }6 e2 {; R* W& e
% {" B9 x0 r; c7 O
赞 1 收藏 3 评论4 发布时间:2019-5-7 17:49

举报

4个回答
Kevin_G 回答时间:2019-5-8 14:41:19
点赞
顽皮杨 回答时间:2019-10-18 09:00:50
B站有个大佬和你得程序隔离思路不谋而合,还自己写了个OS,可以一块交流交流http://www.bilibili.com/video/av66541570
goyhuan 回答时间:2019-10-18 09:34:20
very nice
2 A% ?7 C/ b; B& ~0 C# K+ N. ^thks
wujique 回答时间:2019-10-18 13:57:31
顽皮杨 发表于 2019-10-18 09:00& I8 K- F# y7 j
B站有个大佬和你得程序隔离思路不谋而合,还自己写了个OS,可以一块交流交流http://www.bilibili.com/vide ...
* B& Y. B8 u# R4 a/ _, J
谢谢,去学习学习
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版