PIC单片机中 如果TRISX设置为0xff时,能不能写PORTX寄存器
答案:1 悬赏:20 手机版
解决时间 2021-02-25 06:29
- 提问者网友:别再叽里呱啦
- 2021-02-24 13:00
PIC单片机中 如果TRISX设置为0xff时,能不能写PORTX寄存器
最佳答案
- 五星知识达人网友:纵马山川剑自提
- 2021-02-24 14:20
如果将TRISX设置为0xFF,则这些相应的引脚为输入,如果你写PORTX,则不影响这些引脚!追问void lcd_wd(uchar com) //把com拆解成两部分输出
{
uchar i;
i=com;
i>>=5; //把高三位移到低三位
i&=0x07; //保留低三位
PORTA=i;
PORTB=com;
PORTB<<=3;
PORTB&=0xf8;
RS=0;
RW=0;
EN=0;
NOP();
EN=1;
delay(50);
}
为什么每次端口PORTA输出都是00,PORTB输出正确?追答这是你的A口设置问题,默认的情况下,A端口是模拟口(除RA4外),因此你要先把相关的端口设置为数字口,把ADCON1寄存器设置好就行了!
你没告诉人家你用的是什么型号的单片机,大概是PIC16系列的吧?
{
uchar i;
i=com;
i>>=5; //把高三位移到低三位
i&=0x07; //保留低三位
PORTA=i;
PORTB=com;
PORTB<<=3;
PORTB&=0xf8;
RS=0;
RW=0;
EN=0;
NOP();
EN=1;
delay(50);
}
为什么每次端口PORTA输出都是00,PORTB输出正确?追答这是你的A口设置问题,默认的情况下,A端口是模拟口(除RA4外),因此你要先把相关的端口设置为数字口,把ADCON1寄存器设置好就行了!
你没告诉人家你用的是什么型号的单片机,大概是PIC16系列的吧?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