×
单片机 > 单片机程序设计 > 详情

AVR中如何操作单个IO口

发布时间:2020-08-25 发布时间:
|
WinAVR中如何操作单个IO口

用PORTA|=(1<<7)
PORTA|=(1<<7)
意思是把00000001左移7位再和porta相或


PORTB |= _BV(n) 和 PORTB &= ~_BV(n)

sbi() 可以用的
05版装好后的确不能用 sbi()和cbi()。

仔细看资料后,发现头文件里的确没有这两函数的定义。

发现问题原因后,解决它就不是什么问题了。

方法有无数种。

1.  将下面两行拷到程序中。

  #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))

#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))

2.将上面两行拷到 sfr_defs.h 文件中,该文件在 C:WinAVRavrincludeavr 。

 

         想PA7为1            PORTA |= (1<          想PA7为0            PORTA &= ~(1<          想PA7取反           PORTA ^= (1<          想检测PA7是否为1    if (PINA & (1<



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
浅谈AVR中定时器几种工作模式