亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,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://www.denmoz.com/bbs/) Powered by Discuz! X3.1