请教大侠!这是什么意思
51单片机工作在定时器模式1下,假设已经计数完毕令这时有以下操作outcomeH=TH0;
outcomeL=TL0;
count=outcomeH;
count<<=8;
count=count|outcomeL;
有什么效果呀 回复【楼主位】309946641
-----------------------------------------------------------------------
两个8位合成一个16位的变量。 回复【1楼】huayuliang 花生
-----------------------------------------------------------------------
谢谢啦 回复【2楼】309946641
再请教一下我写的这个程序为什么检查不到TI=1呀总是停在while(TI==0);处呀,嘿不明白
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit LED1=P1^0;
sbit LED2=P1^3;
sbit k1=P3^3;
void Delay(uint x)
{
uchar t;
while(x--)for(t=0;t<120;t++);
}
void xiang(uchar c)
{
SBUF=c;
while(TI==0);
TI=0;
}
void main()
{
uchar i=0;
SCON=0x40; //模式1
TMOD=0x20;
PCON=0x00;//波特率不备曾
TH1=0xfd; //9600
TL1=0xfd;
TI=0;
TR1=0;
while(1)
{
if(k1==0)
{
while(k1==0);
i=(i+1)%4;
}
switch(i)
{
case 0:
LED1=LED2=1;
break;
case 1:
xiang('A');
LED1=~LED1;LED2=1;
break;
case 2:
xiang('B');
LED2=~LED2;LED1=1;
break;
case 3:
xiang('C');
LED1=~LED1;LED2=LED1;
break;
}
Delay(100);
}
}
页:
[1]