亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 外部中斷模擬uart演示程序.txt

?? 這是單片機(jī)C51的各種代碼包
?? TXT
字號(hào):
外部中斷模擬UART演示程序-(精)(18570字)hotpower2004-9-4 23:12:05[72次]

外部中斷模擬UART演示程序(只經(jīng)過了軟件仿真) 
HotPower 發(fā)表于 2004-7-8 01:32 侃單片機(jī) ←返回版面   舉報(bào)該貼 

/*------------------------------------------------
      外部中斷模擬UART演示程序
--------------------------------------------------*/
#include <AT89X52.h>
#include <intrins.h>
/*------------------------------------------------
AT89S5X
--------------------------------------------------*/
sfr   AUXR    = 0x8e;
sfr   WDTRST  = 0xa6;
sfr16 TIMEER2 = 0xcc;
sfr16 RCAP    = 0xca;

sbit  RX      = P3^3;//INT1
sbit  TX      = P1^1;

/*------------------------------------------------
             74HC164串行顯示數(shù)據(jù)
--------------------------------------------------*/
#define LedSegA   0x40
#define LedSegB   0x20
#define LedSegC   0x10
#define LedSegD   0x08
#define LedSegE   0x04
#define LedSegF   0x02
#define LedSegG   0x01
#define LedSegH   0x80
#define LedSegNul 0x00

#define LedChar0 LedSegA + LedSegB + LedSegC + LedSegD + LedSegE + LedSegF
#define LedChar1           LedSegB + LedSegC
#define LedChar2 LedSegA + LedSegB           + LedSegD + LedSegE           + 
LedSegG
#define LedChar3 LedSegA + LedSegB + LedSegC + LedSegD                     + 
LedSegG
#define LedChar4           LedSegB + LedSegC                     + LedSegF + 
LedSegG
#define LedChar5 LedSegA           + LedSegC + LedSegD           + LedSegF + 
LedSegG
#define LedChar6 LedSegA           + LedSegC + LedSegD + LedSegE + LedSegF + 
LedSegG
#define LedChar7 LedSegA + LedSegB + LedSegC
#define LedChar8 LedSegA + LedSegB + LedSegC + LedSegD + LedSegE + LedSegF + 
LedSegG
#define LedChar9 LedSegA + LedSegB + LedSegC + LedSegD           + LedSegF + 
LedSegG
#define LedCharA LedSegA + LedSegB + LedSegC           + LedSegE + LedSegF + 
LedSegG
#define LedCharB                     LedSegC + LedSegD + LedSegE + LedSegF + 
LedSegG
#define LedCharC LedSegA                     + LedSegD + LedSegE + LedSegF
#define LedCharD           LedSegB + LedSegC + LedSegD + LedSegE           + 
LedSegG
#define LedCharE LedSegA                     + LedSegD + LedSegE + LedSegF + 
LedSegG
#define LedCharF LedSegA                               + LedSegE + LedSegF + 
LedSegG



void MainInit(void);//系統(tǒng)初始化
void SystemInit(void);//系統(tǒng)初始化
void SystemIoInit(void);//系統(tǒng)接口初始化
void SystemSetup(void);//系統(tǒng)設(shè)置
void UserSetup(void);//用戶運(yùn)行環(huán)境設(shè)置
void TimeInit(void);//定時(shí)器初始化
void ClrWdt(void);//喂狗


//全局變量定義
typedef struct Systemstruct{//系統(tǒng)數(shù)據(jù)結(jié)構(gòu)聲明
  unsigned char T0Count;//串行接收計(jì)數(shù)器
  unsigned char Count;//串行數(shù)據(jù)接收個(gè)數(shù)
  unsigned int  RamTest;//內(nèi)存測(cè)試寄存器
  unsigned char SBUF;//串行接收數(shù)據(jù)
  unsigned char RXBUF[16];//串行數(shù)據(jù)接收緩沖區(qū)
}SystemData;

SystemData SystemBuffers;//申請(qǐng)系統(tǒng)數(shù)據(jù)結(jié)構(gòu)

