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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4078|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)學(xué)習(xí)型紅外線遙控器程序原理圖與PCB文件

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
制作出來的遙控器實(shí)物圖如下:

Altium Designer畫的學(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è),無正負(fù)極
12MHz晶振    1個(gè)
按鍵開關(guān)    3個(gè)
電視機(jī)三端一體紅外接收解調(diào)器    1個(gè)
大塊萬用板    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;                 //開總中斷
  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)

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏11 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:262 發(fā)表于 2022-1-21 07:04 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

板凳
ID:403447 發(fā)表于 2023-6-9 10:14 | 只看該作者
好東西,準(zhǔn)備手工做個(gè)試試,有問題回來請(qǐng)教樓主
回復(fù)

使用道具 舉報(bào)

地板
ID:403447 發(fā)表于 2023-7-11 19:26 | 只看該作者
這個(gè)程序有錯(cuò)吧?
在學(xué)習(xí)函數(shù)里,“while(studykey==0);    //等待鍵釋放” ,但在鍵掃描函數(shù)里,并沒有studykey按下的指令,也就是無“等待鍵釋放”狀態(tài)。而該函數(shù),只有要該鍵被按下,才為0,然后等非0時(shí),while(studykey==0)才會(huì)結(jié)束。而如果該鍵從來未被按下過,就一直非0了。也就是說,這條指令是沒任何意義的。
請(qǐng)教樓主,這樣分析是否正確?
回復(fù)

使用道具 舉報(bào)

5#
ID:398219 發(fā)表于 2023-7-21 11:29 | 只看該作者
有成功了的沒
回復(fù)

使用道具 舉報(bào)

6#
ID:513213 發(fā)表于 2023-7-21 17:16 | 只看該作者
大米861 發(fā)表于 2023-7-11 19:26
這個(gè)程序有錯(cuò)吧?
在學(xué)習(xí)函數(shù)里,“while(studykey==0);    //等待鍵釋放” ,但在鍵掃描函數(shù)里,并沒有st ...

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

他是中斷口
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 免费成人在线网站 | 久草视 | 99在线国产 | 91精品国产乱码久久久久久久久 | 成人免费视频网站在线看 | 99re6在线视频精品免费 | 天天澡天天狠天天天做 | 亚洲成人日韩 | 亚洲第一色av | 亚洲在线中文字幕 | 国产高清精品网站 | 风间由美一区二区三区在线观看 | 拍戏被cao翻了h承欢 | 欧美中文字幕一区二区三区亚洲 | 国产精品福利视频 | 91精品无人区卡一卡二卡三 | 九一在线观看 | 国产精品免费观看视频 | 久久久久91 | 亚洲精品乱码 | 成人午夜网 | 色综合一区二区 | 欧美一区二区免费电影 | 91视频电影| www精品美女久久久tv | 国产一二三区在线 | 免费黄色av | 亚洲一区二区在线视频 | 日本a级大片 | 日韩中文字幕在线视频观看 | 久久久久久久国产精品视频 | 日韩和的一区二在线 | 久亚州在线播放 | 懂色中文一区二区在线播放 | 亚洲三区在线播放 | 视频一区二区在线观看 | 黄网免费看 | 日韩视频精品在线 | 国产黄色精品在线观看 | 中文字幕在线观看日韩 | 一级特黄色毛片 |