这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 设计工具 » STC12C5A60S2双串口应用

共1条 1/1 1 跳转至

STC12C5A60S2双串口应用

高工
2013-10-25 15:32:05     打赏

增强型8051芯片,具有双串口。我以前通常采用软件模拟一个串口来实现,要占用太多的系统资源。该芯片可以通过一个内置的波特率发生器,实现两个串口同时工作在一个波特率下,或一个通过内置,一个通过TH1实现不同波特率的通讯。通过配置AUXR来配置波特率发生器 BRT设置波特率重入装载数,S2CON 配置通讯模式。

例如: 在12MHz 频率下 两串口工作在 9600,8,1 配置如下

//配置串口1

SCON=0x40; /* n,8,1 */

PCON=0x80; //Bps加倍

TCON=0;

ES=1;

REN=1;

//STC 串口2定义

AUXR=0x1d; //配置两个串口波特率发生器采用内置,1个时钟/机器周期

BRT=0xb2; //重装载数

S2CON=0x50;

IE2=0x01; //ES2=1 //开中端

//串口1中断

void serial_1() interrupt 4 using 2

{

unsigned char in_data;

if(RI)

{

in_data=SBUF;

RI=0;

}

if(TI)

{

TI=0;

}

}

//串口2中断

void serial_2() interrupt 8 using 2

{

unsigned char rti;

unsigned char in_data;

rti=S2CON;

rti=rti 0x01;

if (rti==1) // 接收

{

In_Data=S2BUF;

S2CON=S2CON 0xfe;

}

else // 发送

{

S2CON=S2CON 0xfd;

//S2BUF=0x55; //发送数据

}

}




关键词: datasheet中文资料     datasheet p    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]