void main(void)
{
  MainInit();//系統(tǒng)初始化
  while (1) {//主循環(huán)
    EA = 1;//保證中斷可靠
    PCON |= 0x01;//進(jìn)入空閑狀態(tài)
    _nop_();
    _nop_();
  }
}
/*------------------------------------
         外部INT0中斷服務(wù)程序
------------------------------------*/
void int0proc() interrupt IE0_VECTOR
{
}
/*------------------------------------
         定時(shí)器T1中斷服務(wù)程序
------------------------------------*/
void T1_VECTOR() interrupt TF1_VECTOR
{
}
/*------------------------------------
         外部INT1中斷服務(wù)程序
------------------------------------*/
void int1proc() interrupt IE1_VECTOR using 1
{
  if (!RX && SystemBuffers.T0Count == 0) {//!RX主要防止誤觸發(fā)
    TL0 = 0x80;//2400bps(我搞不清具體的數(shù)值),用于測(cè)起始位
    TH0 = 0xc0;//4800bps(我搞不清具體的數(shù)值),用于數(shù)據(jù)及停止位
    TF0 = 0;
    TR0 = 1;//啟動(dòng)定時(shí)器0
    ET0 = 1;//開放T0中斷,首次測(cè)起始位
    EX1 = 0;//自毀中斷
  }
}
/*------------------------------------
         定時(shí)器T0中斷服務(wù)程序
------------------------------------*/
void T0_VECTOR() interrupt TF0_VECTOR using 1
{
  if (SystemBuffers.T0Count == 0) {
    if (!RX) {//是起始位
      SystemBuffers.T0Count ++;
    }
  }
  else {
    if (SystemBuffers.T0Count >= 9) {//停止位
      TH0 = 0;//1200bps(我搞不清具體的數(shù)值)
      TL0 = 0;
      SystemBuffers.T0Count = 0;//下次再找起始位
      if (RX) {//是停止位
        if (SystemBuffers.Count < 16) {//緩沖區(qū)數(shù)據(jù)未滿可繼續(xù)存入數(shù)據(jù)
          SystemBuffers.RXBUF[SystemBuffers.Count] = SystemBuffers.SBUF;//存入一
個(gè)字節(jié)
          SystemBuffers.Count ++;
        }
        TR0 = 0;//關(guān)閉定時(shí)器0
        ET0 = 0;//自毀中斷
        EX1 = 1;//開放INT1中斷,下次測(cè)起始位
      }
    }
    else {//SystemBuffers.T0Count=1..8為8位串行數(shù)據(jù)
      SystemBuffers.SBUF >>= 1;
      if (RX) SystemBuffers.SBUF |= 0x80; 
      SystemBuffers.T0Count ++;
    }
  }
}

void MainInit(void)//系統(tǒng)初始化
{
  SystemIoInit();//系統(tǒng)接口初始化
  ClrWdt();//清除看門狗計(jì)數(shù)器
  if (SystemBuffers.RamTest != 0x55aa) {//內(nèi)存測(cè)試
    SystemInit();//系統(tǒng)上電初始化
  }
  SystemSetup();//系統(tǒng)運(yùn)行環(huán)境設(shè)置
  UserSetup();//用戶運(yùn)行環(huán)境設(shè)置
}
void SystemIoInit(void)
{
  IE = 0x00;//關(guān)閉中斷
  P0 = 0xff;//P0口初始化
  P1 = 0xff;//P1口初始化
  P2 = 0xff;//P2口初始化
  P3 = 0xff;//P3口初始化
}

void SystemInit(void)//系統(tǒng)初始化
{
unsigned char i;
  SystemBuffers.RamTest = 0x55aa;//內(nèi)存初始化
  SystemBuffers.T0Count = 0;
  SystemBuffers.Count = 0;
  for (i = 0; i < 16; i ++)
    SystemBuffers.RXBUF[i] = 0;
}

