Агуулгын хүснэгт:

Pic18f4520 ашиглан Proteus -д 7 сегмент бүхий 6 секунд: 6 алхам
Pic18f4520 ашиглан Proteus -д 7 сегмент бүхий 6 секунд: 6 алхам

Видео: Pic18f4520 ашиглан Proteus -д 7 сегмент бүхий 6 секунд: 6 алхам

Видео: Pic18f4520 ашиглан Proteus -д 7 сегмент бүхий 6 секунд: 6 алхам
Видео: PIC16F877A 7-Segment Interface in MikroC for PIC & Proteus Simulation. 2024, Арваннэгдүгээр
Anonim
7 сегмент бүхий Proteus дахь Pic18f4520 ашиглан секундомер
7 сегмент бүхий Proteus дахь Pic18f4520 ашиглан секундомер

Би дөнгөж зураг хянагчтай ажиллаж эхэлсэн, нэг найз маань үүнээс секундомер барихыг хүссэн. Тиймээс надад хуваалцах тоног төхөөрөмжийн дүрс байхгүй, би Proteus програм дээр код бичиж, загварчилсан.

Энд би ижил схемийг хуваалцсан.

гурван хувьсах миллисекунд, секунд, минутыг тодорхойлно

Энд бид 10 ms таймер тасалдлыг ашигласан бөгөөд 1000 миллисекунд тутамд секундын хувьсагч нэмэгдэж, 60 секунд тутамд хувьсагч нэмэгдэх болно.

Алхам 1: Шаардлагатай зүйл

1 pic18f4520 хянагч

2 долоон сегментийн дэлгэц

3 bc547 транзистор

Эхлэх/зогсоох/дахин тохируулах 4 унтраалга

5 резистор 330E, 10K, 1K

Зургийг авахын тулд mikroC татаж авах 6

7 протеусыг татаж авах

Алхам 2: Кодын логик ба дэлгэц

Кодын логик ба дэлгэц
Кодын логик ба дэлгэц
Кодын логик ба дэлгэц
Кодын логик ба дэлгэц

Долоон сегментийн дэлгэц (SSD) нь хамгийн түгээмэл, хямд, ашиглахад хялбар дэлгэцүүдийн нэг юм. Дээрх шиг харагдаж байна.

Энд бид 7 сегментийн дэлгэцийн нийтлэг катодын төрлийг ашиглах ёстой - SSD -ийн нийтлэг катодын хувьд бүх LED -ийн терминал нь ихэвчлэн 'COM' зүүтэй холбогддог. Тухайн LED сегментэд ‘1’ өгч, газардуулгыг нийтлэг хэсэгт холбосноор сегментийг гэрэлтүүлж болно. Дотоод хэсгийг 2 -р зурагт үзүүлэв.

Алхам 3: Микроконтроллер ашиглан дэлгэц жолоодох

Жолоодлогын дэлгэц нь микроконтроллертой
Жолоодлогын дэлгэц нь микроконтроллертой

Миний хэлхээнд би NPN BC547 транзисторыг ашигласан.

BJT-ийг унтраалга болгон ашиглахын тулд үндсэн терминал дээр оролтын дохио байх үед ялгаруулагч-коллекторын уулзварууд богино болдог, эс тэгвээс энэ нь тасарсан хэвээр байна. Оролтыг тохирох резистороор дамжуулан өгөх ёстой.

Алхам 4: Яагаад мултиплекс хийх ёстой вэ?

Ихэнхдээ бид хоёр, гурав ба түүнээс дээш SSD ашиглах шаардлагатай байдаг бөгөөд үүнийг зөвхөн нэг MCU ашиглах шаардлагатай байдаг, гэхдээ бидэнд тулгардаг нэг асуудал бол MCU -д I/O зүү байхгүй байх явдал юм. 24 зүү авах болно. 18 -р зураг дээр бид зөвхөн 48 I/O зүүтэй байна. Тэгвэл ямар гарц байна вэ?

