找回密码
 注册
关于网站域名变更的通知
查看: 560|回复: 4
打印 上一主题 下一主题

新手学习单片机最常见的六大误区

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-7-30 11:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
新手学习单片机最常见的六大误区3 F5 v( c  D$ E( N/ v

该用户从未签到

2#
发表于 2021-7-30 11:27 | 只看该作者
一流的方法是直接参考别人的配置程序。
/ I# E* r( O" x' n* t( n
& Z4 s. N9 i& G1 ^; ?- f; C2 j) X1 w! l二流的方法是看数据手册,最傻雕的做法就是去背寄存器。/ R. @. ]0 j" _' I, ^( S( j/ {
除了一些在校大学生应付学校考试要背以外,我到现在为止,做过几十个项目都是用c语言,没用汇编做过一个项目。
' m5 C; ^, L3 l% t# E
, u- @/ d+ f$ S0 ~0 N" Z很多人说还是有必要学,学了对单片机理解地透彻一点。6 Y* r" _* H5 `
% e5 @0 D' ?; b# r
我想说的是你又不制造单片机,理解这么透彻干嘛。6 {2 c! m/ s: ]' B; d# f
5 v; v- n# v. J$ a4 ]8 j& J* [! A
单片机只是工具,90%的人都是用这个工具做应用,你理解透彻和我只会用这个工具,没任何区别。

该用户从未签到

3#
发表于 2021-7-30 12:33 | 只看该作者
不用汇编仅用C完全可以做项目不错!特别对于控制项目,用汇编做一做特可以学到新的东西,至少对单片机的硬件理解更透彻!

该用户从未签到

4#
发表于 2021-7-30 13:05 | 只看该作者
以为C语言学习门槛很高
: e# ]6 W9 H2 X5 m9 F3 l5 f1 O1 {* q1 Y
C语言小学生都能学会。
5 m1 V* T/ L" O; f* o1 O
* Y/ P5 ~* e$ V& w6 ^我没有跟你在吹牛逼啊,前端时间有一个大姐让我带他的儿子学习单片机。
* d2 ]9 P/ _; }& _$ E; i# x4 Z, j, @9 w# b  v
他儿子才11岁,然后我拒绝了,因为在我的认知范围里,这么小很难学的会。) P6 `5 r5 \' v
8 a; B# \' o. r, _
然后她说她儿子之前学了c++,有点基础,我当时都惊呆了,现在的学生真的是一个比一个厉害。
+ j( x. k' a  h# o# Q+ h1 {. i) X7 s& H
不过最后我还是让她慎重考虑下,毕竟我们培训的定位是那些学习完之后想找到工作的,我们课程也是以项目驱动去学习。4 W9 u3 ^2 T8 s! \. O5 D, L& A* {& y! z

& J7 p0 k8 N! M+ I新手在学习c语言前期的时候,只要学习基本语法就可以了,来来去去就5条最常用的语句。
& k8 |& Z  J: u7 r0 B
$ B3 c9 {+ ^) A) Z比如说if..else,switch, for,while, 赋值语句(=).; ~9 [; |# }+ h7 ^$ a

8 w3 d+ B& C; h. T& s, T$ T7个运算符:加减乘除,或运算、与运算、非运算。
" `6 m  @$ L# P5 B2 \. B- v1 K4 l" j: f& [
4个逻辑关系符:||、&&、!=、==
# f4 N8 N" o* u# X% f8 f; A5 h1 D. h9 v0 }
3个最常用的数据类型unsigned char、unsigned char short、unsigned char long。4 ^; p9 q2 b! D

, a; O, b- I$ _3个进制转换:二进制、十进制、十六进制
( Z4 Q; D1 B6 u& M- O) E
) [" X' u# u! W9 }还有就是函数的定义和调用。
: z" h5 o/ E! O* K6 X6 w" `, U8 ~
4 I' a/ z* ]! u6 f基本上掌握这些,你就能编写很多程序了。0 t: \* ?0 x; i" b2 \, c

8 k8 w% b# a( v% p* E* ?! V学c语言是一个循环渐进的过程,不要一上来就像写很复杂的程序,再牛逼的大佬也是从点灯开始。3 h3 w* G( ^. B
8 R7 A" L0 `  g# n
等你写多了,熟悉了,到时候再学习指针、结构体之类的。7 E/ j8 n1 p$ Z, ?; o# l

' R: S1 s  y% H8 e$ F! I% _  \因为你没有一定的基础时候,去学一些高级应用肯定是学不懂得。
3 b/ a% r  L2 n$ A! h( p# t" x" J* X" P) I
只有等你碰到了只能用指针、结构体去实现的功能的时候,你才会深刻理解它们的作用。, e/ O( U) ]! P- l! }

3 ^/ z, }0 \8 |: ]$ C  @6 D; Y! m6 J' F2 d/ y1 L7 D
6 q5 [- K: X+ Y. T) \9 G" p+ ?
四、总是因为记不住各种协议而烦恼
5 V9 w7 L4 ?* L7 h
, o. d! F0 P: x+ M1 y做单片机开发会经常接触各种协议,但是总体来说也就是:IIC、SPI、USART、单口通讯。9 d1 D" g& m% G2 z! Y

