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

標(biāo)題: 基于藍(lán)橋杯賽事的模板做的溫度傳感器程序 [打印本頁]

作者: lrp    時(shí)間: 2018-11-13 09:02
標(biāo)題: 基于藍(lán)橋杯賽事的模板做的溫度傳感器程序
這是一個(gè)基于藍(lán)橋杯賽事的模板做的溫度傳感器,因?yàn)樗{(lán)橋杯的賽事性,以及網(wǎng)上的過多資源是需要大量資源去購買的,在這里,我也想記錄自己學(xué)習(xí)的過程,和大家一起探討在藍(lán)橋杯學(xué)習(xí)過后的收獲。因?yàn)榕税胩觳恢涝趺瓷蟼鞲郊猿绦蚓椭苯诱迟N復(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ù)制代碼






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产在线精品一区二区 | 亚洲欧美在线一区 | 精品九九九| 色精品| 久久久蜜桃一区二区人 | av乱码| 国产精品久久精品 | 亚洲国产成人精品久久 | 精品一区二区三区在线观看国产 | 91欧美| 成人不卡一区二区 | h肉视频| 国产精品一区二区视频 | 午夜免费网站 | 久久小视频 | 伊人精品一区二区三区 | 欧美二区乱c黑人 | 久草免费在线视频 | 在线看片网站 | 精品国产不卡一区二区三区 | 日韩在线综合 | 国产成人福利在线 | 欧美 日韩 国产 一区 | 久久综合99 | 欧美阿v| 91精品久久久久久久 | 免费在线性爱视频 | av性色全交蜜桃成熟时 | 日韩中文在线 | 国产精品欧美一区二区三区不卡 | 精精国产xxxx视频在线野外 | 男人天堂视频在线观看 | 看av网址| 日韩中文字幕视频 | 超黄毛片 | 国产一区二区久久 | 在线播放国产一区二区三区 | 羞羞视频网 | 午夜免费视频 | 日韩欧美国产电影 | 国产一区二区三区久久 |