欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機與PC機通信 [打印本頁]

作者: 興仔    時間: 2019-6-10 18:18
標題: 單片機與PC機通信
  1. #include<reg51.h>
  2. #include<intrins.h>
  3. unsigned char key_s,key_v,tmp;
  4. unsigned char display_code[]={0xC0,0xF9,0xA4,0xB0,0x99,0x82,0xF8,0x80,0x90};
  5. char code str[]="welcome!\n\r";/*定義向PC機發送的內容*/
  6. void send_str();/*聲明發送字符串函數*/
  7. bit scan_key();/*聲明按鍵函數*/
  8. void proc_key();/*聲明按鍵處理函數*/
  9. void send_char(unsigned char td);/*聲明發送字符函數*/
  10. void delayms(unsigned char ms);/*聲明延時函數*/
  11. sbit K1=P1^4;
  12. void main()
  13. {
  14. TMOD=0x20;/*定時器1工作于8位自動重載模式,用于產生波特率 */
  15. TH1=0xFD; /*波特率9600*/
  16. TL1=0xFD;
  17. SCON=0x50;/*設定串行口工作方式*/
  18. PCON=0xef;/*波特率不倍增*/
  19. TR1=1;        /*啟動定時器1*/
  20. IE=0x00;/*禁止任何中斷*/
  21. while(1)
  22. {
  23.   if(scan_key())
  24.   delayms(10);         /*延時去抖動*/
  25.   if(scan_key())
  26.   {
  27.    key_v=key_s;
  28.    proc_key();
  29.   }
  30.   if(RI)   /*是否傳來數據*/
  31.   {
  32.    RI=0;
  33.    tmp=SBUF;           /*暫存接受到的數據*/
  34.    delayms(10);
  35.    P0=display_code[tmp-0x30];  /*數據傳送到PO口*/
  36.    send_char(tmp);         /*回傳接受的數據*/
  37.   }
  38. }
  39. }
  40. bit scan_key() /*掃描按鍵*/
  41. {
  42. key_s=0x00;
  43. key_s|=K1;
  44. return(key_s^key_v);
  45. }
  46. void proc_key()         /*按鍵處理*/
  47. {
  48. if((key_v&0x01)==0)   /*k1按鍵按下*/
  49. {
  50.   send_str();        /*傳送字符串*/
  51. }
  52. }
  53. void send_char(unsigned char td) /*傳送一個字符*/
  54. {
  55. SBUF=td;
  56. while(!T1);   /*等待數據傳送*/
  57. T1=0;                  /*清除數據傳送標志*/
  58. }
  59. void send_str()         /*傳送字符串*/
  60. {
  61. unsigned char i=0;
  62. while(str[i]!='\0')
  63. {
  64.   SBUF=str[i];
  65.   T1=0;          /*清除數據傳送標志*/
  66.   i++;
  67. }
  68. }
  69. void delayms(unsigned char ms)         /*延時子程序*/
  70. {
  71. unsigned char j;
  72. while(ms--)
  73. {
  74.   for(j=0;j<120;j++);
  75. }
  76. }
復制代碼







歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1