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

我的ST:实例项目总结

[复制链接]
qiangtech 发布时间:2019-11-29 10:13
最近完成了一个F030项目的试产,回想整个过程,深刻感觉到实际开发项目与开发板开发的不同。也发现了一些疑惑,希望能有高手能指教方法.
1 {" ^' ?- F8 e$ [5 B9 A1.项目开始时,也是做了一些规划的。把不同的功能模块单独做成一个文件,并且有各自的头文件。但是越往后做,发现跨文件的变量也越多。于是好多
- L1 k, t0 S% i4 L7 L5 N$ [0 oEXTERN 出现了。虽然能行,但是感觉非常杂乱,不好控制,有时为了查一个变量就需要看好几个文件。
5 g& ]  I4 \. I2.逻辑错误的问题,前后逻辑不一致,甚至是一个笔误也会形成一个逻辑错误问题。几乎用了写代码一倍的时间重读推敲逻辑,也花了相当的时间实际运行测试,还是不能保证全部找出了问题。
, B$ @% m5 @3 V. L9 ?3.关于程序流程图,没看到人展示过这个,所以也不知道别人做的能精细到什么程度。感觉做得太粗略就没什么作用,精细一点又做不来。大家可以教我。' r0 K2 ?" y' A  Y% w: K- I

& l  Q/ V+ r& `# L% Q2 q以上,大家可以讨论指点。
  b* K9 Y0 H9 `6 H" c  a) p( z! W
3 收藏 评论5 发布时间:2019-11-29 10:13

举报

5个回答
网络孤客 回答时间:2019-11-29 11:45:00
我也是菜鸟# I' K9 F3 N. f* E
对于问题12 D' U; P( q' z0 x& N
我的解决方法是:封装一些函数,用来传递或处理这些数据,减少跨文件的变量。
) D; B: z) x+ J# _如:
5 v6 l5 c! j- T! BA变量在甲文件中,乙文件需要设置它的值+ j& Y' B/ p0 t+ _4 Z* @
我会:
. Y  n, P: c+ {* K  q4 g. svoid changeA(uint8_t value)
- I0 V0 y' p" l% c2 p1 c# a{- W7 x3 A+ C  }# m  _+ ?6 o
   A = value;
$ U0 ]# o& z5 B& g3 L7 m6 q}
* f% I4 i( c' X; R) o: Z" U% P* E
% e7 [# o. j, A' a$ q! M数据传输也一样,甚至可以用指针: i) `4 l0 e' e3 A/ O
uint8_t getA(void)% z( d6 v6 Q1 m# W4 R9 b. W
{4 A9 f; ?0 S+ D& k
   return A;# C! u$ f* h+ v$ |
}
/ q9 ?4 o% k3 s( L4 n0 t# A( B( d
问题2,共同情况,debug比编程时间还长。我只能分多个部分验证。9 L: d+ J3 e9 U0 y) D  |
编写的时候,会考虑更多以后重用方便问题。' M) S& q9 a7 E1 J/ Y* p
0 ~$ ~6 ~, V1 X4 ]
问题3,我只是大概画个大概流程(功能块),用于理顺思路,甚至只用思维导图。毕竟单片机不算太复杂。
1 p$ X6 ?& U$ s* m5 q" W* f& k& P/ H: F/ [7 u  o8 O( x. U1 E
如果觉得回答还可以,请支持“我的ST”,谢谢。
% u' W& m, s  h4 q* L3 I
奏奏奏 回答时间:2019-11-29 11:54:20
我用最笨的方法,全部代码都放在 main.c 文件里面
qiangtech 回答时间:2019-11-29 14:01:35
ldptest 发表于 2019-11-29 11:451 Q5 ?7 E* |6 x8 i9 I/ O
我也是菜鸟9 f# w: y3 X8 @+ A1 D( j1 Q
对于问题12 }7 D9 l* h$ l, m( J% R, l- _0 c
我的解决方法是:封装一些函数,用来传递或处理这些数据,减少跨文件的变量。

6 W. {/ q2 ]4 ^; x  p9 z2 v嗯,你的办法是可以,就是有点消耗资源。支持你。
网络孤客 回答时间:2019-11-29 17:37:40
qiangtech 发表于 2019-11-29 14:01
0 `$ v! ]; u8 N& U/ g$ c嗯,你的办法是可以,就是有点消耗资源。支持你。
6 B; ~! _4 s: _- b; [; V2 g0 z& x& j
谢了!
. P+ ?5 h# H4 I8 `( b有时候标准化会减少很多编程上的差错。
9 H8 P2 M- d7 Q' O3 {不差这点资源,如果实在太紧张,就逐步改。
老牛洋车 回答时间:2019-12-19 18:11:29
支持楼主,也希望得到楼主的支持:4 b& A5 ^! u7 A+ `
https://www.stmcu.org.cn/module/forum/thread-622444-1-2.html5 M. a5 M& i) K2 @

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版