Talaan ng mga Nilalaman:
Video: Isang Simple, Praktikal na Arduino Stopwatch: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Maghanap sa web para sa Arduino stopwatch. Malamang nagawa mo lang ito, kung nandito ka. Mula sa personal na karanasan, masasabi ko sa iyo na ang anumang stopwatch sa internet ay alinman sa pagiging kumplikado (sa code, para sa mga nagsisimula), o napakasimple, at hindi praktikal, tulad ng mga patuloy na nagbibilang ng mga segundo nang hindi na-reset.
Akala mo rin naman eh? Well hulaan kung ano. Ginawa ko ito, at kung ano ang higit pa, direkta kong kinukuha ang aking input mula sa pagpapaandar ng millis () - isang walang katapusang linya ng mga numero (hanggang 49 araw, o kung ano pa man). Ang pinakamagandang bahagi? Isa lang ang linya.
Ang pag-reset, ay ang tunay na mahirap na bahagi ng stopwatch. Para sa mga intermediate, programmer, kung hindi mo pa nagagawa, magpatuloy at subukang gawin ito sa iyong sarili, na magkakasama ang mga segundo, minuto, at oras. Makukuha mo ang sinasabi ko.
Para sa mga nagsisimula, basahin ang, at magsaya sa henyo ng aking isip.
Biruin mo, ngunit ang solusyon na naisip ko ay medyo malinis. Narito kung ano ito:
Hakbang 1: Ang Solusyon
Kaya't ang problema ay nagre-reset. Ang nais namin ay isang tuloy-tuloy, paulit-ulit na pag-ikot ng mga numero, mula sa isang walang katapusang output ng sunud-sunod na mga numero (millis () - karaniwang binibilang nito ang milliseconds, o talagang 1.024 milliseconds, ngunit anupaman).
Ang unang bagay na naisip ko ay ang paggamit ng pagkakaiba, tulad ng time1 -time2 at isang pagkaantala. Kalimutan mo na yan Tumatagal ng hindi bababa sa anim na linya ng code, at isang kung pahayag upang mag-boot.
Kaya narito kung paano ito gawin. Mayroon kaming isang limitasyon (59). Nais namin ang lahat mula 0 hanggang 59 na ulitin nang paulit-ulit. Paano?
Paano kung… kinuha namin ang natitira… ng pagpapaandar ng millis na hinati sa 59…. Bingo!
Kaya, dapat itong maging ganito:
(60 [bilang paunang halaga sapagkat ang limitasyon ay 59] + millis () / 1000 [1000 milliseconds ay isang segundo])% 60
Ok, magpaliwanag si lemme. (%) o modulus, karaniwang isang operator tulad ng (+) na nahahanap ang natitira. Tulad ng 9% 2 = 1.
Kaya:
- natitirang (60 + 0)% 60 = 0
- natitirang (60 + 1)% 60 = 1
- natitirang (60 + 58)% 60 = 58
- natitirang (60 + 59)% 60 = 59
- natitirang (60 + 60)% 60 = 60
- natitirang (60 + 61)% 60 = 1
Kita nyo!
Ngayon, para sa mga bahagi.
Hakbang 2: Ang Mga Bahagi
Hindi gaanong, lahat
- Kahit anong arduino
- Anumang display (ginamit ko ang 0.96 "OLED, ngunit maaari mong gamitin ang mayroon ka, siguraduhin lamang na ilagay ang tamang mga variable sa mga pagpapaandar ng display ng iyong display.)
Ayan yun.
Hakbang 3: Ang Code
Narito na Ito ay malinaw na malinaw na nagkomento, kaya dapat walang mga problema. Ang mga aklatan at init para sa 0.96 OLED ay nasa code. Palitan ito ng iyong sariling display kung naiiba ito.
// 0.96 OLED library
# isama
# isama
# isama
# isama
// 0.96 OLED Init
# tukuyin ang OLED_RESET 4
Display ng Adafruit_SSD1306 (OLED_RESET);
int segundo;
int minuto;
int oras;
walang bisa ang pag-setup () {
// Some more 0.96 OLED Init
display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay (); display.setTextSize (2); display.setTextColor (PUTI); }
void loop () {
segundo = (60 + millis () / 1000)% 60;
minuto = (60 + millis () / 60000)% 60; oras = (25 + millis () / 3600000)% 25;
display.clearDisplay ();
display.setCursor (0, 22); // i-print ang bilang ng mga oras mula nang i-reset ang display.print (oras); display.print ("h:");
// print ang bilang ng mga miute mula nang ma-reset
display.print (minuto);
display.print ("m:");
// print ang bilang ng mga segundo mula nang i-reset ang display.print (segundo); display.print ("s");
display.setCursor (0, 0);
display.print ("Stopwatch"); display.drawLine (0, 18, 128, 18, WHITE); display.display ();
}
Hakbang 4: En Finalment…
Kaya ayun! Ngayon ay gawin mo ang nais mo dito. Oras ng ilang mga itlog, o sakupin ang iyong kapitbahayan.
Cheers, Aarush
Inirerekumendang:
Praktikal na PIR para sa Paggamit sa Tahanan: 7 Hakbang (na may Mga Larawan)
Praktikal na PIR para sa Paggamit sa Bahay: Tulad ng marami sa iyo doon na nagtatrabaho sa mga proyekto sa pag-aautomat ng bahay, naghahanap ako upang bumuo ng isang functional PIR sensor para sa pag-automate ng ilang mga sulok sa sulok sa aking sariling tahanan. Bagaman ang light switch PIR sensors ay naging pinakamainam, hindi mo maaaring ibaluktot ang isang sulok. Sa
Praktikal na Arduino ESP32 Wireless Wall Outlet LED Strip Controller: 6 Mga Hakbang
Praktikal na Arduino ESP32 Wireless Wall Outlet LED Strip Controller: Ito ay isang napaka praktikal na DIY Wireless Wall Outlet controller para sa murang mga LED strip. Pinalitan nito ang murang mga wifi Controller na ipinagbibili sa EBay. Gumagana ang mga ito ng maayos sa mga piraso ng RGB Led. Ang EBay Wifi controller ay hindi mahusay na naitayo, at madaling masira. Als
Paano Gumawa ng isang Stopwatch Gamit ang Arduino: 8 Hakbang (na may Mga Larawan)
Paano Gumawa ng isang Stopwatch Gamit ang Arduino: Ito Ay Isang Napakadaling Arduino 16 * 2 Lcd Display Stopwatch ……….. Kung Gusto Mo Ito Na Makatuturo Mangyaring Mag-subscribe Sa Aking Channel https://www.youtube.com / ZenoModiff
Paggamit ng 1602 LCD Keypad Shield W / Arduino [+ Mga Praktikal na Proyekto]: 7 Mga Hakbang
Paggamit ng 1602 LCD Keypad Shield W / Arduino [+ Mga Praktikal na Proyekto]: Maaari mong basahin ito at iba pang kamangha-manghang mga tutorial sa opisyal na website ng ElectroPeakOverview Sa tutorial na ito, malalaman mo kung paano gamitin ang Arduino LCD keypad Shield na may 3 praktikal na proyekto. Ano ang Malalaman Mo: Paano i-set up ang kalasag at kilalanin ang mga keyHo
Isang Praktikal na Robot: 11 Mga Hakbang (na may Mga Larawan)
Isang Praktikal na Robot: Tinatawag ko itong isang praktikal na robot para sa isang bilang ng mga kadahilanan. Maaari itong gawin gamit ang mga tool sa araw-araw na gusto ng karamihan sa mga tao na nagtatrabaho sa paligid ng bahay. Sa pamamagitan ng paggamit ng labis na mga item ang gastos ay napanatili. Maaaring iangat ng braso ng robot ang isang bagay na 2 lb. mula sa