久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

立即注冊(cè) 登錄
返回首頁

uid:372505的個(gè)人空間

日志

STC雙串口程序

已有 1619 次閱讀2018-7-16 14:22

引腳定義:串行口1    發(fā)送————TxD/P3.1 接收————RxD/P3.0

      串行口2 發(fā)送————TxD2/P1.3;接收————RxD2/P1.2

功能描述:STC12雙串口通信(中斷方式)

          當(dāng)串行口1接收數(shù)據(jù)后,將此數(shù)據(jù)由串行口2發(fā)送出去

          當(dāng)串行口2接收數(shù)據(jù)后,將此數(shù)據(jù)由串行口1發(fā)送出去

***********************************************************************/

#include<STC12C5A.h>

#include<intrins.h>

#define S2RI 0x01   //串口2接收中斷請(qǐng)求標(biāo)志位

#define S2TI 0x02   //串口2發(fā)送中斷請(qǐng)求標(biāo)志位

unsigned char flag1,flag2,temp1,temp2;

/****************串行口初始化函數(shù)****************/

void InitUART(void)

{

    TMOD = 0x20;    //定時(shí)器1工作在方式2  8位自動(dòng)重裝

    SCON = 0x50;    //串口1工作在方式1  10位異步收發(fā) REN=1允許接收

    TH1 = 0xFA;        //定時(shí)器1初值

    TL1 = TH1;

    TR1 = 1;        //定時(shí)器1開始計(jì)數(shù)

    EA =1;  //開總中斷

    ES =1;  //開串口1中斷

 

    S2CON = 0x50;   //串口2工作在方式1  10位異步收發(fā) S2REN=1允許接收

    BRT = 0xFA;        //獨(dú)立波特率發(fā)生器初值

    AUXR = 0x10;    //BRTR=1 獨(dú)立波特率發(fā)生器開始計(jì)數(shù)

    IE2 =0x01;  //開串口2中斷  ES2=1

}

/****************串行口1發(fā)送****************/

void UART_1SendOneByte(unsigned char c)

{

    SBUF = c;

    while(!TI);      //TI=0,在此等待

    TI = 0;

}

 

/*void UART_1sendstr(unsigned char *s)

{

     while(*s!='\o')   // \0表示字符串結(jié)束標(biāo)志,通過檢測(cè)字符串末尾

      {

       UART_1SendOneByte(*s);

       s++;

      }

}*/

/****************串行口2發(fā)送****************/

void UART_2SendOneByte(unsigned char c)

{

    S2BUF = c;

    while(!(S2CON&S2TI));  //S2CON=50,在此等待 ;S2CON=52,發(fā)送中斷信號(hào),執(zhí)行下一

    S2CON&=~S2TI;       //S2TI=0

}

 

/*void UART_2Sendstr(unsigned char *s)

{

     while(*s!='\o')   // \0表示字符串結(jié)束標(biāo)志,通過檢測(cè)字符串末尾

      {

       UART_2SendOneByte(*s);

       s++;

      }

}*/

/*****************主函數(shù)******************/

void main(void)

{

        InitUART();  //串行口初始化

while(1)

{

//如果串口1接收到數(shù)據(jù),將此數(shù)據(jù)由串口2發(fā)送

if(flag1==1)

{

flag1=0;

UART_2SendOneByte(temp1);

}

//如果串口2接收到數(shù)據(jù),將此數(shù)據(jù)由串口1發(fā)送

if(flag2==1)

{

flag2=0;

UART_1SendOneByte(temp2);

}

}

}

/************串行口1中斷處理函數(shù)*************/

void UART_1Interrupt(void) interrupt 4

{

if(RI==1)

{

RI=0;

flag1=1;

temp1=SBUF;

}

}

/************串行口2中斷處理函數(shù)*************/

void UART_2Interrupt(void) interrupt 8

{

if(S2CON&S2RI)

{

S2CON&=~S2RI;

flag2=1;

temp2=S2BUF;

}

}


路過

雞蛋

鮮花

握手

雷人

評(píng)論 (0 個(gè)評(píng)論)

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

返回頂部
主站蜘蛛池模板: 午夜精品影院 | 欧美成人免费电影 | 午夜电影福利 | 欧美日韩精品一区二区 | 看av电影| 日韩欧美二区 | 成人h免费观看视频 | 老外几下就让我高潮了 | 日韩一级一区 | 日韩在线观看网站 | 亚卅毛片| 国产丝袜一区二区三区免费视频 | 久久国产日本 | 亚洲视频在线观看 | 99久久久久久 | 午夜影院在线免费观看视频 | 久久亚洲欧美日韩精品专区 | japanhd美女动 | 天天操网| 久久精品国产免费看久久精品 | 久久在线 | 成人在线精品视频 | 欧美日韩在线综合 | 国产一区二区三区四区在线观看 | 91影院| 国产主播第一页 | 国产在线精品一区 | 日韩av免费在线观看 | 欧美久久久久久久久 | 成人精品视频在线观看 | 亚洲男人的天堂网站 | 日韩成人在线观看 | 日韩中文一区 | 天天看天天摸天天操 | 欧美日韩在线视频观看 | 国产精品69毛片高清亚洲 | 久久噜噜噜精品国产亚洲综合 | 正在播放一区二区 | 在线观看中文字幕av | 久久中文免费视频 | 色网站入口 |