当前位置:首页 > 单片机 > 单片机
[导读] 我们经常要设置某个I/O口为输出,或者输入,或者带上拉的输入,在fastavr中是这样的:例子:设置整个A口为输出:ddra=255'十进制表示,行首或行尾的单引号之后为注释,默认是绿色ddra=&hff‘十六进

我们经常要设置某个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是非可以用来取反。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