wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7510|回復(fù): 4
收起左側(cè)

MSP430單片機(jī)的OLED實時時鐘制作 附源程序

[復(fù)制鏈接]
ID:395176 發(fā)表于 2019-5-16 19:49 | 顯示全部樓層 |閱讀模式
      這段時間在學(xué)習(xí)MSP430,將以前學(xué)習(xí)的常用模塊移植過來,由于MSP430F149沒有iic接口,自己模擬了一個,用到的模塊為:DS1302、DS18B20、OLED(IIC接口)?赏ㄟ^按鍵切換AD及溫度顯示(紅外程序也包含其中,有興趣的朋友可以稍微改一下就能實現(xiàn)紅外控制)

制作出來的實物圖如下:      

溫度

溫度

     

AD

AD

  1. #define  main_c
  2. #include "msp430x14x.h"
  3. #include"main.h"
  4. #include"iic.h"
  5. #include"ds1302.h"
  6. #include "ds18b20.h"
  7. #include"adc12.h"
  8. #include "IrRed.h"
  9. #include"key.h"
  10. struct sTime BufTime;
  11. struct sTime SetBuf;
  12. uchar ddd=0x55;
  13. uchar Temp_TH=35,Temp_TL=25;
  14. void System_Init()
  15. {
  16.      uchar i;
  17.      BCSCTL1&=~XT2OFF; //打開XT2振蕩器
  18.      do
  19.      {
  20.            IFG1&=~OFIFG;        //清除故障標(biāo)志
  21.            for(i=0xff;i>0;i--); //延時
  22.      }while(IFG1&OFIFG);         //等待無故障
  23.      BCSCTL2|=SELM_2+SELS;       //主時鐘及子系統(tǒng)時鐘使用XT2
  24. }
  25. void TimeA_Init()
  26. {
  27.      TACTL|= TASSEL_1+ ID_3+ MC_1;    //時鐘選擇ACLK  8分頻  增計數(shù)模式
  28.      CCTL0|= CCIE;                   //開中斷
  29.      CCR0=103;                       //0.25s中斷
  30. }

  31. void Get_Time()     //使用結(jié)構(gòu)體    獲取及顯示
  32. {
  33.      static  uchar s=0;
  34.      Get_DS1302_Time(&BufTime);
  35.      OLED_ShowString(0, 2, "WEEK:",16);
  36.      OLED_ShowString(0, 0, "20",16);
  37.      OLED_ShowChar(33, 0, '-',16);
  38.      OLED_ShowChar(57, 0, '-',16);
  39.      OLED_ShowChar(78, 2,':',16);
  40.      OLED_ShowChar(102, 2,':',16);
  41.      if(ddd!=BufTime.sec)
  42.      {
  43.             OLED_DS1302_Num(17,0,BufTime.year,16);
  44.             OLED_DS1302_Num(41,0,BufTime.mon,16);
  45.             OLED_DS1302_Num(65,0,BufTime.day,16);
  46.             OLED_DS1302_Num(62,2,BufTime.hour,16);
  47.             OLED_DS1302_Num(86,2,BufTime.min,16);
  48.             OLED_DS1302_Num(110,2,BufTime.sec,16);
  49.             OLED_ShowChar(41,2,(BufTime.week&0x0f)+0x30,16);
  50.             OLED_ShowBattery(110,0,s);
  51.             s++;
  52.             if(s>4)s=0;
  53.             ddd=BufTime.sec;
  54.     }
  55. }
  56. /*
  57. void DS1302_Time()
  58. {
  59.                   static uchar s=0;
  60.                   DS1302BurstRead(time); //得到數(shù)據(jù)
  61.                         if(psec != time[0])
  62.                         {
  63.                                 str[0] = '2';
  64.                                 str[1] = '0';
  65.                                 str[2] = (time[6] >> 4) + 0x30;
  66.                                 str[3] = (time[6] & 0x0F) + 0x30;
  67.                                 str[4] = '-';
  68.                                 str[5] = (time[4] >> 4) + 0x30;
  69.                                 str[6] = (time[4] & 0x0F) + 0x30;
  70.                                 str[7] = '-';
  71.                                 str[8] = (time[3] >> 4) + 0x30;
  72.                                 str[9] = (time[3] & 0x0F) + 0x30;
  73.                                 str[10] = '\0';
  74.                                 OLED_ShowString(0, 0, str,16);
  75.                         OLED_ShowBattery(110,0,s);
  76.                         s++;
  77.                         if(s>4)s=0;
  78.                                 str[0] = (time[5] & 0x0F) + 0x30;
  79.                                 str[1] = '\0';
  80.                                 OLED_ShowString(0, 2, "WEEK:",16);
  81.                                 OLED_ShowString(41, 2, str,16);

  82.                                 str[0] = (time[2] >> 4) + 0x30;
  83.                                 str[1] = (time[2] & 0x0F) + 0x30;
  84.                                 str[2] = ':';
  85.                                 str[3] = (time[1] >> 4) + 0x30;
  86.                                 str[4] = (time[1] & 0x0F) + 0x30;
  87.                                 str[5] = ':';
  88.                                 str[6] = (time[0] >> 4) + 0x30;
  89.                                 str[7] = (time[0] & 0x0F) + 0x30;
  90.                                 str[8] = '\0';
  91.                                 OLED_ShowString(62, 2, str,16);
  92.                                 psec = time[0];
  93.                         }
  94. }
  95. */
  96. void DS18b20_Temp()          //獲取溫度及oled顯示
  97. {
  98.     uchar ack;
  99.     uchar num0,num1,num2;
  100.     int temp=0;
  101.     ack=GetTemp(&temp);
  102.     if(ack==0)
  103.     {
  104.         num1=temp>>4;
  105.         num2=temp&0x0f;
  106.         num0=num1/10+0x30;
  107.         num1=num1%10+0x30;
  108.         num2=num2%10+0x30;
  109.         OLED_ShowHz(0,5,2,16);
  110.         OLED_ShowChar(32,5,':',16);
  111.         OLED_ShowChar(40,5,num0,16);
  112.         OLED_ShowChar(48,5,num1,16);
  113.         OLED_ShowChar(56,5,'.',16);
  114.         OLED_ShowChar(64,5,num2,16);
  115.         OLED_ShowChar(72,5,' ',16);

  116.     }
  117.     else
  118.     {
  119.          OLED_ShowString(40,5,"ERROR",16);
  120.     }
  121.     DS_Start();
  122. }
  123. void AD_Oled()        //ad轉(zhuǎn)換顯示
  124. {
  125.     OLED_ShowString(16, 4, "AD1",16);
  126.     OLED_ShowString(78, 4, "AD2",16);
  127.     //OLED_ShowString(45, 4, "℃",16);
  128.     HexDec(10,6,average0,buffer0);
  129.     HexDec(72,6,average1,buffer1);
  130. }
  131. #pragma vector= TIMERA0_VECTOR
  132. __interrupt void  Time_A()
  133. {
  134.      //T250MSfg=1;
  135.      Key_Scan();
  136.      T25MSfg++;
  137.      if(T25MSfg>20)
  138.      {
  139.          T250MSfg=1;
  140.          flash++;
  141.          T25MSfg=0;
  142.      }
  143. }

  144. #pragma vector =ADC12_VECTOR
  145. __interrupt void ADC_Get()
  146. {
  147.      static uchar index=0;
  148.      uchar i;
  149.      result0[index++]=ADC12MEM0;   //保存數(shù)據(jù),中斷標(biāo)志清零
  150.      result1[index++]=ADC12MEM1;
  151.      if(index==NUM)
  152.      {
  153.          for(i=0;i<NUM;i++)
  154.          {
  155.             average0+=result0[i];
  156.             average1+=result1[i];
  157.          }
  158.          index=0;
  159.          average0>>=3;
  160.          average1>>=3;
  161.      }
  162. }
  163. #pragma vector =PORT1_VECTOR      //紅外接收程序
  164. __interrupt void Ir_Get()
  165. {
  166.       if(P1IFG&BIT5)
  167.       {
  168.             switch(Ir_Num)
  169.             {
  170.             case 0:
  171.                     Ir_Num=1;
  172.                     Start_time();
  173.                     P1IFG&=~BIT5;
  174.                     break;
  175.             case 1:
  176.                     Stop_time();
  177.                     timer=TBR;
  178.                     Start_time();
  179.                     if(timer>13000)
  180.                     {
  181.                        Ir_Num=2;
  182.                        //P2OUT^=0x01;
  183.                     }
  184.                     else
  185.                     {
  186.                         Ir_Num=0;
  187.                     }
  188.                     P1IFG&=~BIT5;
  189.                     break;
  190.             case 2:
  191.                     Stop_time();
  192.                     timer=TBR;
  193.                     Start_time();
  194.                     if((timer>=800)&&(timer<=1500))
  195.                     {
  196.                         data=data<<1;
  197.                         count++;
  198.                     }
  199.                     else if((timer>=1600)&&(timer<=3000))
  200.                     {
  201.                         data=(data<<1)|0x0001;
  202.                         count++;
  203.                     }
  204.                     else
  205.                     {
  206.                         Ir_Num=0;
  207.                         count=0;
  208.                         data=0;
  209.                         P1IFG&=~BIT5;
  210.                         break;
  211.                     }
  212.                     if(count==32)
  213.                     {
  214.                         Ir_ok=1;
  215.                         Ir_Num=0;
  216.                         count=0;

  217.                         //P2OUT^=0x08;
  218.                     }
  219.                     P1IFG&=~BIT5;
  220.                     break;


  221.             default:
  222.                     Ir_Num=0;
  223.                     break;


  224.             }
  225.       }
  226. }