Нэг боломж бол бид илүү их оролт/гаралтын зүү бүхий том MCU ашигладаг. Гэхдээ дараа нь бид зөвхөн дээд тал нь ашиглах боломжтой 3 SSD дискээр хязгаарлагддаг хэвээр байна. Энэ асуудлыг шийдэх илүү сайн, санал болгож буй өөр нэг шийдэл бол Долоо сегментийн дэлгэцийг мултиплекс хийх явдал юм.

Википедиа хэлэхдээ 'Харилцаа холбоо, компьютерийн сүлжээнд мультиплексинг (мөн үүнийг muxing гэж нэрлэдэг) нь олон аналог мессежийн дохио эсвэл дижитал мэдээллийн урсгалыг хуваалцсан мэдээллийн хэрэгслээр нэг дохио болгон нэгтгэх арга юм. Зорилго нь үнэтэй нөөцийг хуваалцах явдал юм. Долоон сегменттэй дэлгэцийг мультиплекс хийх гэж бид юу хэлэх гээд байна вэ гэхээр бид бүх SSD дээр дэлгэц үзүүлэхийн тулд зөвхөн 7 гаралтын портыг ашиглах болно.

Алхам 5: Үүнд хэрхэн хүрэх вэ?

Энд бид "Алсын харааны тогтвортой байдал" -ыг ашиглах болно. Одоо та энэ нэр томъёог өмнө нь эзэмшсэн байх ёстой. Тийм ээ, энэ бол кино урлагт ашигладаг техник юм (бидний тархи дараалсан хоёр зургийн хоорондох хоцролтыг ялгаж чаддаггүй зургуудыг маш хурдан харуулдаг). Үүний нэгэн адил, хэрэв бид нэгээс илүү SSD -ийг судлах юм бол бид нэг удаад зөвхөн нэг SSD -ийг харуулдаг бөгөөд бидний хооронд маш хурдан шилждэг тул бидний тархи тэдгээрийг хооронд нь ялгаж чаддаггүй.

Дэлгэц бүр нэг удаад ердөө 5 миллисекундын турш идэвхждэг гэж хэлье. Энэ нь секундэд 1/0.0045 удаа гэрэлтдэг бөгөөд энэ нь ойролцоогоор 222 удаа/секунд юм. Бидний нүд ийм хурдан өөрчлөлтийг мэдэрч чаддаггүй тул бүх дэлгэц нэгэн зэрэг ажиллаж байгааг бид харж байна. Тоног төхөөрөмж дээр яг юу болж байна вэ гэвэл MCU нь тээгчид '1' өгдөг (санаж байна уу, BJT -ийн сууринд '1' -ийг цуглуулагч ба ялгаруулагч уулзварыг богиносгодог уу?), Энэ нь транзисторын суурьтай холбогдсон байна. холбогдох дэлгэцийг 5 миллисекундын турш "ON" портыг байлгаад дахин унтраадаг. Энэ процедурыг эцэс төгсгөлгүй гогцоонд оруулсан бөгөөд ингэснээр бид дэлгэцийг тасралтгүй харах болно.

Алхам 6: Multiplexing алгоритм

Multiplexing алгоритм
Multiplexing алгоритм

Хоёр портыг кодоор тодорхойлж, нэг нь сегментийн өгөгдлийн порт ба сегментийн хяналтын портыг тодорхойлно.

Энд байгаа заль мэх бол та бүх 7 сегментийн өгөгдлийг харуулах явдал юм. мөн энэ өгөгдлийг харуулах ёстой нэг хяналтын зүүг идэвхжүүлнэ үү. өгөгдлийг өөрчлөх, хяналтын зүүг солих.

Энэ зааварчилгаанд бид 6 оронтой мултиплекс ашигласан болно, хавсаргасан c файлыг үзэхэд л та үүнийг цэвэрлэх болно.

Зөвлөмж болгож буй: