📄 复件 serial.c
字号:
/*
黄 clock 5 红
绿 data 1 黑
黑 地 3
*/
#include <reg51.H>
#include <stdio.h>
typedef unsigned char UCHAR;
UCHAR ucTmp = 0,i=0,j=0;
sbit P1_0 = P1^0;
sbit P2_0 = P2^0;
void main(void)
{
//long j;
//unsigned char a;
SCON = 0xD8; //串口方式1,允许接收
TMOD = 0x20; //定时器1 定时方式2
TCON = 0x40; //设定时器1 开始计数
TH1 = 0xFD; //11.0592MHz 1200 波特率
TL1 = 0xFD;
TI = 1;
TR1 = 1; //启动定时器
EA = 1;
IT0=1;
EX0=1;
while(1)
{
if(!P2_0) i=0;
P0=ucTmp;
};
}
void exint0_isr() interrupt 0 using 0
{
i++;j++;
P0 = j;
if(1==i) return;
if(2<=i&&i<=9)
{
if(P1_0)
{
ucTmp|=(1<<(9-i));
}
else
{
ucTmp|=(0<<(9-i));
}
if(9==i)
{
printf("\r\n%bu,0x%bx",ucTmp,ucTmp);
}
return;
}
if(11==i)
{
ucTmp=0;
i=0;
}
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -