国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

arduino按鍵控制數(shù)碼管代碼

在本文中,我們將利用Arduino板和幾個外部元件,編寫一個簡單的代碼,實現(xiàn)按鍵來控制數(shù)碼管的數(shù)字顯示。 步驟一: 準備材料 首先,我們需要準備以下材料: Arduino UNO開發(fā)板

在本文中,我們將利用Arduino板和幾個外部元件,編寫一個簡單的代碼,實現(xiàn)按鍵來控制數(shù)碼管的數(shù)字顯示。

步驟一: 準備材料

首先,我們需要準備以下材料:

  • Arduino UNO開發(fā)板
  • 數(shù)碼管
  • 按鍵
  • 杜邦線

步驟二: 連接電路

按照以下連接方式,將電路連接好:

  • 將數(shù)碼管的引腳連接到Arduino板的數(shù)字引腳。
  • 將按鍵連接到Arduino板的數(shù)字引腳。

步驟三: 編寫代碼

打開Arduino開發(fā)環(huán)境,編寫以下代碼:

int digitPins[]  {2, 3, 4, 5}; // 數(shù)碼管引腳
int buttonPin  6; // 按鍵引腳
int number  0; // 數(shù)字初始值
void setup() {
  for (int i  0; i lt; 4; i  ) {
    pinMode(digitPins[i], OUTPUT);
  }
  pinMode(buttonPin, INPUT);
  digitalWrite(buttonPin, HIGH); // 上拉電阻
}
void loop() {
  if (digitalRead(buttonPin)  LOW) { // 當按鍵按下時
    number  ; // 數(shù)字遞增
    if (number gt; 9) {
      number  0; // 超過9時重新從0開始
    }
    digitalWrite(digitPins[0], HIGH); // 打開第一位數(shù)碼管
    displayNumber(number); // 顯示數(shù)字
  } else {
    digitalWrite(digitPins[0], LOW); // 關閉數(shù)碼管
  }
}
void displayNumber(int num) {
  int digits[]  {B11111100, B01100000, B11011010, B11110010, B01100110, B10110110, B10111110, B11100000, B11111110, B11110110}; // 數(shù)字對應的段碼
  for (int i  0; i lt; 4; i  ) {
    digitalWrite(digitPins[i], LOW); // 關閉所有數(shù)碼管
    int segment  num % 10; // 獲取當前數(shù)字的個位數(shù)
    int segmentCode  digits[segment]; // 獲取對應的段碼
    digitalWrite(digitPins[i], HIGH); // 打開當前位數(shù)碼管
    digitalWrite(2, segmentCode amp; 0x01);
    digitalWrite(3, segmentCode amp; 0x02);
    digitalWrite(4, segmentCode amp; 0x04);
    digitalWrite(5, segmentCode amp; 0x08);
    num / 10; // 往高位移動
    delay(2); // 延遲一段時間,使數(shù)字顯示穩(wěn)定
  }
}

步驟四: 上傳代碼并測試

將Arduino板連接到電腦上,點擊上傳按鈕將代碼上傳到Arduino板上。然后,按下按鍵,你將看到數(shù)碼管上的數(shù)字逐漸增加。

通過以上步驟,我們成功地實現(xiàn)了通過按鍵來控制數(shù)碼管的數(shù)字顯示。你可以根據(jù)自己的需求進行代碼的修改和擴展,實現(xiàn)更多有趣的功能。

希望本文對你有所幫助,謝謝閱讀!