復(fù)制代碼
全部資料51hei下載地址:
基于MSP430的OLED實時時鐘.zip (93.51 KB, 下載次數(shù): 131)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:775059 發(fā)表于 2020-6-11 15:19 | 顯示全部樓層
有元件清單和電路圖嗎
回復(fù)

使用道具 舉報

ID:775059 發(fā)表于 2020-6-11 15:23 | 顯示全部樓層
大佬有元件清單和電路圖嘛
回復(fù)

使用道具 舉報

ID:775059 發(fā)表于 2020-6-11 16:20 來自觸屏版 | 顯示全部樓層
請問有沒有元件清單和電路圖啊
回復(fù)

使用道具 舉報

5#
無效樓層,該帖已經(jīng)被刪除
ID:64765 發(fā)表于 2020-11-15 13:45 | 顯示全部樓層
給力!正在學(xué)習(xí)MSP430+OLED,雪中送炭。謝謝分享。
回復(fù)

使用道具 舉報

7#
無效樓層,該帖已經(jīng)被刪除
8#
無效樓層,該帖已經(jīng)被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
欧美在线视频不卡| 无码人妻精品中文字幕| 亚洲色成人一区二区三区小说| 亚洲高清123| 农村寡妇一区二区三区| 亚洲激情在线观看| 欧美一区二区三区啪啪| 欧美日韩一区二区三区四区| 在线观看网站黄不卡| 色又黄又爽网站www久久| 欧美香蕉大胸在线视频观看| 欧美特级www| 在线视频国内自拍亚洲视频| 欧美探花视频资源| 欧美人与性动xxxx| 欧美美女bb生活片| 日韩午夜精品视频| 日韩久久免费视频| 伊人成人开心激情综合网| 中文精品99久久国产香蕉| 日韩最新免费不卡| 欧美久久精品午夜青青大伊人| 久久亚洲精品一区二区| 米奇精品一区二区三区在线观看| 欧美激情综合色| 久久免费看少妇高潮| 9人人澡人人爽人人精品| 99re6这里只有精品视频在线观看| 久久久天堂av| 一区二区三区在线免费观看| 天天综合天天综合色| 在线免费观看视频一区| 欧美va亚洲va香蕉在线| 亚洲一区二区精品| 欧美激情乱人伦| 国产精品99久久久久久www| 91文字幕巨乱亚洲香蕉| 色视频一区二区三区| 久操网在线观看| 久久久久久久久久一区二区| 国产成人无码一区二区在线观看| 精品亚洲乱码一区二区| 国产尤物在线视频| 亚洲国产精品久久久久爰性色| 日韩欧美在线视频一区二区| 狠狠色henhense| 在线观看黄网| 黄色成人在线网| 麻豆久久一区| 伊人久久大香线蕉精品组织观看| 日韩精品一二三| 国产午夜精品一区二区| 欧美午夜精品久久久久久人妖 | 久久久久一区二区| 日本成人在线不卡| 爽爽爽在线观看| 一级片黄色录像| www.久久久久久久| 亚欧精品一区二区三区| jlzzjlzz欧美大全| а√天堂官网中文在线| 日本99精品| 黄色一区二区三区四区| 成人一区二区三区视频| 午夜精品久久久久久久99樱桃| 精品成人a区在线观看| 欧美影院一区二区三区| 亚洲免费精彩视频| 日本a级片电影一区二区| 免费亚洲精品视频| 欧美一级裸体视频| sm捆绑调教视频| www国产一区| eeuss影院www免费影院| 午夜国产福利在线| 8x国产一区二区三区精品推荐| 亚洲精品电影| 国产一区二区毛片| 亚洲永久精品国产| 日韩精品在线观| 国产欧美一区二区三区视频| 一道本在线观看视频| 992kp免费看片| 国产精品变态另类虐交| 久久影院朴妮唛| 日韩加勒比系列| 欧美无毛视频| 黄网站在线观看| 午夜影视一区二区三区| 四虎成人av| 国产不卡视频在线观看| 色吊一区二区三区| 久久久久久欧美| 亚洲一区在线直播| 久久人妻一区二区| 国产女人高潮时对白| 99视频免费| 成人性教育av免费网址| 你懂的一区二区| 国产日产欧美精品一区二区三区| 91精品国产色综合久久不卡电影 | 色偷偷噜噜噜亚洲男人的天堂| 99伊人久久| 欧美国产日韩另类 | 免费看一级一片| 欧美最猛性xxxx高清| 久久天堂电影| 欧美日韩精品一区二区三区在线观看| 青青草一区二区三区| 黄色一区二区在线| 久久久久久久久久亚洲| 成人毛片100部免费看| 国产精品成人在线视频| 中文天堂网在线www| 亚洲搞黄视频| 日韩一区二区在线| 欧美精彩视频一区二区三区| 亚洲男子天堂网| 欧美日韩在线一二三| 自拍偷拍中文字幕| 美女扒开内裤让男人桶| 免费黄色网址在线观看| 亚洲高清资源在线观看| 亚洲欧洲日韩一区二区三区| 久久精品视频免费播放| 看全色黄大色大片| 久久精品一级片| 加勒比免费视频| xxav视频| 清纯唯美激情亚洲| 国产成人啪免费观看软件| 日韩一区二区影院| 国产精品久久波多野结衣| www.555国产精品免费| 午夜视频福利在线| 图片区小说区亚洲| 久久国产精品久久w女人spa| 91传媒视频在线播放| 国产欧美一区二区三区久久人妖| 在线观看岛国av| 亚洲国产精品久久久久久久| 尤物在线视频| 亚洲性感美女99在线| 日韩欧美在线免费| 91九色国产视频| 在线视频 日韩| 欧美人乱大交xxxxx| 成人免费影院| 国产精品乡下勾搭老头1| 亚洲精品一区二区久| 日本一区二区免费高清视频| 日韩电影大全在线观看| 国产午夜福利一区| 日本高清色图| 亚洲综合色婷婷在线观看| 国产亚洲综合av| 欧美高清在线视频观看不卡| 成人在线激情网| 亚洲av综合色区无码一区爱av| 国产乱色在线观看| 日本美女一区二区三区| 精品国产一二三区| 欧美 另类 交| 中文在线观看免费高清| 欧美私人网站| 亚洲免费一区二区| 亚洲国产欧美一区| 人人妻人人澡人人爽欧美一区双| 亚洲天堂aaa| 黄色网在线免费看| 久久精品国产精品青草| 正在播放欧美视频| 一道本视频在线观看| √天堂中文www官网| 99久久er| 国产色产综合产在线视频 | 老女人性淫交视频| 在线观看成年人视频| 一二三区不卡| 欧美一区二区三区色| 亚洲小说欧美另类激情| 91肉色超薄丝袜脚交一区二区| 国产在线高清视频| 韩国精品一区二区| 久久这里只有精品视频首页| 一区二区久久精品| 蝌蚪91视频| 亚洲春色h网| 在线免费亚洲电影| 一区二区三区视频| 国产高清免费观看| 日韩高清不卡| 亚洲男人电影天堂| 精品乱码一区二区三区| 日韩 国产 欧美| 国内在线免费视频| 久久久精品影视| 国产欧美精品一区二区| caoporn91| 成人在线高清视频| 国产乱人伦偷精品视频免下载| 久久综合亚洲社区| 中文字幕天堂网| 国产不卡视频| 亚洲综合丁香| 99久久精品免费精品国产| 2018国产精品视频| 天堂av网手机版| 国内av一区二区三区| 国产精品一卡二卡在线观看| 国产91av在线| 午夜成人亚洲理伦片在线观看| 精品福利视频导航大全| 国产白丝网站精品污在线入口| 欧美综合国产精品久久丁香| 久久久精品少妇| 色影院视频在线| 99精品视频一区| 亚洲影院在线看| 这里只有久久精品视频| 日韩在线影院| 亚洲成人久久影院| 2025韩国大尺度电影| 最近中文字幕在线6| 亚洲瘦老头同性70tv| 日韩午夜激情视频| 在线观看日本一区二区| 综合网插菊花| 久久综合五月| 97超级碰碰碰久久久| 九九免费精品视频| 精品人妻伦一二三区久久| jizz久久久久久| 日本高清免费不卡视频| 一区二区传媒有限公司| 日本午夜精华| 国产亚洲午夜| 国模视频一区二区| 久久成人国产精品入口| 涩涩网在线视频| 欧美三级免费观看| 五十路熟女丰满大屁股| 色视频免费观看| 久久精品成人| 国产精品96久久久久久| 波多野结衣av无码| 欧美日韩黄色| 欧美精品一区二区在线观看| 性活交片大全免费看| 国产永久免费高清在线观看| 国产人成亚洲第一网站在线播放 | 视频一区二区国产| 国产精品国模在线| 国产污视频网站| 亚洲一级大片| 亚洲精品456在线播放狼人| 欧产日产国产精品98| h视频网站在线观看| 国产精品第四页| 一区二区三区一级片| 色在线视频播放| 蜜桃91丨九色丨蝌蚪91桃色| 成人黄色av免费在线观看| 国产黄色一区二区| 久久蜜桃av| 欧美精品国产精品日韩精品| 国产欧美日韩另类| 日韩欧美中文字幕一区二区三区 | 欧美图片自拍偷拍| 日韩成人影视| 亚洲午夜视频在线观看| 一本大道熟女人妻中文字幕在线 | 男人的天堂av网站| 超碰在线亚洲| 亚洲日本成人女熟在线观看| 秋霞欧美一区二区三区视频免费| 蜜桃视频www网站在线观看| 色噜噜夜夜夜综合网| 中文字幕在线视频一区二区| 91啦中文在线| 无吗不卡中文字幕| 亚洲欧美日本一区二区| 日本激情在线观看| 岛国av在线不卡| 欧美午夜精品一区二区| 中文字幕在线三区| 欧美少妇一区二区| 性欧美成人播放77777| 在线观看v片| 精品国产成人系列| 青草影院在线观看| 日本中文字幕在线视频| 国产在线日韩欧美| 欧美一区二区三区四区夜夜大片| 午夜娱乐在线| 波多野结衣在线一区| 91精品国产吴梦梦| 伊人资源视频在线| 亚洲欧美日韩在线| 国产原创精品在线| 性xxxfreexxxx性欧美| 欧美久久一二三四区| 影音先锋男人在线| 日韩高清一区| 美女999久久久精品视频| 亚洲最大成人av| 欧美啪啪一区| 波多野结衣久草一区| 奇米影视狠狠狠| 91在线你懂得| 青青在线视频免费| jizz性欧美| 亚洲成人av片在线观看| 日韩精品一区二区三| 欧美军人男男激情gay| 国产精品午夜视频| av麻豆国产| 国产三级精品三级在线专区| 中文字幕网av| 手机在线观看av网站| 亚洲视频国产视频| 可以看毛片的网址| 羞羞视频在线免费看| 日本精品视频一区二区三区| xxxx日本黄色| 大奶在线精品| 欧亚精品中文字幕| 久精品在线观看| 久久免费的精品国产v∧| 午夜激情av在线| 成人美女视频| 久久精品美女视频网站| 欧美少妇bbw| 国产成人亚洲综合a∨婷婷图片 | 青丝免费观看高清影视| 国产日韩精品视频一区| 国产探花一区二区三区| 99久久久国产精品免费调教网站| 欧美人成在线视频| 中文字幕+乱码+中文字幕| 成人高清伦理免费影院在线观看| 久久国产色av免费观看| 午夜激情电影在线播放| 久久最新资源网| 区二区三区在线| 2023国产一二三区日本精品2022| 午夜啪啪小视频| 久久综合偷偷噜噜噜色| 国产精品视频成人| 亚州福利视频| 91黄视频在线| 日韩精品一区二区不卡| 国产日本精品| av在线免费观看国产| 日本中文字幕中出在线| 日韩中文字幕av| 四虎成人欧美精品在永久在线| 亚洲国产岛国毛片在线| 国产人妻人伦精品1国产丝袜| 亚洲区小说区图片区qvod按摩| 亚洲a在线观看| 在线影视一区| 欧美岛国在线观看| av综合在线观看| fc2成人免费人成在线观看播放 | 色哟哟在线观看| 精品剧情在线观看| 成人福利小视频| 91视视频在线观看入口直接观看www | 台湾av在线二三区观看| 精品国产一区二区精华| 精品毛片一区二区三区| 99免费精品在线| v天堂中文在线| 93在线视频精品免费观看| 亚洲自拍的二区三区| 免费在线观看的电影网站| 欧美国产在线电影| 人人妻人人澡人人爽人人精品| 美女网站一区| 日韩激情视频| 中文字幕在线观看网站| 久久久久久成人精品| www.色香蕉| 6080日韩午夜伦伦午夜伦| 国产普通话bbwbbwbbw| 91女厕偷拍女厕偷拍高清| 久久国产柳州莫菁门| 精品69视频一区二区三区Q| jizzjizz国产精品喷水| 在线观看亚洲精品福利片| 亚洲va欧美va国产综合久久| 色视频免费在线观看| 一本一本久久a久久精品牛牛影视| 欧美一级淫片免费视频| 精品日韩美女的视频高清| 超碰在线97观看| 91亚洲午夜精品久久久久久| 91麻豆制片厂| 日韩影院在线观看|