การสร้างนาฬิกาดิจิตอลด้วย Arduino ตัวอย่าง /* DigitalClockRTC1307 By IOXhop.com */ #include <Wire.h> #include <Time.h> #include <DS1307RTC.h> #include <TM1637Display.h> // Module connection pins (Digital Pins) #define CLK 2 #define DIO 3 unsigned long previousMillis; bool showdot = false; String SerialGET = ""; TM1637Display display(CLK, DIO); void setup() { Serial.begin(9600); } void loop() { tmElements_t tm; if (!RTC.read(tm)) { tm.Hour = 0; tm.Minute = 0; tm.Second = 0; RTC.write(tm); } display.write(tm.Hour/10, 0); display.write(tm.Hour%10, 1); display.write(tm.Minute/10, 2); display.write(tm.Minute%10, 3); // Dot blink unsigned long currentMillis = millis(); if (currentMillis-previousMillis>500){ previousMillis = currentMillis; display.dotShow(showdot=!showdot); } while (Serial.available()) { char c = Serial.read(); if (c == '\n') { int Hour, Min, Sec;
บทความ
กำลังแสดงโพสต์จาก ธันวาคม, 2018
- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
LCD เริ่มต้น #include <LiquidCrystal.h> LiquidCrystal lcd(12,11,4,5,6,7); void setup() { lcd.begin(16, 2); lcd.print("hello, world!"); lcd.setCursor(0, 1); lcd.print(millis() / 1000); } void loop() { } วิธีทำ เราเขียน #include <LiquidCrystal.h> กับ LiquidCrystal lcd(12,11,4,5,6,7); กำหนดขาที่จะต่อ 12 ต่อ RS ขา 4 11 ต่อ E ขา 6 4 ต่อ D4 ขา 11 5 ต่อ D5 ขา 12 6 ต่อ D6 ขา่ 13 7 ต่อ D7 ขา 14 บน void setup ใน void setup เขียน lcd.begin(16, 2); lcd.print("hello, world!"); lcd.setCursor(0, 1); lcd.print(millis() / 1000); พอเอาภาษา Cไปใส่ Arduino จะมีคำว่า hello, world! ที่เขียนใน lcd.print("hello, world!");
- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
LED สวิตซ์กด โค้ดตัวอย่าง void setup() { pinMode (11 , OUTPUT); pinMode(13, OUTPUT); pinMode(5, INPUT); } void loop() { int SW = digitalRead(5); if (SW==0){ digitalWrite(13, LOW); digitalWrite(11, HIGH); delay(1000); digitalWrite(11, LOW); digitalWrite(13, HIGH); delay(1000); } วิธีทำ เราตั้งขา 11 เป็น pinMode(11,OUTPUT); กับขา 13 ส่วนขา 5 ตั้งเป็น pinMode(5,INPUT) ในที่ void setup() void loop() เราตั้งขา 5 เป็นสวิตช์ int SW = digitalRead(5); ใช้ if (SW==0) ควบคุมขา 13,11 ที่ GND แล้วหน่วงเวลาติดดับ LED 1 วิ " delay(1000);" พอเอาภาษา C ไปใส่ Arduino ไฟทั้งสองจะติดสลับกัน
- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
7 segment สวิตสั่งนับเลขกลับ โค้ดตัวอย่าง void setup() { pinMode(11, OUTPUT); pinMode(10, OUTPUT); pinMode(9, OUTPUT); pinMode(8, OUTPUT); pinMode(7, OUTPUT); pinMode(6, OUTPUT); pinMode(5, OUTPUT); pinMode(4, INPUT); pinMode(1, INPUT); } void loop(){ gHu (); } void gHu (){ int XD = digitalRead (4); if (XD==0){ digitalWrite(11, HIGH); digitalWrite(10, HIGH); digitalWrite(9, HIGH); digitalWrite(8, HIGH); digitalWrite(7, HIGH); digitalWrite(6, HIGH); digitalWrite(5, LOW); delay(1000); digitalWrite(11, LOW); digitalWrite(10, HIGH); digitalWrite(9, HIGH); digitalWrite(8, LOW); digitalWrite(7, LOW); digitalWrite(6, LOW); digitalWrite(5, LOW); delay(1000); digitalWrite(11, HIGH); digitalWrite(10, HIGH); digitalWrite(9, LOW); digitalWrite(8, HIGH); digitalWrite(7, HIGH); digitalWrite(6, LOW); digitalWrite(5, HIGH); delay(1000); digitalWrite(11, HIGH); digitalWrit
- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
มอเตอร์แบบกดสวิตซ์ ติด-ดับ โค้ดตัวอย่าง void setup() { pinMode(13, OUTPUT); pinMode(11, OUTPUT); pinMode(4, INPUT); pinMode(1, INPUT); } void loop() { int AA = digitalRead(4); int BB = digitalRead(1); if (AA == 0) { digitalWrite(13, HIGH); digitalWrite(11, LOW); delay(1000); } if (BB == 0) { digitalWrite(13, LOW); digitalWrite(11,HIGH); delay(1000); } วิธีทำ เรากำหนดขา 13,11 เป็น pinMode(13, OUTPUT); pinMode(11, OUTPUT); ขา 4,1 เป็น pinMode(4, INPUT); pinMode(1, INPUT); ใน void setup () ต่อไปก็เขียนสวิตช์ขา 4,1 แล้วตั้งตัวแปล " int AA = digitalRead(4); int BB = digitalRead(1);" เอาตัวแปลตั้งขา 13,11 if (AA == 0) { digitalWrite(13, HIGH); digitalWrite(11, LOW); delay(1000); } if (BB == 0) { digitalWrite(13, LOW); digitalWrite(11,HIGH); delay(1000); } digitalWrite(13, LOW); digitalWrite(11,LOW
- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
7 Segment โค้ดตัวอย่าง void setup() { pinMode (11,OUTPUT); pinMode (10,OUTPUT); pinMode (9,OUTPUT); pinMode (8,OUTPUT); pinMode (7,OUTPUT); pinMode (6,OUTPUT); pinMode (5,OUTPUT); } void loop() { mul(); kill(); } void mul () { digitalWrite(11, LOW); digitalWrite(10, LOW); digitalWrite(9, LOW); digitalWrite(8, LOW); digitalWrite(7, LOW); digitalWrite(6,LOW); digitalWrite(5, HIGH); delay (1000); digitalWrite(11, HIGH); digitalWrite(10, LOW); digitalWrite(9, LOW); digitalWrite(8, HIGH); digitalWrite(7, HIGH); digitalWrite(6,HIGH); digitalWrite(5, HIGH); delay (1000); digitalWrite(11, LOW); digitalWrite(10, LOW); digitalWrite(9, HIGH); digitalWrite(8, LOW); digitalWrite(7, LOW); digitalWrite(6,HIGH); digitalWrite(5, LOW); delay (1000); digitalWrite(11, LOW); digitalWrite(10, LOW); digitalWrite(9, LOW); digitalWrite(8, LOW); digitalWrite(7, HIGH); digitalWrite(6,HIGH); digitalWrite(5, LOW); delay (1000); digitalWrite(11, HIGH); digitalWrite(10, LOW); digitalWrite(9, LO