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

標(biāo)題: 單片機(jī)學(xué)習(xí)型紅外線遙控器程序原理圖與PCB文件 [打印本頁(yè)]

作者: 嘉禾沐雨    時(shí)間: 2022-1-16 20:59
標(biāo)題: 單片機(jī)學(xué)習(xí)型紅外線遙控器程序原理圖與PCB文件
制作出來(lái)的遙控器實(shí)物圖如下:

Altium Designer畫(huà)的學(xué)習(xí)型紅外線遙控器原理圖和PCB圖如下:(51hei附件中可下載工程文件)


學(xué)習(xí)型紅外線遙控器  元器件   
   
AT89C52單片機(jī)及底座   
NPN 三極管      9013系列4個(gè)
發(fā)光二極管    3個(gè)
紅外線發(fā)射二極管    2個(gè)
電阻  560    3個(gè)
電阻  10K    5個(gè)
電阻  10    2個(gè)
電阻  4K7    2個(gè)
電容  1uf    2個(gè),有正負(fù)極
電容  10uf    2個(gè),有正負(fù)極
電容  20uf,3v    2個(gè),有正負(fù)極
電容  30pf    3個(gè),無(wú)正負(fù)極
12MHz晶振    1個(gè)
按鍵開(kāi)關(guān)    3個(gè)
電視機(jī)三端一體紅外接收解調(diào)器    1個(gè)
大塊萬(wàn)用板    1塊
導(dǎo)線若干   

