|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
真正的单片机入门 从处理多任务开始
7 }6 j, ^) @$ p4 o! X
- i! |2 r6 P) _' H! M: E" Y1 m5 y
我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种嵌入式处理器上面,因为C语言强大的可移植性。
1 C: k! c3 |/ S& e- @* o5 H" p" S! s+ s% N
同时,这里面用到了一些分层的思想,在单片机当中也是相当有用的,也是本文的另外一个重点。; |, Y& R$ C- D$ _7 M( ?
1 `' H Q) W$ n/ f7 W
对于老鸟,我建议直接看那两个表达式,然后自己想想就会懂的了,也不需要听我后面的自吹自擂了,我可没有班门弄斧的意思,hoho~~但是对于新手,我建议将全文看完。因为这是实际项目中总结出来的经验,学校里面学不到的东西。3 o; [' q; g, J4 _
; c) |2 H9 f# I ^9 r! X9 p" l
以下假设你懂C语言,因为纯粹的C语言描述,所以和处理器平台无关,你可以在MCS-51,AVR,PIC,甚至是ARM平台上面测试这个程序性能。当然,我自己也是在多个项目用过,效果非常好的。
p& Q) f+ X/ r1 K4 ?* C
! c5 L0 B) g& {3 D k好了,工程人员的习惯,废话就应该少说,开始吧。以下我以AVR的MEGA8作为平台讲解,没有其它原因,因为我手头上只有AVR的板子而已没有51的。用51也可以,只是芯片初始化部分不同,还有寄存器名字不同而已。
5 `1 ~. J7 a% v/ L5 c* A+ }
0 u8 F2 K/ W6 m 核心算法:
* y _& H2 Y7 b* Z* J1 a9 V4 y8 ~ ( Y f+ s8 K# V( o5 {, `
. c8 Z- Y% G) A; S) }9 u; E |
评分
-
查看全部评分
|