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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

新手嘗試Arduino溫度數碼管顯示程序 可調亮度

[復制鏈接]
跳轉到指定樓層
樓主

  1. int a = 15;//設置端口
  2. int b = 19;
  3. int c = 7;
  4. int d = 5;
  5. int e = 4;
  6. int f = 16;
  7. int g = 8;
  8. int dp = 6;
  9. int tempPin = 7;
  10. int d1 = 14;
  11. int d2 = 17;
  12. int d3 = 18;
  13. int d4 = 9;
  14. int n = 0;//溫度變量
  15. int del = 2; //數碼管的亮度
  16. unsigned long m=0

  17. byte segs[7] = { a, b, c, d, e, f, g }
  18. byte seven_seg_digits[10][7] = { { 1,1,1,1,1,1,0 },
  19.                                { 0,1,1,0,0,0,0 },
  20.                                { 1,1,0,1,1,0,1 },
  21.                                { 1,1,1,1,0,0,1 },
  22.                                { 0,1,1,0,0,1,1 },
  23.                                { 1,0,1,1,0,1,1 },
  24.                                { 1,0,1,1,1,1,1 },
  25.                                { 1,1,1,0,0,0,0 },
  26.                                { 1,1,1,1,1,1,1 },
  27.                                { 1,1,1,1,0,1,1 }
  28.                                };
  29. void setup()
  30. {
  31.   pinMode(d1, OUTPUT);
  32.   pinMode(d2, OUTPUT);
  33.   pinMode(d3, OUTPUT);
  34.   pinMode(d4, OUTPUT);
  35.   pinMode(a, OUTPUT);
  36.   pinMode(b, OUTPUT);
  37.   pinMode(c, OUTPUT);
  38.   pinMode(d, OUTPUT);
  39.   pinMode(e, OUTPUT);
  40.   pinMode(f, OUTPUT);
  41.   pinMode(g, OUTPUT);
  42.   pinMode(dp, OUTPUT);
  43.   pinMode(11, OUTPUT);
  44.   digitalWrite(11, LOW);
  45.   Serial.begin(9600);
  46. }
  47. void loop()//運行程序
  48. {
  49. float tempval=analogRead(tempPin)* 4.6;
  50. if (m%30==0) n=int(tempval);

  51.       if (n>300)  digitalWrite(11, HIGH);
  52.       if (n<=300)  digitalWrite(11, LOW);
  53.   clearLEDs()
  54.   delay(del)
  55.   lightSegments(n/1000%10);

  56.   pickDigit((n/1000%10>0));

  57. clearLEDs();
  58.   delay(del);
  59.   pickDigit(2);
  60.   lightSegments(n/100%10);
  61.   delay(del+2);

  62.   clearLEDs();
  63.   pickDigit(3);
  64.   lightSegments(n/10%10);
  65.   dispDec(3);
  66.   delay(del+2);

  67.   clearLEDs();
  68.   delay(del);
  69.   pickDigit(4);
  70.   lightSegments(n%10);
  71.   delay(del-1);
  72.   m++;


  73. Serial.println(analogRead(tempPin));
  74. Serial.println(n);
  75. }

  76. void pickDigit(int x)
  77. {
  78.   digitalWrite(d1, LOW);
  79.   digitalWrite(d2, LOW);
  80.   digitalWrite(d3, LOW);
  81.   digitalWrite(d4, LOW);
  82.   switch(x)
  83.   {
  84.   case 1:
  85.     digitalWrite(d1, HIGH);
  86.     break;
  87.   case 2:
  88.     digitalWrite(d2, HIGH);
  89.     break;
  90.   case 3:
  91.     digitalWrite(d3, HIGH);
  92.     break;
  93.   case 4:// default:
  94. digitalWrite(d4, (m%100>=30));

  95.     break;
  96.   }
  97. }
  98. void dispDec(int x)
  99. {
  100. digitalWrite(dp, LOW);//點亮小數點
  101. }
  102. void clearLEDs()
  103. {
  104.     for (int i = 0; i < 7; i++)
  105. {
  106.     digitalWrite(segs[ i], HIGH);
  107.      }
  108.     digitalWrite(dp, HIGH);
  109. }
  110. void lightSegments(int x)
  111. {
  112. for (int i = 0; i < 7; i++)
  113. {
  114. digitalWrite(segs[ i], 1-seven_seg_digits[x][ i]);
  115.   }
  116. }
復制代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1 發表于 2019-4-15 16:53 | 只看該作者
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91看片在线 | 97久久精品午夜一区二区 | 欧美视频三区 | 很黄很污的网站 | 成人免费av | 亚洲三级在线观看 | 日韩成年人视频在线 | 国产91在线播放精品91 | 日本黄色免费片 | 不卡一区 | 精品粉嫩aⅴ一区二区三区四区 | 超碰网址 | 国产精品国产成人国产三级 | 欧美日韩在线视频观看 | 成人毛片网站 | 亚洲精品68久久久一区 | 久在线 | 成人免费在线视频 | 国产精品有限公司 | 国产高清免费在线 | 在线观看深夜视频 | 在线播放一区二区三区 | 久久99精品久久久97夜夜嗨 | 精品久久国产 | 狠狠操狠狠干 | 国产在线不卡视频 | 午夜av成人 | 国产在线精品一区二区 | 免费一区二区 | 97精品视频在线 | 久草青青草 | 999热精品| 久久av.com| 国产高清免费 | 婷婷色成人 | 国产乱码精品一区二区三区忘忧草 | 澳门永久av免费网站 | 伊伊综合网 | 一区亚洲 | 久久夜视频 | 国产精品毛片无码 |