首 页 学 苑 例 子 工 具 下 载 商 城 论 坛
     
 

  I/O 端口的设置


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

 

 
 

链接:

 

周立功 微雪电子 21IC社区 正强单片坊 百度
双龙电子 我们的AVR 力源信息 www.atmel.com 电子之城
共有人次访问本站 AVR单片机DIY 美信中国 www.fastavr.com ARM开发网
宁波三和壳体公司 陕西捷易电子 华强电子世界 www.mcselec.com 东创科技

Copyright©2005 Basicavr.com Email:agui868@21cn.com  TEL:13798456680 FAX:075584717022

地址:深圳市布吉镇坂田象角塘新村吉祥花园36号 QQ:543527753 粤ICP备05079885号