void SystemSetup(void)//系統(tǒng)設(shè)置
{
  AUXR = 0x01;//關(guān)閉EMI
}
void UserSetup(void)//用戶運(yùn)行環(huán)境設(shè)置
{
  TimeInit();
  SCON = 0x50;//UART的工作方式為方式2,且允許接收數(shù)據(jù)
  TMOD = 0x22;//定時(shí)器1工作在方式2下,定時(shí)器0也工作在方式2
  TCON = 0x45;//啟動(dòng)定時(shí)器1并設(shè)定外部中斷0的中斷方式
  IP = 0x10;  //設(shè)定終端優(yōu)先級(jí),UART的中斷優(yōu)先級(jí)比T0的中斷優(yōu)先級(jí)要高
  IE = 0x94;  //開總中斷并允許INT1和串行口中斷
}

/*----------------------------------
       定時(shí)器定時(shí)參數(shù)設(shè)置
----------------------------------*/
void TimeInit()
{
/*----------------------------------
      定時(shí)器0定時(shí)參數(shù)設(shè)置
----------------------------------*/
  TL0 = 0;
  TH0 = 0;//當(dāng)波特率為1200bps時(shí),要求定時(shí)器0每過278uS就中斷一次
//  TR0 = 1;//啟動(dòng)定時(shí)器0
/*----------------------------------
      定時(shí)器0定時(shí)參數(shù)設(shè)置
----------------------------------*/
  TL1 = 0xfa;
  TH1 = 0xfa;//設(shè)置波特率為4800bps
  TR1 = 1;//啟動(dòng)定時(shí)器1
/*----------------------------------
      定時(shí)器2定時(shí)參數(shù)設(shè)置
----------------------------------*/
//  TIMEER2 = 0x900;//2.5mS
//  RCAP    = 0x900;
//  TR2     = 1;//啟動(dòng)定時(shí)器2
}


