Orodha ya maudhui:
- Hatua ya 1: Mchoro wa Sanduku Nyeusi
- Hatua ya 2: Saa ya polepole
- Hatua ya 3: Kukabiliana
- Hatua ya 4: Kukabiliana na Saa
- Hatua ya 5: Alarm
- Hatua ya 6: Dereva wa Sehemu ya Saba ya Universal
- Hatua ya 7: Unganisha Faili
- Hatua ya 8: Arduino
- Hatua ya 9: Njia ya Cable
Video: Saa 3 ya Saa ya Basys: Hatua 9
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:52
Mradi wetu huunda saa ya kengele kwa kutumia bodi ya Basys 3 FPGA, Arduino, na bodi ya dereva wa spika. Mtumiaji anaweza kuingiza wakati wa sasa kwenye ubao kwa kutumia swichi 11 za kuingiza kwenye Basys 3 na kufunga thamani kwa kutumia kitufe cha kati kwenye ubao. Mtumiaji anaweza kuingiza wakati wa kengele kwa kutumia swichi zile zile lakini bonyeza kitufe cha kushoto ili kufunga wakati wa kengele. Ikiwa wakati usiofaa umeingizwa, kitufe cha kuweka upya (kitufe cha juu) kinaweza kushinikizwa na saa ya saa na saa ya kengele itawekwa saa 00:00. Mtumiaji anaweza kisha kuanza saa kwa kutumia swichi ya kushoto kabisa na kuwasha kengele kwa kutumia swichi inayofuata. Wakati kengele imewashwa, saa ya kengele itatoa sauti wakati wa saa na kuweka wakati wa kengele unalingana.
Hatua ya 1: Mchoro wa Sanduku Nyeusi
Tulianza mradi wetu kwa kuchora mchoro wa sanduku jeusi kuibua pembejeo na matokeo yanayohitajika katika programu yetu. Pembejeo zifuatazo za programu yetu kama vile pembejeo 5-bit (Hour_in) zilianzishwa ili kutaja saa ya saa 24, pembejeo 6-bit (Min_in) kuonyesha hadi dakika 60, kitufe cha kuweka upya (Rst_b) kumruhusu mtumiaji badilisha uingizaji wao wa wakati, pembejeo ya 1-bit (alm_en) ambayo hupakia uingizaji wa kengele, pembejeo ya 1-bit (alarm_sw) kuzima saa ya kengele inapoamilishwa, pembejeo ya 1-bit (e_sec) inayodhibiti wakati kaunta ya sekunde itaendesha, pembejeo ya 1-bit (Led_btn) ambayo inaweka wakati wa sasa, na mwishowe pembejeo ya 1-bit (clk) inayodhibiti wakati ulioonyeshwa na bodi ya Basys 3. Matokeo ni (alm_on) ambayo hutuma ishara kwa Arduino, pato la sseg ambalo linaonyesha wakati wa kuingiza kwenye Basys 3, na pato la anode linalodhibiti ambapo pembejeo zinaonyeshwa kwenye sehemu saba zinazoonyeshwa.
Hatua ya 2: Saa ya polepole
Saa polepole au faili ya saa_div2 huunda saa ambayo masafa yake ni 2 hz. Ikiwa tutalisha saa hii kwa kaunta yetu ya sekunde, thamani ya sekunde itaongezeka kwa moja kila sekunde. Saa polepole hutumiwa kuunda ishara ya saa ya kuaminika ambayo hubadilika kutoka chini kwenda juu mara moja kwa sekunde.
Hatua ya 3: Kukabiliana
Hesabu ya Vipengele (dakika na sekunde):
Kazi ya kimsingi ya dakika na sekunde ni kwamba ni kaunta. Kaunta ya dakika inachukua pembejeo (Vin) ambayo ni ishara kutoka kwa pembejeo (Min_in), na kisha inahesabu hadi kufikia pembejeo inayotakikana. Sekunde huchukua tu pembejeo ya swichi (e_Sec) kwani haiwezi kuonyeshwa kwenye sehemu saba, na inahesabiwa kwa nyuma mara tu swichi iko juu '1'. Zote mbili zinatoa pato la (Qout), na kisha huhifadhiwa kwenye (data) ambayo huipeleka kwa SSEG ambayo hufanywa kwenye faili inayounganisha. Pia, wakati dakika na sekunde hufikia maadili ya 59 inabadilisha, na pato lao ni '1' ili kuongeza dakika / saa. Inaweza pia kuchorwa na kuweka upya (rst_b) kwa pembejeo zao.
Hatua ya 4: Kukabiliana na Saa
Saa ya Kukabiliana na Sehemu
Vivyo hivyo, kwa kaunta ya sehemu ya dakika na sekunde sehemu ya saa inachukua pembejeo kama vile (Vin) ambayo ni ishara kutoka kwa kuingiza faili (Hour_in), na ina matokeo ambayo yameunganishwa kwa njia ile ile dakika na sekunde. Thamani ya kuhesabu saa inapofika 24 00 inabadilisha hadi 00 00.
Hatua ya 5: Alarm
Faili ya kengele.vhd imeundwa na d-flip-flops ambazo ni vifaa vya kuhifadhi ambavyo vinaweza kuhifadhi data ya dijiti. Faili ya kengele hutumiwa kuhifadhi wakati ambapo kengele itaamilishwa. Ili kuhifadhi data ya masaa (pembejeo 5 kidogo) na dakika (pembejeo 6 kidogo) lazima tuangazie d-flip-flops 11 ndani ya faili yetu ya kengele. Ili kufanya hivyo, lazima kwanza tuingize mantiki inayosimamia utendaji wa d-flip-flops na ramani vifaa. Kila moja ya d-flip-flops 11 itahifadhi data moja kutoka kwa pembejeo na kuruhusu data kupangiliwa kwa matokeo ya faili ya kengele. Kwa sababu d-flip-flops kuhifadhi data, tunaweza kutumia data baadaye wakati hata swichi za kuingiza zimebadilishwa.
Hatua ya 6: Dereva wa Sehemu ya Saba ya Universal
Dereva wa sehemu saba ya ulimwengu anapokea pembejeo kutoka saa na saa na anaweza kuzipeleka kwa onyesho la sehemu saba kwenye ubao. Dereva anaweza kutoa hesabu mbili tofauti kwenye ubao kwa wakati mmoja. Tulitumia kazi hii kuonyesha wakati wa saa na wakati wa dakika kando. Onyesho la sehemu saba linaweza tu kuamsha nambari moja kwa wakati kwa hivyo faili ya sseg inapaswa kutumia multiplexing kuonyesha nambari zote za wakati huo huo wakati huo huo. Ishara ya saa ya bodi inalishwa ndani ya sseg kuweka wakati sahihi wa kuzidisha. Njia ya usimbuaji wa nambari iliyo na alama ya binary ni muhimu kubadilisha pembejeo kwa faili kuwa fomu ambayo inaweza kutolewa kwa onyesho la sehemu saba. Pato la mwisho la faili la sseg limepangwa kwa onyesho la sehemu saba na wakati sahihi unaonyeshwa kwenye onyesho.
Hatua ya 7: Unganisha Faili
Faili ya kiunganisho inaunganisha mambo mengine yote ya programu na ramani ishara kwenye eneo lao sahihi. Kila sehemu huletwa na kutiliwa ndani ya faili. Ishara hutumiwa kuhamisha data kutoka sehemu moja hadi nyingine. Ramani ya bandari itafuata mchoro wa sanduku nyeusi iliyoorodheshwa hapo juu. Faili ya kiungo pia inashikilia mantiki inayotawala wakati kengele imeamilishwa. Wengi wa mradi tayari utakamilika kwa hatua hii. Kazi iliyobaki inaelekeza kila ishara kwenye eneo linalofaa.
Hatua ya 8: Arduino
Arduino hutumiwa kuamsha spika na vile vile kudhibiti sauti na muda wa dokezo lililochezwa kupitia spika. Aruuino anasoma ishara ya dijiti kutoka bodi ya Basys 3. Wakati ishara hii iko juu, arduino itatoa ishara ya PWM inayodhibiti sauti na muda wa kengele. Ishara ya pato kutoka kwa arduino inaunganisha na ishara ya kuingiza ya bodi ya dereva ya spika ambayo huongeza sauti ya spika. Arduino hufanya mchakato huu haraka sana kurudia mara nyingi kwa sekunde.
Hatua ya 9: Njia ya Cable
Bodi ya arduino na Basys 3 lazima iunganishwe kimwili kuhamisha ishara kati ya bodi. Cable ya kwanza kwa waya itakuwa kutoka kwa pini ya ardhi ya JA PMOD ya Basys 3 hadi pini ya arduino. Ifuatayo unganisha waya kutoka kwa siri 1 ya JA PMOD ya Basys 3 hadi pini ya dijiti 7 ya arduino. Ifuatayo, unganisha pini mbili za ardhini kutoka arduino hadi pini za ardhini za dereva wa spika. Ifuatayo, unganisha pato la 3.3 V la arduino kwenye pini ya Vcc ya dereva wa spika. Ifuatayo, unganisha pini ya dijiti 9 ya arduino na pini ya In ya dereva wa spika.
Ilipendekeza:
Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Hatua 14 (na Picha)
Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Halo wote! Huu ni maoni yangu kwa Mashindano ya Mwandishi wa Mara ya Kwanza ya 2020! Ikiwa unapenda mradi huu, ningethamini sana kura yako :) Asante! Hii inayoweza kufundishwa itakuongoza kupitia mchakato wa kujenga saa iliyotengenezwa na saa! Nimeita kwa ujanja
Kuweka DS3231 RTC (Saa Saa Saa) Sahihi, Haraka na Kujiendesha Kutumia Java (+ -1s): Hatua 3
Kuweka DS3231 RTC (Saa Saa Saa) Sahihi, Haraka na Kujiendesha Moja kwa Moja Kutumia Java (+ -1s): Hii inayoweza kufundishwa itaonyesha jinsi ya kuweka wakati kwenye Saa Saa ya DS3231 kwa kutumia Arduino na programu ndogo ya Java inayotumia uhusiano wa serial wa Arduino. Mantiki ya kimsingi ya programu hii: 1. Arduino hutuma ombi la mfululizo
Saa ya Saa ya Saa ya Dakika 30: Hatua 3 (na Picha)
Saa ya Saa ya Saa ya Dakika 30: Rafiki anaanzisha biashara ndogo ambayo hukodisha rasilimali kwa muda wa dakika 30. Alitafuta kipima muda ambacho kingeweza kutisha kila dakika 30 (saa na nusu saa) na sauti nzuri ya gong, lakini sikuweza kupata chochote. Nilijitolea kuunda si
DS1307 Saa Saa Saa RTC Na Arduino: Hatua 4
DS1307 Saa Saa Saa RTC Na Arduino: Katika Mafunzo haya, tutajifunza juu ya Saa Saa Saa (RTC) na jinsi Arduino & Saa Saa Saa IC DS1307 imewekwa pamoja kama kifaa cha wakati.Real Time Clock (RTC) hutumiwa kwa ufuatiliaji wa wakati na kudumisha kalenda.Ili kutumia RTC, w
Kutengeneza Saa na M5stick C Kutumia Arduino IDE - RTC Saa Saa Saa Na M5stack M5stick-C: Hatua 4
Kutengeneza Saa na M5stick C Kutumia Arduino IDE | RTC Saa Saa Saa Na M5stack M5stick-C: Halo jamani katika mafundisho haya tutajifunza jinsi ya kutengeneza saa na bodi ya maendeleo ya m5stick-C ya m5stack kutumia Arduino IDE.So m5stick itaonyesha tarehe, saa & wiki ya mwezi kwenye maonyesho