• 大小: 24KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2022-08-26
  • 语言: 其他
  • 标签: STC12C5A60S2  

资源简介

STC12C5A60S2串口2进行串口通信

资源截图

代码片段和文件信息

#include
#define uchar unsigned char
#define uint unsigned int
#define FOSC 11059200L
#define BAUD 9600
uchar code table[]=“You choice the  KEY.\n“;
uchar aflagflab;
int nKEY;
void delay(uint x)
{
uint y;
for(x;x>0;x--)
for(y=1100;y>0;y--);
}
void init()
{
S2CON=0x50;
BRT = -(FOSC/32/BAUD);      //设置独立波特率发生器的重载初值    
AUXR |=0x14; //独立波特率发生器工作在1T模式   0001 0100
AUXR &=0xf7;  //       1111 0111
IE2 |=0x01;
P2=0xff;  //P2口为一组独立按键
// EA=1;  
}

void sendS2(uchar k)
{
S2BUF=k;
while(!(S2CON&S2TI));
S2CON &=~S2TI;
}

void main()
{
int i;
bit ES2;
init();
while(1)
{
if(flag==1)   //判断是否开启通信
{
IE2 &=0xfe;
ES2=IE2&0x01;
while(!ES2)
{
KEY=0;
if(P2!=0xff)
{
delay(10);  //消抖
if(P2!=0xff)
{
KEY=P2&0xff;
P2=0xff;
while(P2!=0xff); //是否松开按键
}
}
switch(KEY)
{
case 0xff:fla=0;break;
case 0xfe:fla=1;b=‘1‘;break;
case 0xfd:fla=1;b=‘2‘;break;
case 0xfb:fla=1;b=‘3‘;break;
case 0xf7:fla=1;b=‘4‘;break;
case 0xef:fla=1;b=‘5‘;break;
case 0xdf:fla=1;b=‘6‘;break;
case 0xbf:fla=1;b=‘7‘;break;
case 0x7f:fla=1;b=‘8‘;break;
}
if(fla==1)
{
for(i=0;i<15;i++)
{
sendS2(table[i]);
}
sendS2(b);
for(i=15;i<21;i++)
{
sendS2(table[i]);
}
P2=0xff;
fla=0;
}
IE2 |=0x01;
}
}
}
}

void urat() interrupt 8
{
EA=0;
if(S2CON&S2RI)
{
S2CON &=~S2RI;
a=S2BUF;
n=a-‘0‘;
switch(n)
{
case 1:flag=1;break;   //开启通信
case 0:flag=0;break;
}
}
if(S2CON&S2TI)
{
S2CON &=~S2TI;
}
EA=1;
}  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        5211  2015-01-26 20:05  上位机通过串口2进行通信\1
     文件        1304  2015-01-26 20:05  上位机通过串口2进行通信\1.hex
     文件          37  2015-01-26 20:05  上位机通过串口2进行通信\1.lnp
     文件        8180  2015-01-26 20:05  上位机通过串口2进行通信\1.M51
     文件         383  2015-01-26 20:05  上位机通过串口2进行通信\1.plg
     文件       56049  2015-01-26 20:05  上位机通过串口2进行通信\1.uvopt
     文件       13223  2015-01-19 19:28  上位机通过串口2进行通信\1.uvproj
     文件       56047  2015-01-26 20:02  上位机通过串口2进行通信\1_uvopt.bak
     文件       13219  2015-01-19 18:46  上位机通过串口2进行通信\1_uvproj.bak
     文件        1812  2015-01-26 20:05  上位机通过串口2进行通信\main.c
     文件        6324  2015-01-26 20:05  上位机通过串口2进行通信\main.LST
     文件        6015  2015-01-26 20:05  上位机通过串口2进行通信\main.OBJ

评论

共有 条评论