dajianghe 发表于 2008-1-26 22:39:03

请教马老师avr位操作的问题!!

我用TINY26,请教问题,PORTB.0作为输入,PORTB.1~PORTB.7作为输出,在操作输出时,影响到输入口的状态,如:PORTB &= 0X3F,应该怎么处理才不会影响输入,谢谢!

machao 发表于 2008-1-27 02:41:51

当PORTB.0为输入时,是读PINB.0的值,但改变PORTB.0的值会改变PORTB.0的内部上拉电阻的使用,进而可能会影响PORTB.0的输入了.

解决办法:
1.在PORTB.0的外部脚上增加一个外部的上拉电阻.

2.如果还是使用PORTB.0的内部上拉的话,要使得不受其它口线输出的影响时:
a)保持内部上拉有效: PORTB = 0xXX | 0x01;
b)保持内部上拉无效: PORTB = 0xXX & 0xfe;
页: [1]
查看完整版本: 请教马老师avr位操作的问题!!