2 N) |1 S2 y  y3 ]% B( h前期的话也先不要去学习USB,CAN之类的协议,这些一般只会用在细分的领域。
% C+ \  U  {' Z) [+ Y' M3 q" c) R+ T, G) q6 Z
大家如果工作中碰到了,再针对性去学习。) S; h' S4 F5 B. L* y, `
, q2 T* o8 W; U; Y8 s% y# i
大家真正只需要掌握IIC、SPI、串口、单片通讯就行了。
$ ?/ g$ w/ q! ]6 f
6 h0 }, p6 K: V2 P6 ~$ s学习这个也很简单,直接搜别人的例程来用,先用起来,再根据程序的去理解这些时序图就简单多了。, o: D) w5 M5 Z  U

/ l4 v9 w7 w3 P6 _( w这里没有说错啊,是通过程序去理解时序图,这个逻辑跟大多数人的思维可能是反的。
  z4 R+ c9 D7 J# o( ~% Z% D3 Z0 H' Z* r+ W% @# F
但是我个人就是这样看懂时序图的,也是我的经验,大家可以去尝试,并不一定适合大家。
: W5 B  b' O$ j

该用户从未签到

5#
发表于 2021-7-30 13:41 | 只看该作者
纠结代码写得好不好
5 W$ g) D+ k0 n. R  d9 d& O
% a, B' w+ j7 q新手前期做项目写代码以实现功能为主,特别是51单片机,你代码写好了内存也未必够你用。
2 L8 B* @9 @& s. r8 [  \0 Z0 m1 ^2 r" i2 d  c
在你没接触过大项目程序开发的时候,你根本不知道代码的好坏,在功能上有什么区别。
. }( d" C5 Z" c/ Z7 s8 h* z- Y  d( n. Z/ F
反正都能实现功能对吧?
9 s9 F- S) r; t1 H# J4 V4 ?: g+ s6 w$ D
等你真正碰到一些大项目的时候,如果你代码水平不行,肯定是做不出来的。: Z" [9 f+ p: O) [* p$ n% ^% ]/ ?

' q4 G+ e& @! A* U8 a, Q代码量大了你Hold不住,不知道怎么去整合,整合完以后功能之间也有冲突。
7 v# X5 i& f! n; g( g0 c3 Z
! |7 U' W# C  q: U最后好不容易整合好了,又发现移植性太差,可扩展性太差,万一项目经理让你增加或者改个功能,你就挂逼了。
! N2 S) e, D" n, W8 L" c
  \$ t1 O1 l+ w( t& T1 q这个时候就是你该去思考怎么样把代码写得更好的时候了。
( J' h- O% [# @3 x
* z% z% a/ F# Q1 u, d因为你知道痛点在哪里了,在针对这个痛点去找解决的办法。& P& q0 I; E  a. @9 N
% \* k0 a' W. d) e# [2 H
最好的方法依然是去参考,写程序比你厉害的人。4 I7 t9 r' R% h) E3 z% i3 E
% R; f) d* k* L7 A" O
你再针对性去学习,比如说看我录制的那个程序架构教程。& L& k; N8 P1 m! {8 U" \( s

1 f# B! T) P3 W9 D6 i) y1 y5 _7 y我那个教程就是我这么多年产品开发当中碰到问题,再学习解决,最终总结出来的精华。* l8 G$ p: E, M

# t* b1 p) B  S六、什么都想学成专家! @5 ^/ g8 p, f" u
  x; q9 C) V) C  ?; n$ f  ^
很多新手在学习过程中碰到不懂的就想把那个知识点系统学一下,不学精学透不回头。
0 @( U# Y( ^& K8 I( r( K0 T
9 ~& H- o! H! t, c! L举个例子,比如说一个电路看不懂,就以为是自己模拟电路、数字电路基础太差。+ a, _" g1 R3 c! o9 r8 R" \4 Q4 q

# u  `2 Y# q% `, i4 i然后去把模电数电系统学一遍,学着学着就学不下去了,然后就以为做单片机开发太难了,最后也就放弃了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-10 05:08 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表