|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1、首先注意51单片机上电的时候会有个复位的操作,复位的时候不执行单片机内部程序,复位之后51单片机的所有IO口都为高电平;
L% p; ~- L! O5 Q; v5 a) O+ p8 e5 |
2、在单片机复位之后在main函数里执行程序,如果要使Io口初始化为低电平,就要在while循环的上方把IO置低;例如:. ]7 [1 M" J( T; L% f( K: ^
一般程序的结构是这样的:2 u' @# e) L) q0 K& G
void main()
; f- j0 o! Z5 ]& i& K{
6 p, ~6 n) s$ r' u+ o- c ....9 w3 u1 ~: ~, J# V6 n$ C$ O
4 o0 @8 y7 m. B1 r& w- q' V7 M
IO = 0 ; //在while的上方对IO置低,6 a+ [/ X* F {, ~
- J0 d2 ?$ a6 P. A+ u7 n/ e
......! K* q7 L9 `: a
6 G( E( L, E0 N9 l& ]
while(1)
9 j3 v* u# G- s3 w0 l+ @
$ n# s, l5 l) g9 f {
" N0 s, c$ Z0 ^8 E! a5 ~$ J: Q" {6 n
}
' K8 w* g" e- f/ P8 `0 D' l$ w. t$ r}
) w3 a9 d* Q6 Z5 N8 j. T, L3、基于上面的原理,在设计单片机外围电路的时候,为了不让外围电路误动作,一般把外围电路设置成单片机IO口低电平的时候 尽心动作,
& D5 p2 \ d! z/ D& A比如: 点亮LEd灯的时候,,一般把LEd的负极接IO口,,这样单片机上电的时候,没有进入程序之前,LED是不会亮的. z3 |$ u. v- j4 K8 }
' q1 ^" k$ _1 l, [8 r
|
|