void ClrWdt(void)//喂狗
{
  WDTRST = 0x1e;//清89s52內(nèi)狗
  WDTRST = 0xe1;//清89s52內(nèi)狗
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91香蕉国产在线观看软件| 香蕉av福利精品导航| 精品亚洲免费视频| 欧美mv日韩mv国产网站app| 精品在线免费观看| 亚洲国产精华液网站w| 成人午夜碰碰视频| 亚洲一区二区三区三| 欧美日韩国产bt| 九色综合狠狠综合久久| 国产精品人妖ts系列视频| 一本久久a久久免费精品不卡| 亚洲一区在线观看视频| 91麻豆精品国产91久久久更新时间| 久久精品99久久久| 国产精品视频一区二区三区不卡| 在线观看视频欧美| 国内精品视频一区二区三区八戒| 国产精品成人免费在线| 91精品国产综合久久精品性色| 精品写真视频在线观看| 亚洲精品视频一区| 日韩欧美国产系列| 91免费在线播放| 免费观看在线色综合| 中文字幕亚洲一区二区av在线| 欧美三区在线观看| 从欧美一区二区三区| 性久久久久久久| 中文字幕高清一区| 91精品国产欧美一区二区18| 成人午夜视频在线观看| 男女激情视频一区| 一区二区国产盗摄色噜噜| 26uuu精品一区二区| 欧美亚洲国产一卡| 成人黄色大片在线观看| 午夜精品视频一区| 国产精品国产精品国产专区不蜜| 欧美高清视频在线高清观看mv色露露十八 | 久久蜜臀精品av| 欧美另类高清zo欧美| av亚洲精华国产精华精华| 久久99精品久久久久婷婷| 亚洲一区影音先锋| 亚洲欧洲www| 久久久欧美精品sm网站| 91麻豆精品国产91久久久| 色婷婷精品大视频在线蜜桃视频 | 天天操天天综合网| 亚洲视频图片小说| 国产欧美中文在线| 久久奇米777| 日韩精品一区二区三区老鸭窝| 欧美中文字幕不卡| 91免费视频网址| 99国产精品久久| 成人av高清在线| 成人免费看黄yyy456| 国产九九视频一区二区三区| 精品一区二区国语对白| 奇米影视一区二区三区小说| 天天av天天翘天天综合网色鬼国产 | 国内不卡的二区三区中文字幕| 日日噜噜夜夜狠狠视频欧美人 | 中文字幕第一区综合| 久久久久国产精品人| 久久嫩草精品久久久久| 精品久久国产老人久久综合| 日韩欧美色电影| 精品国产123| 久久众筹精品私拍模特| 久久久久综合网| 国产拍欧美日韩视频二区| 国产欧美一区视频| 国产精品三级电影| 中文字幕一区二区5566日韩| 亚洲人成精品久久久久| 一区二区激情小说| 亚洲福中文字幕伊人影院| 香蕉av福利精品导航| 奇米888四色在线精品| 美女免费视频一区| 国产一区999| 成人午夜伦理影院| 色婷婷亚洲婷婷| 欧美日韩高清影院| 日韩欧美一级特黄在线播放| 精品欧美一区二区三区精品久久 | 91美女片黄在线| 欧美在线免费观看亚洲| 欧美一区二区三区免费| 久久午夜老司机| 中文字幕一区在线观看| 亚洲一级二级在线| 蜜桃av一区二区三区电影| 国产suv精品一区二区三区| 99久久99久久精品国产片果冻 | 99久久国产综合精品女不卡| 欧美视频一区在线观看| 精品久久久久久久久久久久久久久久久 | 免费成人av资源网| 国产a精品视频| 欧美亚洲愉拍一区二区| 欧美一级欧美一级在线播放| 国产午夜亚洲精品午夜鲁丝片| 中文字幕在线不卡国产视频| 亚洲成国产人片在线观看| 国产麻豆视频精品| 色综合久久久久久久久久久| 91精品婷婷国产综合久久竹菊| 久久久一区二区三区| 亚洲精品国产品国语在线app| 日韩av电影免费观看高清完整版在线观看| 九九热在线视频观看这里只有精品| 高清成人免费视频| 91精品在线观看入口| 亚洲欧洲另类国产综合| 美女视频黄频大全不卡视频在线播放| 成人美女视频在线看| 欧美日韩高清一区二区不卡 | 亚洲男人的天堂一区二区| 麻豆91免费观看| 色悠悠久久综合| 精品国产乱子伦一区| 一区二区久久久久| 国产成人一区在线| 欧美一区二区三区日韩视频| 综合激情成人伊人| 狠狠色综合播放一区二区| 91福利国产精品| 日本一区二区三区国色天香| 日本sm残虐另类| 在线观看日韩高清av| 国产精品视频一二三| 精品无码三级在线观看视频| 欧美亚洲综合一区| 1024国产精品| 国产乱对白刺激视频不卡| 在线观看91av| 亚洲精品福利视频网站| 国产iv一区二区三区| 精品久久久久久久久久久久包黑料| 香蕉乱码成人久久天堂爱免费| 成人午夜私人影院| 久久久www成人免费毛片麻豆| 日韩中文字幕av电影| 在线影视一区二区三区| 国产精品第13页| 成人精品视频.| 久久久久久一二三区| 久久精品国产久精国产| 777xxx欧美| 日本视频一区二区三区| 欧美另类久久久品| 午夜精品一区二区三区免费视频| 欧美最猛性xxxxx直播| 夜夜夜精品看看| 在线观看日韩一区| 亚洲福利视频导航| 欧美精品色综合| 五月婷婷激情综合网| 欧美精品视频www在线观看| 五月激情丁香一区二区三区| 91片黄在线观看| 亚洲制服丝袜一区| 欧美三级乱人伦电影| 亚洲第四色夜色| 5566中文字幕一区二区电影| 人人狠狠综合久久亚洲| 日韩三级在线观看| 久88久久88久久久| 欧美激情一区二区三区四区| 成人高清在线视频| 一区二区三区国产精品| 欧美色图天堂网| 青青草国产成人99久久| 久久综合av免费| av高清不卡在线| 一区二区三区成人在线视频| 欧美日本韩国一区二区三区视频| 日欧美一区二区| 久久久国产午夜精品| 成人不卡免费av| 亚洲国产三级在线| 欧美大尺度电影在线| 国产夫妻精品视频| 亚洲欧美另类久久久精品| 欧美精品欧美精品系列| 国产一区不卡在线| 中文字幕综合网| 8v天堂国产在线一区二区| 国产在线播放一区二区三区| 中文字幕综合网| 欧美一区二区精美| eeuss国产一区二区三区| 亚洲在线视频免费观看| 精品久久久久99| 一本一本大道香蕉久在线精品 | 色8久久精品久久久久久蜜|