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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于藍(lán)橋杯賽事的模板做的溫度傳感器程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:425442 發(fā)表于 2018-11-13 09:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這是一個基于藍(lán)橋杯賽事的模板做的溫度傳感器,因為藍(lán)橋杯的賽事性,以及網(wǎng)上的過多資源是需要大量資源去購買的,在這里,我也想記錄自己學(xué)習(xí)的過程,和大家一起探討在藍(lán)橋杯學(xué)習(xí)過后的收獲。因為弄了半天不知道怎么上傳附件,所以程序就直接粘貼復(fù)制了。
  1. #include <STC15F2K60S2.H>
  2. #include <intrins.h>

  3. typedef unsigned int u16;
  4. typedef unsigned char u8;

  5. sbit key=P1^4;

  6. u8 code tab[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0XBF,0XFF};
  7. u16 yi,er,san,si,wu,liu,qi,ba,jiu;

  8. void Delay100us()               
  9. {
  10.         unsigned char i, j;
  11.         _nop_();
  12.         _nop_();
  13.         i = 2;
  14.         j = 15;
  15.         do
  16.         {
  17.                 while (--j);
  18.         } while (--i);
  19. }

  20. void Delay500us()               
  21. {
  22.         unsigned char i, j;

  23.         _nop_();
  24.         _nop_();
  25.         i = 6;
  26.         j = 93;
  27.         do
  28.         {
  29.                 while (--j);
  30.         } while (--i);
  31. }

  32. void delayms(int ms)
  33. {
  34.         int i,j;
  35.         for(i=ms;i>0;i--)
  36.                 for(j=845;j>0;j--);
  37. }

  38. void chushihua()
  39. {
  40.         key=0;
  41.         Delay500us();
  42.         key=1;
  43.         Delay500us();
  44. }

  45. void write(u8 dat)
  46. {
  47.         u16 i;
  48.         for(i=0;i<8;i++)
  49.         {
  50.                 key=0;
  51.                 key=dat&0x01;
  52.                 Delay100us();
  53.     key=1;
  54.     dat=dat>>1;               
  55.         }
  56. }

  57. u16 read()
  58. {
  59.         u16  i;
  60.         u16 dat;
  61.         for (i=0;i<8;i++)
  62.         {
  63.                 key=0;
  64.                         _nop_();
  65.                 dat=dat>>1;
  66.                 key=1;
  67.                 if(key==1)
  68.                 {
  69.                                 dat=dat|0x80;
  70.                         }
  71.                
  72.                         Delay100us();
  73.         }
  74.         return dat;
  75. }

  76. u16 tempget()
  77. {
  78.         u16 temp;
  79.         u16 low,height;
  80.         
  81.         chushihua();
  82.         write(0xcc);
  83.         write(0x44);
  84.         Delay500us();
  85.         Delay500us();/*yidian*/
  86.         
  87.         chushihua();
  88.         write(0xcc);
  89.         write(0xbe);
  90.         
  91.         low=read();
  92.         height=read();
  93.         
  94.         temp=height<<4;
  95.         temp=temp|(low>>4);
  96.         
  97.         return temp;
  98. }

  99. void allinit()
  100. {
  101.         P2=0XA0;
  102.         P0=0X00;
  103.         
  104.         P2=0X80;
  105.         P0=0XFF;
  106.         
  107.         P2=0XC0;
  108.         P0=0XFF;
  109.         P2=0XFF;
  110.         P0=0XFF;
  111. }

  112. void desplay1 (u16 yi,u16 er)
  113. {
  114.                         P2=0XC0;
  115.                 P0=0X01;
  116.                 P2=0XFF;                  
  117.                 P0=tab[yi];
  118.                 delayms(1);
  119.                
  120.                 P2=0XC0;
  121.                 P0=0X02;
  122.                 P2=0XFF;
  123.                 P0=tab[er];
  124.                 delayms(1);
  125. }

  126. void desplay2 (u16 san,u16 si)
  127. {
  128.                         P2=0XC0;
  129.                 P0=0X04;
  130.                 P2=0XFF;                  
  131.                 P0=tab[san];
  132.                 delayms(1);
  133.                
  134.                 P2=0XC0;
  135.                 P0=0X08;
  136.                 P2=0XFF;
  137.                 P0=tab[si];
  138.                 delayms(1);
  139. }

  140. void desplay3 (u16 wu,u16 liu)
  141. {
  142.                         P2=0XC0;
  143.                 P0=0X10;
  144.                 P2=0XFF;                  
  145.                 P0=tab[wu];
  146.                 delayms(1);
  147.                
  148.                 P2=0XC0;
  149.                 P0=0X20;
  150.                 P2=0XFF;
  151.                 P0=tab[liu];
  152.                 delayms(1);
  153. }

  154. void desplay4 (u16 qi,u16 ba)
  155. {
  156.                         P2=0XC0;
  157.                 P0=0X40;
  158.                 P2=0XFF;                  
  159.                 P0=tab[qi];
  160.                 delayms(1);
  161.                
  162.                 P2=0XC0;
  163.                 P0=0X80;
  164.                 P2=0XFF;
  165.                 P0=tab[ba];
  166.                 delayms(1);
  167. }

  168. void main()
  169. {
  170.         u16 wendu;
  171.         allinit();
  172.                  yi=11;
  173.                 er=11;
  174.                 san=11;
  175.           si=11;
  176.           wu=11;
  177.           liu=0;
  178.           qi=0;
  179.           ba=0;
  180.         while(1)
  181.         {
  182.                 wendu=tempget();
  183.                
  184.    liu=wendu/100;
  185.                 qi=wendu%100/10;
  186.                 ba=wendu%10;
  187.                
  188.                 desplay1(yi,er);
  189.                 desplay2(san,si);
  190.                 desplay3(wu,liu);
  191.                 desplay4(qi,ba);
  192.         }
  193.         
  194. }
復(fù)制代碼

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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 人人看人人射 | 欧美小视频在线观看 | 中文字幕在线二区 | 最新超碰 | 91av国产在线视频 | av网站免费在线观看 | 色网站在线免费观看 | 野狼在线社区2017入口 | av激情影院 | 在线国产中文字幕 | 日本亚洲欧美 | 天天操网| 91精品国产乱码久久蜜臀 | 日韩精品1区2区 | 91爱爱·com| 欧美偷偷 | 亚洲不卡视频 | 久久久久国产一区二区三区 | 亚洲一区视频在线 | 久久久女 | 三级在线免费 | www午夜视频 | 精品一区二区在线观看 | 中文字幕免费在线 | 亚洲成人一区二区 | 日韩精品一区在线 | 午夜视频免费 | 伊人网站在线观看 | 欧美 中文字幕 | 国产精品69av | 九九热在线免费视频 | 成人午夜影院 | 超碰伊人| 黄免费观看 | 在线免费看黄 | 久久91av | 黄色一级大片在线免费看产 | 国产精品美女www爽爽爽 | 午夜在线电影网 | 视频一区二区在线观看 | 中文字幕 亚洲一区 |