單片機(jī)源程序如下:
  1. /*********************************************************************/
  2. //                         remote.c
  3. //                       學(xué)習(xí)型遙控器
  4. //                     使用keil c51
  5. /*********************************************************************/
  6. //使用AT89C52單片機(jī),12MHZ晶振,
  7. //
  8. //#pragma src(E:\remote.asm)
  9. #include "reg51.h"
  10. #include "intrins.h"     //_nop_();延時(shí)函數(shù)用
  11. //
  12. #define uchar unsigned char
  13. #define uint unsigned int
  14. //
  15. sbit  studylamp=P1^6;        //學(xué)習(xí)狀態(tài)指示燈
  16. sbit  lamp=P1^7;             //發(fā)射指示燈
  17. sbit  studykey=P3^2;         //學(xué)習(xí)鍵(中斷口)
  18. sbit  remotein=P3^4;         //遙控信號(hào)輸入口
  19. sbit  remoteout=P3^5;         // 遙控輸出口
  20. sbit  txkey=P1^0   ;           //發(fā)射鍵
  21. //
  22. //
  23. uint i,j,m=255,n,k,s;
  24. uchar idata  remotedata[206];//存肪沖寬度數(shù)據(jù)用
  25. uint   head;           //存起始位用
  26. uint   remdata;
  27. //
  28. //
  29. ////
  30. /*********1毫秒延時(shí)程序**********/
  31. delay1ms(uint t)
  32. {
  33. for(i=0;i<t;i++)
  34.    for(j=0;j<120;j++)
  35.    ;
  36. }
  37. //
  38. //
  39. /***********初始化函數(shù)**********/
  40. clearmen()
  41. {
  42. studylamp=0;           //關(guān)學(xué)習(xí)燈
  43. lamp=0;                //關(guān)發(fā)射指示
  44. remoteout=0;           //關(guān)遙控輸出
  45. remotein=1;            //
  46. for(i=0;i<206;i++)     //清內(nèi)存
  47. {remotedata[i]=0x00;}
  48. IE=0x00;
  49. IP=0x01;
  50. TMOD=0x22;             //8位自動(dòng)重裝模式
  51. PCON=0X00;
  52. TH1=0xf3;              //40KHZ初值
  53. TL1=0xf3;
  54. IT0=1;
  55. EX0=1;                //外中斷允許
  56. EA=1;                 //開(kāi)總中斷
  57. }
  58. //
  59. //
  60. /**********鍵功能函數(shù)************/
  61. keywork()
  62. {
  63. if(txkey==0)
  64. {
  65.     while(txkey==0);     //等待鍵釋放
  66.     ET1=1;TR1=1;         //發(fā)起始位
  67.     for(i=head;i>0;i--){;}
  68.         remoteout=0;ET1=0;TR1=0;
  69.         n=0;
  70.         while(1)
  71.         {
  72.       if(remotedata[n]==0x00){delay1ms(10);break;}//數(shù)據(jù)為0結(jié)束
  73.           for(i=remotedata[n];i>0;i--){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();}
  74.           lamp=~lamp;n++;//偶地址不發(fā)脈沖
  75. //
  76.           ET1=1;TR1=1;  //奇地址發(fā)調(diào)制脈沖
  77.       for(i=remotedata[n];i>0;i--){;}
  78.           remoteout=0;ET1=0;TR1=0;n++;
  79.         }
  80.   }
  81. }
  82. //
  83. //
  84. /***********主函數(shù)***************/
  85. main()
  86. {
  87. clearmen();          //初始化
  88. while(1)
  89. {
  90.   keywork();       //按鍵掃描
  91.   }
  92. }
  93. //
  94. //
  95. /*********40KHZ發(fā)生器***********/
  96. //定時(shí)中斷T1
  97. void time_intt1(void) interrupt 3
  98. {
  99. remoteout=~remoteout;
  100. }
  101. //
  102. //
  103. /***********學(xué)習(xí)函數(shù) ***********/
  104. //外中斷0
  105. void intt0(void) interrupt 0
  106. {
  107. ET1=0;TR1=0;EX0=0;EA=0;
  108. head=0;studylamp=1;lamp=0;
  109. while(studykey==0);           //等待鍵釋放
  110. while(remotein==1);           //等待遙控碼輸入
  111. head=0;                       //讀入起始位
  112. ……………………

  113. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei附件下載:
PCB原理圖程序.7z (1.98 MB, 下載次數(shù): 87)
視頻.7z (9.48 MB, 下載次數(shù): 44)


作者: heicad    時(shí)間: 2022-1-21 07:04
好資料,51黑有你更精彩!!!
作者: 大米861    時(shí)間: 2023-6-9 10:14
好東西,準(zhǔn)備手工做個(gè)試試,有問(wèn)題回來(lái)請(qǐng)教樓主
作者: 大米861    時(shí)間: 2023-7-11 19:26
這個(gè)程序有錯(cuò)吧?
在學(xué)習(xí)函數(shù)里,“while(studykey==0);    //等待鍵釋放” ,但在鍵掃描函數(shù)里,并沒(méi)有studykey按下的指令,也就是無(wú)“等待鍵釋放”狀態(tài)。而該函數(shù),只有要該鍵被按下,才為0,然后等非0時(shí),while(studykey==0)才會(huì)結(jié)束。而如果該鍵從來(lái)未被按下過(guò),就一直非0了。也就是說(shuō),這條指令是沒(méi)任何意義的。
請(qǐng)教樓主,這樣分析是否正確?
作者: herui2128    時(shí)間: 2023-7-21 11:29
有成功了的沒(méi)
作者: lsh04    時(shí)間: 2023-7-21 17:16
大米861 發(fā)表于 2023-7-11 19:26
這個(gè)程序有錯(cuò)吧?
在學(xué)習(xí)函數(shù)里,“while(studykey==0);    //等待鍵釋放” ,但在鍵掃描函數(shù)里,并沒(méi)有st ...

studykey=P3^2;         //學(xué)習(xí)鍵(中斷口)

他是中斷口




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日韩一区三区 | 五月天视频 | 日韩久久久久久久 | 在线一区 | a天堂在线视频 | 日韩精品在线播放 | 欧美精品色 | 日韩三级一区 | 亚洲在线免费 | 美日韩精品 | 日韩毛片网站 | av网址在线播放 | 天天看天天干 | 日b视频在线观看 | 九九九久久久 | 精品久久久久久久久久久久久久久久 | 国产黄色av | 日韩av资源 | 日韩精品二区 | 久久黄色网址 | 成人在线视频免费观看 | 青草av在线 | 国产香蕉av | 成人在线免费视频 | 经典三级av| 91看片在线| 国产成人午夜 | 欧美精品在线观看视频 | www.青青草.com| 久久久久九九九 | 伊人精品视频 | 国产精品国产精品国产专区不卡 | 黄色国产视频 | 香蕉视频导航 | 日本国产视频 | 久久精品一区二区三区四区 | 日韩一区二区视频 | 国产福利91| 久久精品一区二区三区四区五区 | 午夜久久| 久久久国|