在学单片机,我想知道p0-p3 cpu是怎么控制它每个端口是干嘛用的,比如 p0数据地址分时复用,p1普通的i/o口,p2地址高八位地址,
p3第二功能!这些是怎么控制的?我怎么控制 其中一个端口是输入还是输出,是作为i/o,还是作为第二功能? 求大师指点!
关键是p3的第二功能怎么开启
追答不用专门开启,例如串口发送,你只要设置好串口工作状态(包括定时器,因定时器1为波特率发生器)然后启动定时器并执行 SBUF=a1;即可发送数据(汇编语言为MOV SBUF,A)
TMOD=0x21;//设置定时器1为工作方式2
SCON = 0x50; // 设定串行口工作方式
PCON &= 0xef; // 波特率不倍增
IE = 0x0; // 禁止任何中断
TH1=0xfd;
TL1=0xfd;//16MHz时波特率9600
还有个问题,p1读数据前先将端口锁存器置1, 这个在具体编程的时候,需要人工操作吗?
追答然后启动定时器(TR1=1)并执行 SBUF=a1 A的数据将以串行的形式出现在P3.1/TXD引脚上(当然此时你不能外接电路强行将其置0或置1)
p1读数据前先将端口锁存器置1, 这个在具体编程的时候,是需要人工操作的
但由于上电时端口即黙认为输入,所以如果你先前没有对其作输出0操作,也可省去这一步
谢谢你
本回答被提问者采纳