微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求助IO口无法检测到输入状态

求助IO口无法检测到输入状态

时间:10-02 整理:3721RD 点击:
已经困扰了我好几天了,我要做一个循迹小车 现在遇到的问题是 传感器检测到黑线而且传回高电平到A口 但是A口不读取这个电平 就是说检测A口的话他的电平不变化 这是我的部分程序 有什么问题请大神指点。感激不尽!
void IOinit(void)
{
DDRA |= 0x00; //PA口输入
PORTA = 0x00;
DDRB=0xFF; //PB口输出
PORTB=0Xff;
DDRD=0xFF; //PD 输出
PORTD|=0x30;
}
……
void main(void)
{
delay_long(50);
IOinit();
T1init();
while(1)
{
if(PINA==0x04) //中间左灯
{
PORTB=0x00;
}
if(PINA==0x02) //中间右灯
{
PORTB=0x00;
}
}
}
MAIN函数这么写是为了检测A口到底有没有读到电平 现在的结果是 传感器有反应有电平变化 但是接到A口 A口无法读取这种电平变化。B的电平就不改变。求解这是为什么?

检查一下你的针脚配置的输入输出是否正确~~如果1是输出,0输入,那么DDRA |= 0x00;这句话设置输入,是不是应该按位与

我是让IO口设置为输入状态  然后接一个传感器  由传感器传给IO口 高低电平的信息  但是现在IO口无法接收到这种信息。为什么呢

你先确定信号到底传达了A口的引脚没有,然后就是换个IO试试,有可能IO烧了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top