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

標題: ds18b20溫度測量c51單片機程序 源代碼 [打印本頁]

作者: niujia    時間: 2015-7-15 23:35
標題: ds18b20溫度測量c51單片機程序 源代碼

數碼管顯示部分的原理圖(開發板中只需要截圖顯示部分即可):http://www.zg4o1577.cn/f/51hei-5.pdf

電路:ds18b20接在p2.2  數碼管用8位共陰極數碼管,2個573鎖存 詳見上面的51hei單片機開發板的pdf圖,本人測試成了.


程序源代碼:

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit  wela=P2^7;
  5. sbit  dula=P2^6;
  6. sbit  DS=P2^2;
  7. uchar A;
  8. uint dian;
  9. uchar smg_change[6]={10,10,10,10,10,10};
  10. unsigned char code duanma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
  11. unsigned char code weima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
  12. void delay(unsigned int a)
  13. {
  14. while(a--);
  15. }
  16. void init_tempr()
  17. {
  18. uchar n;
  19. DS=1;
  20. delay(8);
  21. DS=0;
  22. delay(80);   //500us
  23. DS=1;
  24. delay(8);
  25. n=DS;
  26. delay(4);
  27. }
  28. void write_byte(uchar dat)
  29. {
  30. uchar i;
  31. for(i=0;i<8;i++)
  32. {
  33.   DS=0;
  34.   DS=dat&0x01;
  35.   delay(4);
  36.   DS=1;
  37.   dat>>=1;
  38. }
  39. delay(4);
  40. }
  41. uchar read_byte(void)
  42. {
  43. uchar i,value;
  44. for(i=0;i<8;i++)
  45. {
  46.   DS=0;
  47.   value>>=1;
  48.   DS=1;
  49.   if(DS)
  50.   value|=0x80;
  51.   delay(4);
  52. }
  53. return value;
  54. }
  55. uchar readtempr(void)
  56. {
  57.   uint temp, a,b;
  58.   init_tempr();
  59.   write_byte(0xcc);
  60.   write_byte(0x44);
  61.   delay(300);
  62.   init_tempr();
  63.   write_byte(0xcc);
  64.   write_byte(0xbe);
  65.   a=read_byte();
  66.   b=read_byte();
  67.   temp=b;
  68.   temp<<=4;            
  69.   temp+=(a&0xf0)>>4;
  70.   dian=(a&0x0f)*10*6/10;
  71.   return temp;
  72. }
  73. void display()
  74. {
  75.    uchar i;
  76.    for(i=0;i<6;i++)
  77.    {
  78.      P0=0X00;
  79.   dula=1;
  80.   dula=0;
  81.   P0=weima[i];
  82.   wela=1;
  83.   wela=0;
  84.   P0=duanma[smg_change[i]];
  85.   dula=1;
  86.   dula=0;
  87.   delay(200);
  88.    }
  89.       P0=weima[1];
  90.   wela=1;
  91.   wela=0;
  92.   P0=duanma[smg_change[1]]|0x80;
  93.   dula=1;
  94.   dula=0;
  95.   delay(200);
  96.   P0=0X00;
  97.   dula=1;
  98.   dula=0;
  99. }
  100. void dis_deal()
  101. {
  102. smg_change[0]=A/10;
  103. smg_change[1]= A%10;
  104. smg_change[2]=dian/10 ;
  105. smg_change[3]=dian%10 ;
  106. }
  107. void main()
  108. {
  109. while(1)
  110. {  
  111.   A=readtempr();
  112.      dis_deal();
  113.   display();
  114. }
  115. }
復制代碼





作者: 傻傻的遠遠    時間: 2018-12-11 11:09
你好,為什么我這只顯示了兩個8啊。根本沒有變化




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 99精品视频在线观看 | 鸳鸯谱在线观看高清 | 一级网站 | 成人精品一区二区三区 | 夜夜干夜夜操 | 国产精品1区2区3区 欧美 中文字幕 | 成年人免费看的视频 | 国产1区在线 | 午夜精品久久久久久久久久久久 | 成人在线激情 | 午夜影院在线观看 | 亚洲精品在线免费 | 亚洲福利av | 午夜精品一区二区三区在线观看 | 亚洲二区视频 | 一二三四在线视频观看社区 | 三级av免费| 成人一区二区三区 | 亚洲国产成人久久久 | 国产精品美女www爽爽爽视频 | 欧美成年黄网站色视频 | 久久久久久久国产 | 国产美女在线观看 | 日本污视频 | a黄毛片| 一二区视频 | 亚洲国产成人精品女人久久久野战 | 亚洲精品一区在线 | 九九精品在线 | 在线观看日韩 | 亚洲一区二区在线电影 | 在线免费观看视频黄 | 国产欧美一区二区三区在线看 | 中文字幕一区在线观看视频 | 女人av | 天堂一区在线 | 国产精品爱久久久久久久 | 欧美日韩精品中文字幕 | 一区二区小视频 | 中日韩欧美一级片 | 在线观看视频91 |