430 IO上下拉电阻

来源:互联网 发布:rhinoceros mac 编辑:程序博客网 时间:2024/05/15 07:04



上下拉是否开启是否REN寄存器决定的,而上拉还是下拉是由OUT寄存器决定的,在作为输出时,随着OUT的高低,自动选择上下拉,作为输入的时候,我们也可以人为的付OUT寄存器来得到上下拉。


PxREN寄存器控制拉电阻是否启用,而PxOUT决定了拉电阻是上拉还是下拉,具体的工作原理是这样的

 

PxDIR=1时输出

PxREN=1只有拉电阻起作用

PxOUT=1上拉

PxOUT=0下拉

PxREN=0推挽输出无拉电阻

PxOUT=1输出高

PxOUT=0输出低

PxDIR=0时输入

PxREN=1有拉电阻起作用

PxOUT=1上拉

PxOUT=0下拉

PxREN=0时IO呈高阻状态

高阻状态


 #include<msp430g2553.h>
voidmain()
{
 WDTCTL=WDTPW+WDTHOLD;
 P1DIR=0x0001;
 P1REN=BIT3; //输入
 P1OUT=BIT3;  //上拉

 while(1)
  {
   if(P1IN&BIT3)
     P1OUT|=BIT0;
   else
     P1OUT&=~BIT0;
 } 
 
}

 

0 0
原创粉丝点击