[MSP430] 풀업저항 설정 - 스위치 입력처리
MSP430의 내부 풀업 저항 설정은 REN레지스터를 셋팅해 주면 된다.
내부 풀업을 사용할경우 저항이 고정되어 있어서 1.6uA정도가 소모된다.(MSP430자체는 nA단위로 소모한다.) 만약 저전류로 동작하기를 원한다면 외부에 더 큰저항으로 풀업 하는것이 좋다.
#define SW_BIT (BIT0|BIT1|BIT2|BIT3)
#define SW_PORT P1IN
#define SwInit() Sbi(P1REN, SW_BIT);Cbi(P1DIR, SW_BIT);
#define GetSw() ((~SW_PORT)&SW_BIT)
main()
{
SwInit();
while(1)
{
sw_new = GetSw();
if(sw_new != sw_old)
{
}
sw_old = sw_new;
}
#define SW_PORT P1IN
#define SwInit() Sbi(P1REN, SW_BIT);Cbi(P1DIR, SW_BIT);
#define GetSw() ((~SW_PORT)&SW_BIT)
main()
{
SwInit();
while(1)
{
sw_new = GetSw();
if(sw_new != sw_old)
{
}
sw_old = sw_new;
}
반응형