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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

基于51單片機之串口中斷方式實驗

作者:佚名   來源:CaKen工作室   點擊數:  更新時間:2014年08月28日   【字體:

**************************  Copyright(C) CaKe  ****************************************

========================================================================================
==============**版權信息   : CaKen工作室                            ==============
==============**文件名     : main.c              ==============
==============**作者       : CaKen             ==============
==============**版本號     : V1.0              ==============
==============**時間       : 2014.08.27               ==============
==============**功能描述   : 串口中斷實驗測試            ==============
========================================================================================
****************************************************************************************
 
#include
#define uchar unsigned  char
#define uint unsigned int
uchar idata trdata[]={'C','a','K','e','n','_', 'Z','H','C','K','-','5','1',0xaa};
sbit KEY = P3^2;
***************************************************************************************
函數名:UART_Init();
調  用:();
 
備  注:
****************************************************************************************
void UART_Init(void)
{
   SCON = 0x50;     //串口工作方式為1 , 串行允許接收
   TMOD = 0x20;     //定時器1 工作在方式2
   TH1  = 0xfd;     //波特率 9600bps fosc="11".0592MHz
   TL1  = 0xfd;
   EA   = 1;        //開總中斷
   ES   = 1;        //開串口中斷
   TR1  = 1;        //允許定時器1工作
}
 
***************************************************************************************
函數名:延時函數
調  用:();
****************************************************************************************
 
void delay1ms(uint i)
{
uchar j;
  while(i--)
  {
   for(j=0;j<115;j++)   //1ms基準延時程序
   {;}
  }
}
 
***************************************************************************************
函數名:Uart_SendChar();
調  用:();
參  數:
返回值:
結  果:
備  注:發送字符
****************************************************************************************
 
void Uart_SendChar(unsigned char dat)
{
   SBUF = dat; //待發送的數據寫入緩沖區
   while(!TI); //等待發送完成
   TI = 0;     //清零發送標志位
}
 
***************************************************************************************
函數名:Uart_SendString();
調  用:();
參  數:
返回值:
結  果:
備  注:發送字符串
****************************************************************************************
 
void Uart_SendString()
{ uchar i=0;
    while(trdata[i]!=0xaa)
  {
   SBUF=trdata[i];
        while(!TI);
        TI=0;
        i++;
     }
}
 
***************************************************************************************
函數名:
調  用:();
參  數:
返回值:
結  果:
備  注:
****************************************************************************************
void main(void)
{
    UART_Init(); //初始化串口
    while(1)
     {
    if(KEY==0)
     {
    delay1ms(20);
    if(KEY==0)
    {
      Uart_SendString();
   while(!KEY);//等待按鍵釋放
    }
  }
     }
}
 
***************************************************************************************
函數名:串口中斷函數
****************************************************************************************
 
void INT_UartRcv(void) interrupt 4
{
    unsigned char Rcv = 0;
    if(RI)                    //查詢接收標志位(有數據發送過來時置為1)
      {
         RI  = 0;        //接收標志位清零
         Rcv = SBUF;          //存儲緩沖區的數據
         P0  = SBUF;
         Uart_SendChar(Rcv);  //讓從計算機上傳到單片機的數據 , 傳回的計算機顯示
 
      }
}
 
=======================================================================================
 -------------------      CaKen工作室  原創作品     --------------------
 -------------------            CaKen工作室  版權所有       --------------------
========================================================================================
關閉窗口

相關文章

主站蜘蛛池模板: 久久精品色欧美aⅴ一区二区 | 欧美日韩成人网 | 欧美a区 | 综合色在线 | 四季久久免费一区二区三区四区 | 精品亚洲一区二区 | 精品成人一区 | 国产成人自拍一区 | 精品久久99 | 欧美一区二区三区在线观看视频 | 综合天天久久 | 日韩av一区二区在线观看 | 91精品国产色综合久久 | 正在播放国产精品 | 国产精品视频久久 | 一区二区三区免费观看 | 久久综合香蕉 | 国产日韩一区二区三免费高清 | 国产精品一区二区三级 | 久久久国产一区二区三区 | 免费午夜电影 | 亚洲精品视频一区二区三区 | 精品视频在线观看 | 你懂的免费在线 | 国产成人精品免高潮在线观看 | 久久综合一区 | 亚洲精品一区二区三区蜜桃久 | 国产麻豆乱码精品一区二区三区 | 亚洲国产精品成人综合久久久 | 久精品久久 | 玖玖国产 | 欧美精品一区二区三区在线 | 91五月天 | 久久国产精品久久久久久 | 国产精品激情小视频 | 免费在线观看一区二区三区 | 久久久精品影院 | 一区二区在线观看av | 91亚洲国产成人久久精品网站 | 国产精品永久久久久 | 天天干b|