您的位置:首页单片机AVR单片机
内容搜索:
阅读内容
背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默认  

AVR I/O 端口的设置

[日期:2008-05-14 ] [来源:网络 作者:佚名] [字体: (投递新闻)
我们经常要设置某个I/O口为输出,或者输入,或者带上拉的输入,在fastavr中是这样的:

例子:

设置整个A口为输出:

ddra=255    '十进制表示,行首或行尾的单引号之后为注释,默认是绿色

ddra=&hff  ‘十六进制表示,十六进制数加前缀&h

ddra=&B11111111   '二进制表示,二进制数加前缀&B

设置A口高四位为输出,低四位为输入:

ddra=&B11110000

porta=porta Or &b00001111   '用逻辑或的方式打开低四位的上拉而不影响高四位的输出状态

设置整个B口为输入:

ddrb=0

ddrb=&h00

ddrb=&b00000000

打开B口的全部上拉,或B口部分上拉:

portb=255  portb=&b11000011    '当我们要在一行中写多条语句的时候请将它们用冒号隔开

设置单个I/O口:

set ddra.7   ’porta第七位为输出口

reset ddrb.0 ’portb.0为输入口

set portb.0  ’接着打开portb.0的上拉

当我们要清除某些位而不想影响其它位的时候,用逻辑与 and

porta=porta and &B01111110      'porta.7 ,porta.0 被清零而不影响其它位

总结:我们如果只是设置单个输入输出口,我们可以用set ,reset指令,如果要同时改变一个端口的几个位,那么最好

使用逻辑与或非来完成,and可以用来清零,or可以用来置位,not可以用来取反。

阅读:
录入:JETTA

推荐 】 【 打印
本文评论
      全部评论
发表评论


点评: 字数
姓名:
站长推荐