![Бүх нийтийн унтраагчийн загвар: 10 алхам Бүх нийтийн унтраагчийн загвар: 10 алхам](https://i.howwhatproduce.com/images/002/image-4488-49-j.webp)
Агуулгын хүснэгт:
- Алхам 1: Өгөгдсөн VHDL файлуудыг импортлох
- Алхам 2: VHDL шилдэг модулийг задлах
- Алхам 3: VHDL Kill Switch Module -ийн задаргаа
- Алхам 4: VHDL Flip Flop модулийн задаргаа
- Алхам 5: VHDL Piezo Buzzer модулийн задаргаа
- Алхам 6: VHDL хязгаарлалтын файлын задаргаа
- Алхам 7: Базис байгуулах 3
- Алхам 8: VHDL файлуудыг Basys дээр хэрэгжүүлэх 3
- Алхам 9: Basys 3 самбарыг ашиглах
- Алхам 10: Үзүүлээрэй
2025 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2025-01-23 15:00
![Бүх нийтийн унтраагчийн загвар Бүх нийтийн унтраагчийн загвар](https://i.howwhatproduce.com/images/002/image-4488-50-j.webp)
Унтахаасаа өмнө гэрийнхээ бүх гэрэл унтарсан эсэхийг шалгахаас залхаж байна уу? Ямар ч үймээн самуунгүйгээр гэрэл бүрийг нэгэн зэрэг унтрааж өгөхийг хүсч байна уу? Эрчим хүч, цаг хэмнэхийн тулд бид онолын хувьд бүхэл бүтэн байшинг нэгэн зэрэг хаах системийг бий болгохоор шийдсэн.
Бид энэхүү үзэл баримтлалын нотолгоог хэд хэдэн LED болон basys 3 хэлхээний самбар ашиглан загварчилж, товчлуур дарахад бүх LED -ийг идэвхгүй болгох загварыг бүтээсэн. Энэхүү загварыг гэрийн гэрэлтүүлгийн бодит системд ашиглах боломжтой боловч VHDL файлд илүү төвөгтэй утас, өөрчлөлт оруулах шаардлагатай болно.
Алхам 1: Өгөгдсөн VHDL файлуудыг импортлох
Манай загварыг зөв ажиллуулахын тулд Basys 3 самбарт зааварчилгаа өгдөг програмыг татаж авах шаардлагатай болно.
Эхлээд та vhdl файлуудыг техник хангамжид хэрэгжүүлэх синтез хэрэгслийг татаж авах хэрэгтэй болно. Хэрэв та бүх код нь бидний дизайныг ямар ч өөрчлөлт оруулахгүйгээр бүрэн хуулбарлах болно гэдэгт итгэлтэй байхыг хүсч байвал Vivado 2016.2 -ийг ашиглахыг зөвлөж байна. Vivado -г суулгасны дараа та төсөл үүсгэж, манай эх файлыг татаж авах боломжтой. Тэдгээрийг төслийнхөө эх сурвалж болгон нэмээрэй, хязгаарлалтын файлыг нэмж оруулахаа бүү мартаарай!
Дараа нь бид эх файл тус бүр юу хийдэг талаар тайлбарлах болно. Хэрэв та төхөөрөмжийн физик бүтцэд нэвтрэхийг хүсч байвал 2-6 -р алхамуудыг алгасаарай.
Алхам 2: VHDL шилдэг модулийг задлах
![VHDL шилдэг модулийн задаргаа VHDL шилдэг модулийн задаргаа](https://i.howwhatproduce.com/images/002/image-4488-51-j.webp)
![VHDL шилдэг модулийн задаргаа VHDL шилдэг модулийн задаргаа](https://i.howwhatproduce.com/images/002/image-4488-52-j.webp)
Төслийн дээд модуль нь бүх бүрэлдэхүүн хэсгүүдийн модулийг ашигласан тоног төхөөрөмжтэй холбодог. Таны харж байгаагаар бид killSwitch болон buzzerControl модулиудыг дээд хэсэгт бүрэлдэхүүн хэсэг гэж тодорхойлсон болно.
Доод хэсэгт эдгээр модулиуд хоорондоо хэрхэн холбогдсон болохыг зааж өгсөн болно. Бид дөрвөн LED -ийг самбар дээр холбож, killSwitch dev0 -ээс dev3 хүртэлх модулиудтай холбосон. Бид холбогдсон LED бүрийн төлөв байдлыг удирдах нэг модул хэрэгтэй байгаа тул killSwitch гэсэн дөрвөн модулийг тодорхойлсон болно. Эдгээр модуль бүр нь дээд модулийн тодорхойлолтод бидний үүсгэсэн цаг, товчлуурын дохио, тэдгээрийн холбогдох оролт, гаралтын төхөөрөмжийн дохиог ашигладаг.
Доод талд байгаа дуугаралтын хяналтын модуль нь бүх нийтийн унтраах товчлуурыг дарахад дуугаралтыг идэвхжүүлдэг. Таны харж байгаагаар дуут дохионы хяналтын модулийг цаг, товчлуурын дохиог оролт болгон дамжуулдаг. Үүнийг зохих ёсоор хянахын тулд физик дохионы гаралтын зүүг дамжуулдаг.
Алхам 3: VHDL Kill Switch Module -ийн задаргаа
![VHDL Kill Switch Module -ийн эвдрэл VHDL Kill Switch Module -ийн эвдрэл](https://i.howwhatproduce.com/images/002/image-4488-53-j.webp)
![VHDL Kill Switch Module -ийн эвдрэл VHDL Kill Switch Module -ийн эвдрэл](https://i.howwhatproduce.com/images/002/image-4488-54-j.webp)
Kill Switch бол бүх нийтийн унтраах товчлуур бөгөөд модуль нь голчлон бусад хэлхээний элементүүдтэй холбох асуудал бөгөөд ингэснээр дарахад бүх гэрэл унтрах болно.
Дээд модуль нь физик техник хангамжийг програм хангамжтай холбох ажлыг гүйцэтгэдэг бол killSwitch модуль нь төхөөрөмж бүрийн үндсэн логикийг зохицуулдаг. Модуль нь цагийн дохио, бүх нийтийн унтраах товчлуур, төхөөрөмжийг солих унтраалга зэргийг оруулдаг. Үүний хариуд холбогдсон төхөөрөмжийн зүүний байдлыг хянадаг.
Кодын архитектурын хэсэгт санах ойг хадгалахын тулд dFlipFlop модульд хамааралтай болохыг бид харж байна. Түүнчлэн, бид флопыг холбох, логик мэдэгдлүүдээ хэрэгжүүлэх дөрвөн дохиог зарласан болохыг та харж болно. Кодын зан үйлийн хэсэгт бид dFlipFlop модулийн жишээг үүсгэж, оролт/гаралтын дохиог портуудад өгсөн.
Эндээс бидний логикийн гол хэсэг нь invertState ба isDevOn -ийн дохионы утгуудад оршдог. Төхөөрөмжийн бидний логик үндэс нь дараах байдалтай байна: "Шилжүүлэгчийг асаахад гэрэл нь асаах/унтраах төлөвийг өөрчилдөг. Товчлуурыг дарах, LED асаалттай байх үед LED нь түүний төлөвийг унтраадаг. " Эдгээр хоёр мэдэгдлээс бид LED -ийн төлөв нь унтраалга болон санах ойн элементийн XOR байх ёстой гэдгийг тодорхойлж болно. Үүнийг isDevOn дохиогоор хэрэгжүүлж байгааг харж болно. Санах ойн элементийн LED -ийг манай invertState дохиогоор удирддаг. Хэрэв LED асаалттай байгаа бөгөөд товчлуур дарагдсан бол бидний санах ойн элемент шинэчлэгдэж, төлөв байдлыг нь өөрчлөх болно. Энэ нь LED -ийн төлөв байдлыг өөрчилдөг.
Алхам 4: VHDL Flip Flop модулийн задаргаа
![VHDL Flip Flop модулийн задаргаа VHDL Flip Flop модулийн задаргаа](https://i.howwhatproduce.com/images/002/image-4488-55-j.webp)
Манай дизайны нэг асуудал бол унтраагуурыг ашигласны дараа асаалттай байрлал руу буцахын тулд өмнө нь асаалттай байсан гэрлүүдийг хоёр удаа эргүүлэх шаардлагатай болсон явдал байв. Цаг хугацаа өнгөрөх тусам энэ нь хүмүүст ихээхэн төвөг учруулах болно. Мэдээлэл хадгалах чадвартай хэлхээний элемент болох "Flip Flop" -ыг дизайнд оруулах замаар бид энэхүү эвгүй байдлыг тойрч чадсан. Одоо систем нь гэрлийн унтраалга өмнө асаалттай байсан эсэхийг санаж байгаа бөгөөд хэрэв дахин эргүүлбэл анхны байрлалаас үл хамааран асах болно.
VHDL код нь манай хэлхээний дизайны бүрэлдэхүүн хэсэг болгон Flip Flop үүсгэхийн тулд if and else мэдэгдэл ашигладаг. Энэ нь цагийн дохио бага байдлаас өндөр төлөвт шилжих, гэрлийн чийдэн асах, унтраах товчлуурыг дарахад унтраах товчлуур нь түүний оролтыг дарж бичих боломжийг олгодог. Оролтыг дарж бичихэд флип флоп нь урвуу болно.
Алхам 5: VHDL Piezo Buzzer модулийн задаргаа
![VHDL Piezo Buzzer модулийн задаргаа VHDL Piezo Buzzer модулийн задаргаа](https://i.howwhatproduce.com/images/002/image-4488-56-j.webp)
![VHDL Piezo Buzzer модулийн задаргаа VHDL Piezo Buzzer модулийн задаргаа](https://i.howwhatproduce.com/images/002/image-4488-57-j.webp)
Тоног төхөөрөмжийн дизайны хувьд энэ файл нь арай илүү боловч дээд зэргийн модуль болон хязгаарлалтын файлуудыг жигд ажиллуулахад чухал ач холбогдолтой юм. Хэрэв та Piezo дохио ашиглахгүй байхыг сонгосон бол энэ файлыг татаж аваарай, гэхдээ дуугаруулагчийг Basys 3 самбарт бүү хавсаргаарай.
Piezo дуут дохио нь идэвхгүй болгох товчлуурыг дарсны дараа хоёр тэмдэглэлийн аяыг тоглуулах бөгөөд энэ товчлуурыг дарсан гэсэн сонсголын хариуг хэрэглэгчдэд өгөх болно. Бид үүнийг VHDL -д үйл явцын бүтэц дэх хэд хэдэн if илэрхийллээр дамжуулан хэрэгжүүлсэн. Бид хичнээн цагийн өөрчлөлт хийгдсэнийг хянахын тулд бүхэл тоон утгыг үүсгэж эхлэв. Процесс эхэлмэгц програм нь эхний хагас секундыг зарцуулдаг (0-50 сая цаг), 440 герц давтамжтай A тэмдэглэл гаргадаг. Энэ нь модуль функц бүхий 227272 цагны олон тооны тэмдэгт бүрийг пиезо дуугаргах дохиог эргүүлэх замаар хийгддэг. Энэ тоо нь самбарын цагийн дохиог (100 МГц) хүссэн давтамжид (400 Гц) хуваасны үр дүн юм. Хоёр дахь хагас секундын турш (50-100 сая цаг) нь самбар дээрх F тэмдэглэлийг 349.2 герц давтамжтай гаргадаг. Нэг секундын дараа програм нь цагийн хувьсагчийг нэмэгдүүлэхгүй бөгөөд пьезо дуугаралтаас юу ч гаргахыг зогсооно. Бүх нийтийн унтраах товчлуурыг дахин дарахад энэ дугаарыг 0 болгож, дуу чимээний мөчлөгийг дахин эхлүүлнэ.
Алхам 6: VHDL хязгаарлалтын файлын задаргаа
Хязгаарлалтын файл нь Vivado -д Basys 3 самбар дээр ямар төхөөрөмжүүдийг ашиглаж байгааг хэлдэг. Энэ нь Vivado -д манай кодонд байгаа төхөөрөмжүүдэд өгсөн нэрийг өгдөг. Vivado -д энэ мэдээлэл хэрэгтэй байгаа тул бидний логик элементүүдийг физик тоног төхөөрөмжтэй хэрхэн холбохыг мэддэг. Хязгаарлалтын файлд их хэмжээний тайлбарласан (ашиглагдаагүй) кодыг оруулсан болно. Эдгээр кодын мөрүүд нь бидний ашигладаггүй самбар дээрх төхөөрөмжүүдийг хэлдэг.
Бидний ашиглаж буй төхөөрөмжүүд нь самбар дээр V17, V16, W16, W1 гэсэн шошготой дөрвөн оролтын унтраалга байдаг. Бид U18 гэсэн бүх нийтийн унтраах товчлуурыг ашиглаж байна. Манай холбогдсон дөрвөн LED -ийн гаралтын тээглүүр нь JB4, JB10, JC4, JC10 юм. Манай пьеззо дуугаралтын хувьд бид JA9 гаралтын зүү ашиглаж байна.
Дээд модулийн задаргаа дээр дурдсанчлан хэрэв та самбар дээр нэмэлт LED эсвэл бусад төхөөрөмж нэмж оруулахыг хүсвэл sw болон dev дохионы хамрах хүрээг нэмэгдүүлэх, killSwitch модулиудыг нэмж, тэдгээрийг хооронд нь холбох хэрэгтэй. Дараа нь та эдгээр хувьсагчийн нэрийг төхөөрөмжийн тоног төхөөрөмжид хязгаарлалтын файлаар холбох хэрэгтэй. Үүнийг ашиглахыг хүссэн тээглүүдтэйгээ холбоотой кодын мөрүүдийг тайлбарлахгүй (дахин идэвхжүүлэх), дараа нь холбогдох модульд холбогдох хувьсагчийн нэрийг нэмж оруулах замаар хийж болно. Үүний зохих синтаксийг бидний ашиглаж буй төхөөрөмжүүдээс хуулж болно. Самбар дээр ашиглахыг хүссэн тээглүүрийн нэрийг мэдэхийн тулд энд байгаа Baasys 3 лавлах гарын авлагаас үзнэ үү.
Алхам 7: Базис байгуулах 3
![Базис байгуулах 3 Базис байгуулах 3](https://i.howwhatproduce.com/images/002/image-4488-58-j.webp)
![Базис байгуулах 3 Базис байгуулах 3](https://i.howwhatproduce.com/images/002/image-4488-59-j.webp)
Та LED -ээ Basys -ийн зөв оролт/гаралтын портууд руу залгах хэрэгтэй болно 3. Зөв портууд юу болохыг тодорхойлохын тулд өгсөн зургуудыг дагана уу. Хэрэв та пьезо дуугаруулагч хавсаргахаар шийдсэн бол үүнийг зөв оролт/гаралтын порт руу холбох хэрэгтэй болно.
Самбар бэлэн болмогц USB кабелиар компьютертээ залгаарай.
Алхам 8: VHDL файлуудыг Basys дээр хэрэгжүүлэх 3
![Basys дээр VHDL файлуудыг хэрэгжүүлэх 3 Basys дээр VHDL файлуудыг хэрэгжүүлэх 3](https://i.howwhatproduce.com/images/002/image-4488-60-j.webp)
![Basys дээр VHDL файлуудыг хэрэгжүүлэх 3 Basys дээр VHDL файлуудыг хэрэгжүүлэх 3](https://i.howwhatproduce.com/images/002/image-4488-61-j.webp)
Таны самбар бэлэн болсон бөгөөд код дууссан тул та загвараа нэгтгэж болно.
Vivado -д төслөө тохируулсны дараа та самбар дээр байршуулахаас өмнө кодыг эмхэтгэхийн тулд "Bitstream үүсгэх" товчийг дарах ёстой. Хэрэв та энэ үед алдааны мессеж хүлээн авбал, таны код манай кодтой яг таарч байгаа эсэхийг дахин шалгах хэрэгтэй. Яг хэлэхдээ би цэг таслал эсвэл ашиглаж байгаа хаалтны төрлийг хүртэл хэлж байгаа юм. Таны bitstream амжилттай бичигдсэний дараа Vivado доторх техник хангамжийн менежер рүү очоод "Зорилтот програмыг нээх" товчийг дараад дараа нь "Program Device" дээр дарна уу. Таны Basys 3 самбар одоо бүрэн ажиллагаатай байх ёстой.
Алхам 9: Basys 3 самбарыг ашиглах
![Basys 3 самбарыг ашиглах Basys 3 самбарыг ашиглах](https://i.howwhatproduce.com/images/002/image-4488-62-j.webp)
Basys 3 самбар ажиллаж байгаа бөгөөд манай загварыг төлөөлөх програмчлагдсан тул та үүнийг хэрхэн ашиглахаа мэдэх ёстой.
Хамгийн баруун тийш дөрвөн унтраалга тус бүр нь LED -ийн аль нэгийг удирддаг бөгөөд тэдгээрийг дарах нь LED -ийг асаах эсвэл унтраахад хүргэдэг. Хэрэв LED идэвхжихгүй бол оролтын гаралтын зөв портод холбогдсон эсэхээ шалгаарай.
Хэрэв та бүх LED -ийг нэгэн зэрэг идэвхгүй болгохыг хүсвэл дээр харуулсан таван товчлуурын дунд товчлуурыг дарах ёстой.
Алхам 10: Үзүүлээрэй
Энэхүү загвар нь найз нөхөд, гэр бүлийнхээ өмнө үзүүлэх боломжтой цэвэрхэн шинэлэг зүйл болж өгдөг. Хэрэв та LED -ийг гэрэлд хүргэдэг утсаар сольсон бол үүнийг бүх нийтийн унтраагуурыг гэрийнхээ цахилгаан системд оруулахын тулд онолын хувьд ашиглаж болно. Боломжтой хэдий ч бид үүний эсрэг зөвлөгөө өгөх хэрэгтэй хэвээр байх болно. Цахилгаанчингүйгээр дахин утсаа холбохыг оролдвол өөртөө болон гэрт ноцтой хохирол учруулах магадлал бий.
Зөвлөмж болгож буй:
RGB унтраалгатай бүх нийтийн USB гар: 6 алхам
![RGB унтраалгатай бүх нийтийн USB гар: 6 алхам RGB унтраалгатай бүх нийтийн USB гар: 6 алхам](https://i.howwhatproduce.com/images/001/image-2523-17-j.webp)
RGB унтраалгатай бүх нийтийн USB гар: Энэхүү зааварчилгаанд би ердийн компьютерийн гар шиг ажилладаг өөрийн USB гарыг хэрхэн бүтээхийг танд үзүүлэх болно. Та ганц товчлуур дарж байхдаа дарж болох товчлуурын хослол эсвэл товчлуурын дарааллыг оноож болно. Та үүнийг ашиглаж болно
ESP8266 ашиглан бүх нийтийн алсын удирдлага (Wifi хяналттай): 6 алхам (зурагтай)
![ESP8266 ашиглан бүх нийтийн алсын удирдлага (Wifi хяналттай): 6 алхам (зурагтай) ESP8266 ашиглан бүх нийтийн алсын удирдлага (Wifi хяналттай): 6 алхам (зурагтай)](https://i.howwhatproduce.com/images/005/image-12536-j.webp)
ESP8266 ашиглан бүх нийтийн алсын удирдлага (Wifi хяналттай): Энэхүү төсөл нь AC, ТВ, DVD тоглуулагч, хөгжмийн систем, SMART цахилгаан хэрэгсэл гэх мэт бүх гэр ахуйн хэрэгслийн ердийн алсын удирдлагыг солих болно. Алс холоос хог хаях нь биднийг таавар болгодог !!! Энэхүү төсөл нь биднийг
Соронзон терминал бүхий DIY бүх нийтийн зай цэнэглэгч: 5 алхам
![Соронзон терминал бүхий DIY бүх нийтийн зай цэнэглэгч: 5 алхам Соронзон терминал бүхий DIY бүх нийтийн зай цэнэглэгч: 5 алхам](https://i.howwhatproduce.com/images/005/image-14735-j.webp)
Соронзон терминал бүхий DIY бүх нийтийн батерей цэнэглэгч: Сайн байцгаана уу, энэ бол миний хоёр дахь зааварчилгаа тул таны санал хүсэлт цаашид сайжруулахад надад үнэхээр тустай байх болно. Мөн бусад төслүүдийг үзэхийн тулд миний YouTube сувгийг үзээрэй. Өнөөдөр би Magneti ашиглан бүх нийтийн батерей цэнэглэгч хэрхэн хийхийг танд үзүүлэх гэж байна
Tube Amp Build -д зориулсан бүх нийтийн ПХБ -ийн цуврал: 5 алхам
![Tube Amp Build -д зориулсан бүх нийтийн ПХБ -ийн цуврал: 5 алхам Tube Amp Build -д зориулсан бүх нийтийн ПХБ -ийн цуврал: 5 алхам](https://i.howwhatproduce.com/images/005/image-14815-j.webp)
Tube Amp Build -д зориулсан бүх нийтийн ПХБ -ийн цуврал: Хоолойн хэлхээ нь электроникийн хөгжилд чухал алхам болсон. Ихэнх хэсэгт тэдгээр нь хямд, жижиг, илүү үр ашигтай хатуу төлөвт суурилсан технологитой харьцуулахад бүрэн хуучирсан байв. Аудиог эс тооцвол - хуулбарлах болон
Бүх зүйлд зориулсан бүх нийтийн цахилгаан хангамж: 7 алхам
![Бүх зүйлд зориулсан бүх нийтийн цахилгаан хангамж: 7 алхам Бүх зүйлд зориулсан бүх нийтийн цахилгаан хангамж: 7 алхам](https://i.howwhatproduce.com/images/006/image-15848-16-j.webp)
Бүх зүйлд зориулагдсан бүх нийтийн цахилгаан хангамж: Сайн байцгаана уу найзуудаа, электроникийн хоббитой тул бид бүгд ажлын вандан дээр цахилгаан хангамж хэрэгтэй болно, мөн түүнчлэн янз бүрийн электроникийг тэжээх төмөр замын цахилгаан хангамж хэрэгтэй болно. нийтлэг төрлийн цахилгаан хангамж