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

標題: 串口通訊中斷法程序 [打印本頁]

作者: daming    時間: 2014-12-30 01:47
標題: 串口通訊中斷法程序


  1. #include<reg52.h>

  2. unsigned char code trdata[]={'f','r','e','e','d','o','m',0x0a,0x00};
  3. sbit P32=P3^2;  //INT0的控制管腳
  4. unsigned char i,tmp;

  5. void delay1ms(unsigned int n)   //1ms基準延時
  6. {
  7. unsigned i;
  8. while(n--)
  9.   for(i=0;i<115;i++);
  10. }

  11. void main()
  12. {
  13. TMOD=0x20;  //定時器工作方式2,  8位自動重裝
  14. TH1=TL1=0xfd;  //產生9600的bps
  15. TR1=1;     //啟動T1
  16. EA=1;  //開放總中斷
  17. ES=1;  //允許串口中斷
  18. EX0=1;  //允許INT0中斷
  19. SCON=0x50;  //串口工作方式1,允許接受數據
  20. PCON=0x00;  //  不倍增bps
  21. while(1); //無限循環等待中斷
  22.   
  23. }

  24. void int0() interrupt 0   //INT0的中斷編號
  25. {
  26. if(P32==0){
  27.   delay1ms(20);  //消陡
  28.   if(P32==0){
  29.    i=0;
  30.    while(trdata[i]!=0x00){
  31.     SBUF=trdata[i];
  32.     while(!TI);    //等待數據傳送,傳完一個字節后TI=1
  33.     TI=0;
  34.     i++;
  35.    }
  36.    while(!P32);   //等待按鍵釋放
  37.   }
  38. }
  39. }

  40. void send_char()  interrupt 4  //串口中斷的編號
  41. {
  42. if(RI==1){     //收到1字節的數據時,RI=1,申請串口中斷
  43.   RI=0;     //軟件清0
  44.   tmp=SBUF;
  45.   P0=tmp;
  46.   SBUF=tmp;  //向PC發送數據
  47.   while(!TI);  //等待發送
  48.   TI=0;   //清0
  49. }
  50. }
復制代碼







歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久98 | 免费看片黄色 | 久久免费小视频 | 黄色一级在线观看 | 美女免费视频网站 | 亚洲黄色成人 | 成人福利在线观看 | 欧美日韩国产在线观看 | 少妇视频网站 | 精品黑人一区二区三区国语馆 | 午夜国产在线观看 | 91三级视频| 日日干日日操 | 亚洲天天看| 四虎新网址 | 亚洲精品中文字幕乱码三区91 | 亚洲人成在线播放 | 18成人免费观看网站 | 丁香婷婷在线 | 手机看片福利永久 | 亚洲综合区 | 欧洲精品一区二区 | 啪啪网站免费 | 天天干天天曰 | 91福利网站| 亚洲欧美日韩国产精品 | 久久久成人免费视频 | 国产男女视频 | 亚洲一区在线视频 | 三级黄色网址 | av网址在线播放 | 国产伦精品一区二区三区在线 | 成人性生活免费视频 | 国产三级在线播放 | 亚洲男人的天堂在线观看 | 91久久国产综合久久91精品网站 | 欧美午夜片 | 久精品视频| 狠狠干天天操 | 性一交一乱一伧老太 | 一区二区三区日韩 |