打印

学单片机C++:AVR单片机IO口操作

[复制链接]
1824|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CC2530|  楼主 | 2011-7-10 14:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 CC2530 于 2011-7-11 08:43 编辑

更新一下:IO口加入极性操作(On,off)
 
#define LED_1        IO_AVR_OBJECT_DEF(A,1)             //LED_1:A1
#define LED_2        IO_AVR_OBJECT_POLARITY_DEF(B,5,0)  //LED_2:B5,低电平表示ON
uint8 x;
int main(void)
{  
  LED_1.MakeOut().Set().Clr().Toggle().MakeInHighImpedance().Read(x);
  LED_1.Write(!x);
  
  LED_2.MakeOut().On().Off().Toggle().MakeInHighImpedance().ReadOnOff(x);
  LED_2.WriteOnOff(!x);
  while(1);
}
         RSEG CODE:CODE:NOROOT(1)
//    9 int main(void)
main:
//   10 {  
//   11
//   12   LED_1.MakeOut().Set().Clr().Toggle().MakeInHighImpedance().Read(x);
        SBI     0x1A, 0x01
        SBI     0x1B, 0x01
        CBI     0x1B, 0x01
        LDI     R16, 2
        IN      R17, 0x1B
        EOR     R17, R16
        OUT     0x1B, R17
        CBI     0x1A, 0x01
        CBI     0x1B, 0x01
        SBIS    0x19, 0x01
        RJMP    ??main_0
        CBI     0x1B, 0x01
        RJMP    ??main_1
??main_0:
        SBI     0x1B, 0x01
//   13   LED_1.Write(!x);
//   14   
//   15   LED_2.MakeOut().On().Off().Toggle().MakeInHighImpedance().ReadOnOff(x);
??main_1:
        SBI     0x17, 0x05
        CBI     0x18, 0x05
        SBI     0x18, 0x05
        LDI     R16, 32
        IN      R17, 0x18
        EOR     R17, R16
        OUT     0x18, R17
        CBI     0x17, 0x05
        CBI     0x18, 0x05
        SBIS    0x18, 0x05
        RJMP    ??main_2
        CBI     0x18, 0x05
        RJMP    ??main_3
??main_2:
        SBI     0x18, 0x05
//   16   LED_2.WriteOnOff(!x);
//   17
//   18   while(1);

相关帖子

沙发
51小刚| | 2011-7-10 14:42 | 只看该作者
来抢个上官的沙发坐坐

使用特权

评论回复
板凳
hotpower| | 2011-7-10 16:48 | 只看该作者
支持在AVR上CPP

使用特权

评论回复
地板
plc_avr| | 2011-7-11 06:23 | 只看该作者
这个工程全了么?C++的工程效率挺高啊,端口操作全一条指令.

使用特权

评论回复
5
CC2530|  楼主 | 2011-7-11 07:09 | 只看该作者
这个工程全了么?C++的工程效率挺高啊,端口操作全一条指令.
plc_avr 发表于 2011-7-11 06:23


完整的工程,
楼上要吗?

使用特权

评论回复
6
JAKEA| | 2011-7-11 07:19 | 只看该作者
哈哈

使用特权

评论回复
7
bnyuli| | 2011-7-11 14:01 | 只看该作者
哈哈哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:该死的ST,还不赶快出STM8L小FLASH片子

0

主题

262

帖子

1

粉丝