AVR中IO设置

iyj   2010-1-20 19:13 楼主
在ICC AVR中如何编写一个管脚是对另一个管脚取反,在AVR中对IO的操作有3中分别是DDRx(设置管脚的输入输出)PORTxn(设置管脚的上拉或置输出为1或0)PINx(是检测管脚状态的)但我不知道如何设置一个管脚的输出是对另一个管脚的取反,请高手指点一二

回复评论 (4)

这不有输出0 和1和嘛  
一个管脚是对另一个管脚取   一个管脚状态=~另一个管脚状态
点赞  2010-1-20 20:56
  PORTB^=0x02;//把IO口取反

void port_init(void)
{
PORTA = 0x00;
DDRA  = 0x00;
PORTB = 0x00;
DDRB  = 0x02;
PORTC = 0x00; //m103 output only
DDRC  = 0x00;
PORTD = 0x00;
DDRD  = 0x00;
}

//call this routine to initialize all peripherals
void init_devices(void)
{
//stop errant interrupts until set up
CLI(); //disable all interrupts
port_init();

MCUCR = 0x00;
GICR  = 0x00;
TIMSK = 0x00; //timer interrupt sources
SEI(); //re-enable interrupts
//all peripherals are now initialized
}
点赞  2010-1-20 21:06
楼主到底想要什么AVR的代码,我都有,QQ:604914729,我传给你吧
点赞  2010-1-20 21:07
先读出来,取反之后进行移位等操作再发给另一个端口
点赞  2010-1-20 21:55
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复