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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6009|回復: 5
打印 上一主題 下一主題
收起左側

PIC12F509,PIC12F508單片機仿真空調搖控器源程序

  [復制鏈接]
跳轉到指定樓層
樓主
ID:375003 發表于 2018-7-19 17:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 guangshi_wq 于 2018-7-30 20:39 編輯

制作出來的遙控器實物圖如下:


單片機源程序如下:
  1. #include "pic12f509.h"//下面我有的精彩點評,不容錯過

  2. //#include<htc.h>
  3. //  _CONFIG (0x02); //表示用內部的RC震蕩器;
  4. // 配置文件在編程器寫入的時候指定選項
  5. //**************************************************
  6. //                       __________
  7. //               VDD-| 1             8 |-VSS
  8. //                GP5-| 2            7 |-GP0/DAT
  9. //                GP4-| 3            6 |-GP1/CLK
  10. //  GP3/RMCLR--| 4            5 |-GP2
  11. //                       |_________|
  12. //                 12F508
  13. //***************************************************
  14. //按鍵必須用以下三個腳,不然睡眠后不能喚醒;
  15. //發射二極管正極接電源,負極經100歐電阻接5腳;
  16. #define uchar unsigned char
  17. #define uint unsigned int
  18. #define IR_out  GP2
  19. #define pwr_KEY GP1
  20. #define up_KEY  GP3
  21. #define down_KEY GP0

  22. union//定義一個可以位操作的結構體
  23. {
  24. struct{
  25.        unsigned b0:1;
  26.        unsigned b1:1;
  27.        unsigned b2:1;
  28.        unsigned b3:1;
  29.        unsigned b4:1;
  30.        unsigned b5:1;
  31.        unsigned b6:1;
  32.        unsigned b7:1;
  33.       }oneBit;
  34.       unsigned char allBits;
  35. }myFlag;

  36. #define wHB myFlag.oneBit.b7
  37. #define wBYT myFlag.allBits

  38. const uchar chuai[]={0x41,0x49,0x45,0x4d,0x43,0x4b,0x47};//26度到32度
  39. static bit key;
  40. uchar ii;

  41. #define H 1
  42. #define L 0

  43. void init()
  44. {
  45.     TRISGPIO=0b11111011;//只有GP2輸出;
  46.     OPTION=0b00001000;//TIM0不用分頻器0x80;引腳變化可以喚醒,開上拉
  47.     OSCCAL=0b00000000;//晶振頻率不校正.
  48. }

  49. void dly(uint Delay) /*延時t/0.5ms*/
  50.   {
  51.     uchar i=50;
  52.     while(--Delay)while(--i);
  53.    }


  54. start()
  55. {
  56.    uint i=342;
  57.   while(i--)//輸出9ms負脈沖;
  58.    { IR_out=L;ii=2;//輸出負脈沖
  59.      while(--ii);
  60.      IR_out=H;     //輸出正脈沖
  61.    }
  62.    i=171;
  63.    while(i--)//輸出4.5ms正脈沖;
  64.    { IR_out=H;ii=2;//輸出負脈沖
  65.      while(--ii);
  66.      IR_out=H;    //輸出正脈沖
  67.    }
  68. }
  69. output_0()
  70. {
  71.   uint i=19;
  72.   while(i--)//輸出9ms負脈沖;
  73.    { IR_out=L;ii=2;//輸出負脈沖
  74.      while(--ii);
  75.      IR_out=H;     //輸出正脈沖
  76.    }
  77.    i=26;
  78.    while(i--)//輸出4.5ms正脈沖;
  79.    { IR_out=H;ii=2;//輸出負脈沖
  80.      while(--ii);
  81.      IR_out=H;    //輸出正脈沖
  82.    }
  83. }
  84. output_1()
  85. {
  86.   uint i=19;
  87.   while(i--)//輸出9ms負脈沖;
  88.    { IR_out=L;ii=2;//輸出負脈沖
  89.      while(--ii);
  90.      IR_out=H;     //輸出正脈沖
  91.    }
  92.    i=66;
  93.    while(i--)//輸出4.5ms正脈沖;
  94.    { IR_out=H;ii=2;//輸出負脈沖
  95.      while(--ii);
  96.      IR_out=H;    //輸出正脈沖
  97.    }
  98. }
  99. void main()
  100. {
  101. uchar dat3=0,dat4=0,zz=0,zr=0;
  102. uchar dat1=0,dat2=0;
  103. init();
復制代碼

pic12f509.zip

1.47 KB, 下載次數: 66, 下載積分: 黑幣 -5

評分

參與人數 4黑幣 +66 收起 理由
jkangk123 + 5 很給力!
xiaoxx666 + 8 贊一個!
desig + 3 贊一個!實用的PIC資料。
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂2 踩
回復

使用道具 舉報

沙發
ID:375003 發表于 2018-7-29 20:51 | 只看該作者
沒有人點評,自我點評一下,
第一,為什么這樣定義可位尋址的變量?
為什么別人能這樣定義位變量?
#define _BIT_TST(val,bitno) (val&_BV(bitno))
我試了很多辦法,C51的方法根本行不通,
最后發現和編譯器有關.
第二,為什么不用定時器?
因為定時器操作的時間用的周期太多,
第三,延時為什么不用子程序?
我實際試過,子程序太費時;
第四,為什么低的時候要while(--ii);而高的時候不用?
第五,為什么不用for?
第六,為什么定義為局部變量不會被清0,
還有那個,程序跑飛判斷.if(nFUN>6)nFUN=6;
第七,單片機睡了,喚醒了從哪兒開始跑?
這個程序我在編程器上寫了幾十遍.
用示波器讀過頻率,38KHZ.
人家503的晶振把碼寫成了38KHZ,是為什么方法呢?
占空比也能滿足要求.
我從STC單片機上面移植過來的,
寫SLEEP把STC的單片機都寫死了.無法喚醒,無法再下載程序了.
花了很長時間才寫通.
對你學習解碼有幫助,知已知彼.
空調的碼是48位.
對你幫助,留個言,感謝一下,不花黑幣,提個問題也行啊.

睡不醒的單片機.JPG (1.82 MB, 下載次數: 90)

睡不醒的單片機.JPG

評分

參與人數 2黑幣 +95 收起 理由
jkangk123 + 5 共享資料的黑幣獎勵!
admin + 90 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:330538 發表于 2018-7-30 16:24 | 只看該作者
51黑有你更精彩
回復

使用道具 舉報

地板
ID:338171 發表于 2018-7-30 17:11 | 只看該作者
給大哥點贊  分享好資料
回復

使用道具 舉報

5#
ID:72649 發表于 2018-8-12 06:46 | 只看該作者
有原理圖嗎?
回復

使用道具 舉報

6#
ID:379367 發表于 2019-9-23 11:05 | 只看該作者
給大哥點贊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲综合激情 | 911网站大全在线观看 | 在线观看视频福利 | 九九国产 | 日韩成人免费视频 | 欧美另类视频在线 | 国产精品视频不卡 | 999久久久免费精品国产 | 亚洲人成在线观看 | 欧美性久久| 久久精品亚洲 | 久久伦理中文字幕 | 日本大香伊一区二区三区 | 日韩男人天堂 | 华丽的挑战在线观看 | 久久久婷 | 免费观看一级特黄欧美大片 | 日韩综合一区 | 黄色精品视频网站 | 99精品国产一区二区青青牛奶 | 亚洲精品乱码久久久久久蜜桃91 | 二区国产 | 欧美福利影院 | 精品免费国产一区二区三区四区 | 草久在线视频 | 超碰在线免费公开 | 天天干狠狠干 | 91久久精品一区二区二区 | 亚洲小视频在线观看 | 午夜视频在线播放 | 欧美精品一区二区三区在线播放 | 黄色大片观看 | 亚洲欧美第一视频 | 亚洲精选一区 | 国产电影精品久久 | 久久久久国产精品午夜一区 | 久久中文高清 | 一级在线免费观看 | 日本精品一区二区三区四区 | 日韩免费视频一区二区 | 日韩成人免费在线视频 |