Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Цагийн баазын модулийг бүтээх
- Алхам 2: Секундын тоолуур барих
- Алхам 3: Бүгдийг нэгтгэх
Видео: Болор осциллятор ба флопоп ашиглан дижитал цаг: 3 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Цаг нь бараг бүх төрлийн цахилгаан хэрэгсэлд байдаг бөгөөд энэ нь ямар ч компьютерийн зүрхний цохилт юм. Эдгээр нь бүх дараалсан хэлхээг синхрончлоход хэрэглэгддэг. Тэд мөн цаг, огноог хянахын тулд тоолуур болгон ашигладаг. Энэхүү зааварчилгаанд та компьютер хэрхэн тоолох, үндсэндээ дижитал цаг хэрхэн ажиллах, флоп -флопс болон хосолсон логикийг сурах болно. Төсөл нь тус бүр тодорхой функцийг гүйцэтгэдэг олон модульд хуваагддаг.
Хангамж
Энэхүү зааварчилгааны хувьд танд дараах мэдлэг хэрэгтэй болно
- Дижитал логик ойлголт
- Multisim симулятор (заавал биш)
- Цахилгаан хэлхээний тухай ойлголт
Алхам 1: Цагийн баазын модулийг бүтээх
Дижитал цагны үзэл баримтлал бол бид үндсэндээ цагийн мөчлөгийг тоолж байгаа явдал юм. 1 Гц цаг нь секунд тутамд импульс үүсгэдэг. Дараагийн алхамуудад бид эдгээр мөчлөгийг хэрхэн тоолж, цагийнхаа секунд, минут, цагийг хэрхэн яаж гаргахыг харах болно. 1 Гц давтамжтай дохиог бий болгох нэг арга бол 32.768 кГц дохио үүсгэдэг болор осциллятор хэлхээг ашиглах явдал юм. 32.768 кГц ашигладаг шалтгаан нь бидний сонсголын хамгийн дээд давтамж 20 кГц -ээс өндөр бөгөөд 2^15 -тай тэнцүү байдагтай холбоотой юм. Хамгийн чухал шалтгаан нь J-K флип гаралт нь оролтын дохионы эерэг эсвэл сөрөг ирмэг дээр (FF-ээс хамаарна) шилждэг тул гаралт нь анхны оролтын тал хувьтай тэнцэх давтамжтай байдаг. Хэрэв бид 15 Flip Flops гинжлэвэл 1 Гц дохиог авахын тулд оролтын дохионы давтамжийг хувааж болно. Би дөнгөж 1 Гц импульсийн генератор ашиглан Multisim дахь симуляцийн хугацааг түргэсгэсэн. Гэсэн хэдий ч талхны самбар дээр миний дээр байгаа хэлхээг бүтээх эсвэл DS1307 модулийг ашиглахад чөлөөтэй байгаарай.
Алхам 2: Секундын тоолуур барих
Энэ модулийг хоёр хэсэгт хуваасан. Эхний хэсэг нь 4 хүртэлх битийн тоолуур бөгөөд 9 хүртэл тоолох бөгөөд энэ нь секундын 1-р байрыг эзэлдэг. Хоёрдахь хэсэг нь 3 хүртэлх битийн тоолуур бөгөөд 6 хүртэл тоолох бөгөөд энэ нь секундын 10-р байрыг эзэлдэг.
Хоёр төрлийн тоолуур байдаг, синхрон тоолуур (цаг нь бүх FF -тэй холбогддог) ба асинхрон тоолуур нь эхний FF -д өгч, гаралт нь дараагийн FF -ийн цаг болж ажилладаг. Би асинхрон тоолуур ашигладаг (үүнийг долгионы тоолуур гэж нэрлэдэг). Хэрэв бид FF -ийн 'J' ба 'K' оролтод өндөр дохио илгээвэл FF нь оролтын цаг бүрийн мөчлөг бүрт өөрийн төлөвийг өөрчлөх болно гэсэн санаа юм. Энэ нь чухал юм, учир нь эхний FF -ийн 2 сэлгэн залгуур бүрт дараалсан FF -д сэлгэн залгалт хийгддэг. Тиймээс бид оролтын цагийн дохионы мөчлөгийн тоотой тэнцэх хоёртын тоог гаргадаг.
Дээр үзүүлсэн шиг зүүн талд миний 1-р байрны 4 битийн тоолуурыг хийдэг миний хэлхээ байна. Үүний доор би Reset хэлхээг хэрэгжүүлсэн бөгөөд энэ нь тоолуурын гаралт 1010 эсвэл аравтын бутархайгаар 10 байвал Flip Flops -ийн дахин тохируулах зүү рүү өндөр дохио илгээдэг AND хаалга юм. Тиймээс, AND хаалганы гаралт нь 10 секундэд 1 импульсийн дохио бөгөөд бид үүнийг 10 -ийн байрны тоолуурын оролтын цаг болгон ашиглах болно.
Алхам 3: Бүгдийг нэгтгэх
Үүнтэй ижил логикийн дагуу бид минут, цагийг тооцоолохын тулд тоолуурыг үргэлжлүүлэн хийж болно. Бид цаашаа явж, өдөр, долоо хоног, жилийг тоолж чадна. Та үүнийг талхны самбар дээр үүсгэж болно, гэхдээ тохиромжтой байхын тулд RTC (бодит цагийн цаг) модулийг ашиглах нь дээр. Гэхдээ хэрэв та урам зоригийг мэдэрч байвал танд дараахь зүйлс хэрэгтэй болно.
19 J-K Flip Flops (эсвэл SN74LS73AN гэх мэт 10 хос J-K IC)
- 1 Гц оролтын эх үүсвэр (та DS1307 модулийг ашиглаж болно, энэ нь 1 Гц квадрат долгион үүсгэдэг)
- 6 хоёртын 7 сегментийн декодер (74LS47D гэх мэт)
- 23 инвертер, 7 3 оролт ба хаалга, 10 2 оролт ба хаалга, 3 4 оролт ба хаалга, 5 OR хаалга
- 6 сегментийн зургаан өнцөгт дэлгэц
Энэхүү зааварчилгаанаас дижитал цаг хэрхэн ажилладаг талаар олж мэдсэн гэж найдаж байна.
Зөвлөмж болгож буй:
8MHz болор ашиглан Arduino IDE ашиглан ATmega328 програмчлах: 4 алхам
8MHz болор ашиглан Arduino IDE ашиглан ATmega328 програмчлах: Энэхүү гарын авлагад би өөрийгөө Arduino IDE болон Arduino UNO ашиглан ATmega328P IC (Arudino UNO дээр байрлуулсан ижил микроконтроллер) програмчлах алхам алхмаар зааварчилгааг авч үзэх болно. захиалгат Arduino, төслүүдээ хийх
Arduino ашиглан аналог цаг ба дижитал цагийг LED зурвасаар хэрхэн яаж хийх вэ: 3 алхам
Arduino ашиглан LED зурвас ашиглан аналог цаг, дижитал цаг хэрхэн хийх вэ: Өнөөдөр бид аналог цаг хийх болно. Led Strip бүхий дижитал цаг, Arduino -тэй MAX7219 Dot модуль нь тухайн орон нутгийн цагийн бүсийг тохируулах болно. Аналог цаг нь илүү урт LED зурвас ашиглах боломжтой тул хананд өлгөж урлагийн уран бүтээлч болно
ESP8266 ашиглан сүлжээний цаг дижитал цаг: 4 алхам (зурагтай)
ESP8266 ашиглан сүлжээний цагийн дижитал цаг: Бид NTP серверүүдтэй холбогддог, сүлжээ эсвэл интернетийн цагийг харуулдаг хөөрхөн бяцхан дижитал цаг бүтээх талаар суралцдаг. WeMos D1 mini -ийг ашиглан WiFi сүлжээнд холбогдож, NTP цагийг олж, OLED модуль дээр харуулна
Arduino IDE ашиглан M5stick C ашиглан цаг хийх - M5stack M5stick-C-тэй RTC бодит цагийн цаг: 4 алхам
Arduino IDE ашиглан M5stick C ашиглан цаг хийх | M5stack M5stick-C-тэй RTC бодит цагийн цаг: Сайн байна уу залуусаа, энэ зааварчилгаанд бид Arduino IDE ашиглан m5stack-ийн m5stick-C хөгжүүлэлтийн самбар ашиглан хэрхэн цаг хийхийг сурах болно. Тиймээс m5stick нь огноо, цаг, цагийг харуулах болно. дэлгэц дээр сарын долоо хоног
RPi цаг уурын станц ба дижитал цаг: 4 алхам (зурагтай)
RPi цаг уурын станц ба дижитал цаг: Энэ бол хурдан бөгөөд хялбар төсөл бөгөөд үзүүлэх сайхан дэлгэц юм. Энэ нь цаг хугацаа, цаг агаарын нөхцөл байдал, температурыг хоёуланг нь харуулдаг. Хэрэв танд харсан зүйл тань таалагдаж байвал миний хийсэн зүйлийг дагаж мөрдөхийн тулд намайг Instagram, Twitter (@Anders644PI) дээр дагаарай