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

標題: ARDUINO+TM1637+按鍵 顯示時間 [打印本頁]

作者: dhp1112    時間: 2018-1-22 14:38
標題: ARDUINO+TM1637+按鍵 顯示時間
#include <TimerOne.h>
#include <TM1637.h>
#define ON 1
#define OFF 0
int8_t TimeDisp[] = {0x00, 0x00, 0x00, 0x00};
unsigned char ClockPoint = 1;
unsigned char Update;
unsigned char halfsecond = 0;
unsigned char second;
unsigned char minute = 20;
unsigned char hour = 10;
int buttonpin2=2;//按鍵的一只腳接端口2,另一只腳接地
int buttonpin7=7;//按鍵的一只腳接端口7,另一只腳接地

#define CLK 10
#define DIO 11          //DIO接一個4.7k的下拉電阻,這點很重要,否則數碼管會假死。
TM1637 tm1637(CLK, DIO);

void setup()
{
  pinMode(buttonpin2,INPUT_PULLUP);//輸入上拉模式
  pinMode(buttonpin7,INPUT_PULLUP);//輸入上拉模式
  tm1637.set();
  tm1637.init();
  Timer1.initialize(500000);//timing for 500ms
  Timer1.attachInterrupt(TimingISR);//declare the interrupt serve routine:TimingISR
}

void loop()
{
  if(digitalRead(buttonpin2)==0)//按鍵被按下,調整小時
  {
    delay(200);//延時去抖動
    if(digitalRead(buttonpin2)==0)
    {
      hour=hour+1;
      if (hour == 24) {hour = 0;}
    }
  }
  if(digitalRead(buttonpin7)==0)//按鍵被按下,調整分
  {
    delay(200);//延時去抖動
    if(digitalRead(buttonpin7)==0)
    {
      minute=minute+1;
      if (minute == 60){minute = 0;}
    }
  }
  if (Update == ON)  //每隔0.5秒調用一次
  {
    TimeUpdate();
    tm1637.display(TimeDisp);
  }
}

void TimingISR()
{
  halfsecond ++;  Update = ON;
  if (halfsecond == 2)
  {
    second ++;  halfsecond = 0;
    if (second == 60)
    {
      minute ++;  second = 0;
      if (minute == 60)
      {
        hour ++;  minute = 0;
        if (hour == 24) {hour = 0;}
      }
    }
  }
  ClockPoint = (~ClockPoint) & 0x01;  //ClockPoint先是按位取反再按位與,結果就是0 1 0 1......這樣一直下去。我的理解是0.5秒為0,1秒為1,1.5秒為0,2秒為1。。。。。。
}

void TimeUpdate(void)
{
  if (ClockPoint)  tm1637.point(POINT_ON);
  else  tm1637.point(POINT_OFF);
  TimeDisp[0] = hour / 10;
  TimeDisp[1] = hour % 10;
  TimeDisp[2] = minute / 10;
  TimeDisp[3] = minute % 10;
  Update = OFF;
}


作者: chenhanzhong    時間: 2020-5-11 09:47
tm1637.display(TimeDisp);
這一段不太理解,樓主知道嗎?
作者: 47okey    時間: 2021-9-20 15:09
chenhanzhong 發表于 2020-5-11 09:47
tm1637.display(TimeDisp);
這一段不太理解,樓主知道嗎?

int8_t TimeDisp[] = {0x00, 0x00, 0x00, 0x00};

tm1637.display(TimeDisp);
小括號里是TimeDisp數組的內容,這條就是顯示小時、分鐘這4 位
作者: ziba108    時間: 2023-8-11 18:29
能否提供完整的程序,,,
作者: ziba108    時間: 2023-8-18 18:41
能否提供完整的程序,,,
作者: bobo電子愛好者    時間: 2023-10-20 09:07
結構體面向對象封裝了 tm1637。
作者: mlsyong321    時間: 2024-12-28 19:47
庫要下timerone和Grove4-Digit Display,TM1637這個庫下了沒有用




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美精品三级 | 午夜影院黄 | 激情小说在线视频 | 成人不卡视频 | 欧美一级片免费 | 中文字幕一区二区三区乱码 | 色网站在线| 在线黄色av | 欧美视频网站 | 在线观看av免费 | wwww黄色| 性一交一乱一伧老太 | 国产色自拍 | 亚洲黄色三级 | 国产精品手机在线观看 | 国产在线视频一区二区 | 成人午夜毛片 | 18色av| aaaa级片 | av每日更新 | 久久久久免费 | 日韩国产欧美 | 国产伦精品一区二区三区视频网站 | 亚洲精品一区二区三区在线观看 | 在线不欧美 | 欧美成人久久 | 一区二区在线看 | 国产三级做爰高清在线 | www.久久久久 | 91精品久久久久久久久久 | 中文字幕网址在线 | 韩日中文字幕 | 欧美日韩91 | av片在线观看 | 一区久久| 一区二区精品视频 | 伊人网在线视频 | 国产91精品在线观看 | 91福利在线观看 | 免费视频久久 | 亚洲综合天堂 |