Mündəricat:
- Addım 1: İstifadə etdiyim hissələr
- Addım 2: Dövrə
- Addım 3: PCB
- Addım 4: Kodu yükləyin
- Addım 5: Montaj
- Addım 6: Səhvlər və Gələcək İş
Video: Əl BASIC Kompüteri: 6 Addım (Şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:42
Bu Təlimat, BASIC işləyən kiçik bir əl kompüter qurma prosesimi təsvir edir. Kompüter, ATmega 1284P AVR çipi ətrafında qurulmuşdur ki, bu da kompüterin axmaq adına ilham verdi (HAL 1284).
Bu bina, burada tapılan heyrətamiz layihədən və SuperCON BASIC Rozetindən ilhamlanaraq hazırlanmışdır.
Kompüter TinyBasic -in dəyişdirilmiş bir versiyasını idarə edir, baxmayaraq ki, proqramın çox hissəsi dan14 tərəfindən layihəyə əsaslanır. Əlbəttə ki, bir neçə səhv etdiyim üçün bu Təlimatlara əməl edə bilərsiniz və ya daha da yaxşılaşa bilərsiniz.
Bu layihə üçün bir dərslik də yaratdım. Seçilmiş monitor üçün bəzi səhvlərdən və xüsusiyyətlərdən bəhs edir, amma ən əsası BASIC əməliyyatlarının siyahısına malikdir.
Bu nəşr olunduqdan sonra layihəni nümayiş etdirən bir video çəkdim.
Addım 1: İstifadə etdiyim hissələr
Əsas IC üçün:
- ATmega 1284P
- 16 MHz Kristal
- 2 x 22pf Seramik Kondansatör
- 10KΩ Rezistor (sıfırlama üçün çəkin)
- 4 pinli düymə (sıfırlama üçün)
- 470Ω Reistor (Kompozit video üçün)
- 1kΩ Rezistor (Kompozit video sinxronizasiya üçün)
- 3 pinli tullanan (video siqnalı üçün)
- Passiv Buzzer
Keyboord nəzarət üçün:
- ATmega 328P (Arduino Uno -da istifadə edilənlər kimi)
- 16 MHz Kristal
- 2 x 22pf Seramik Kondansatör
- 12x 10KΩ Rezistor (Sıfırlama və çəkmə düymələri üçün)
- 51x 4 pinli düymə (həqiqi klaviatura üçün)
Güc üçün:
- L7805 gərginlik tənzimləyicisi
- 3 mm LED
- 220Ω Rezistor (LED üçün)
- 2x 0.1µF elektrolitik kondansatör
- 0,22 µF Elektrolitik Kondansatör
- 2x 2 pinli tullanan (Güc girişi və əsas keçid üçün)
GPIO (Bəlkə bir neçə əsas əlavə edin):
- 7 pinli tullanan
- 2x 8 pinli tullanan
- 2 pinli tullanan (5V və GND üçün)
- 3-4 pinli tullanan (Serial ünsiyyət üçün)
PCB olmayan:
- Kompozit Video ilə 4 "LCD Ekran (Mənimki 7-30V arasında bir giriş gərginliyinə sahib idi)
- Ekran üçün 3D çap tutacağı
- Bir növ keçid
Addım 2: Dövrə
Dövrə çox gözəl deyil və əsas IC bölgəsinin çox hissəsi dan14-dən ilhamlanır. Deyilənə görə, bir Breadboard dövrəsində olduqca düz irəli bir Arduino. Klaviatura sadə bir şəbəkədir və ATmega328 tərəfindən idarə olunur. İki AVR çipi UART Serial pinləri vasitəsilə əlaqə qurur.
Həm bir şəkil, həm də Kartal sənədlərim əlavə edilmişdir və inşallah dövrəni yenidən yaratmaq üçün kifayət edəcək. Əks təqdirdə, mənə məlumat verməkdən çekinmeyin və Təlimatı yeniləyəcəyəm.
Addım 3: PCB
PCB 2 qatlıdır və Auto Route istifadə edərək yaradılmışdır (Oh, nə ** dəlikdir!). Qabaqda düymələr və güc göstərici LEDi, qalan hissəsi isə arxa tərəfdədir. PCB -ni JCL PCB ilə hazırladım və bununla inanılmaz bir iş gördülər. PCB-ni yenidən yaratmaq üçün lazım olan fayllar əvvəllər Eagle fayllarında olmalıdır.
PCB -ni yenidən dizayn etməyinizi təklif edərdim, çünki fərqli etmək istədiyim bəzi işlər var. Dizaynımı bəyənirsinizsə, satmağa daha çox hazır olduğum hələ istifadə edilməyən dörd lövhəm var.
Lövhədə LCD ekranı quraşdırmaq üçün istifadə etdiyim dörd qazma deliyi var.
Addım 4: Kodu yükləyin
Əlbəttə ki, həm 1284, həm də 328 koda ehtiyacım var və istifadə etdiyim kodu burada tapa bilərsiniz: https://github.com/PlainOldAnders/HAL1284 altında ArduinoSrc/src. Kodu dəyişdirmək və yükləmək üçün sadəcə Arduino IDE -dən istifadə etdim, amma bunu etməzdən əvvəl IC -lərdə yükləyiciləri yazmalısınız:
ATMega328:
Bir yükləyicini necə yandırmaq və bu IC -yə kod yükləmək üçün orada çoxlu dəstək olduğu mənasında bu çox asandır. Mən ümumiyyətlə bu təlimatı izləyirəm, çünki xüsusiyyəti unutmağa davam edirəm.
328 kodu (ArduinoSrc/klaviatura altında) olduqca sadədir. Tamamilə Adafruit_Keypad-master- kitabxanasına güvənir. Lib ilə bağlı hər hansı bir dəyişiklik olarsa, github səhifəmdə istifadə etdiyim versiyanı ArduinoSrc/lib altında yerləşdirmişəm.
ATmega1284:
IC -ni ilk dəfə alanda bu mənim üçün bir az çətin idi. Buradan yükləyicini götürərək işə başladım və quraşdırma təlimatına əməl etdim. Yükləyicini yandırmaq üçün sadəcə 328 ilə eyni şeyi etdim və buradan kömək aldım. Hər iki IC üçün həm yükləyicini yandırmaq, həm də kodu yükləmək üçün Arduino Uno istifadə etdim (yükləyərkən IC Arduino Unodan silindi).
Kod (ArduinoSrc/HAL1284Basic altında) mənim üçün çox mürəkkəbdir, amma kodun bəzi hissələrini dəyişdirə bildim:
Bir neçə əmr əlavə etdim (manual.pdf -də [A] ilə işarələnənlər) və digər əmrləri də dəyişdirdim:
Səs: Ton əmri əvvəllər Arduinonun ton funksiyasından istifadə edirdi, ancaq TVout kitabxanasından istifadə edərkən bu səs siqnalının düzgün işləməməsinə səbəb olurdu. TVout-un ton funksiyasından istifadə etmək üçün dəyişdirdim, amma bu o deməkdir ki, ton pimi 15-dir (atmega1284 üçün)
Serial Əlaqə: Klaviatura DIY olduğu üçün simvolları oxumaq üçün serial ünsiyyətdən istifadə edir. Burada atmega1284 istifadə edildiyindən iki seriyalı əlaqə xətti mövcuddur və "sercom" aktiv olduqda kod eyni zamanda seriyalı port vasitəsilə (kompüterdən və ya hər hansı bir şeydən) yazmağa imkan verir.
Çözünürlük: Bu layihə üçün istifadə olunan monitor olduqca laldır və kiçik bir qətnamə lazımdır, əks halda şəkil titrəyir. Daha yaxşı bir monitor istifadə edilərsə, quraşdırma funksiyasında qətnaməni dəyişdirməyi təklif edərdim.
Addım 5: Montaj
Yüklənmiş kod və PCB və hissələr hazır olduqda, artıq montaj vaxtıdır. İstifadə etdiyim bütün hissələr çuxurdan keçdi, buna görə də lehimləmə o qədər də çətin deyildi (oradakı badass-SMD-lehimləmə yoldaşlarından fərqli olaraq). Monitor, PCB -də dörd çaplı deliklərə 3D çaplı tutacaqla bərkidilmişdir. Başqa bir monitor istifadə edilərsə, ümid edirik ki, bu montaj üçün dörd qazma deliyindən istifadə oluna bilər.
Burada istifadə olunan monitor tutucusu, keçid açarını (PCB üzərindəki "keçid" tullananına qoşulmuş) və monitor üçün üç idarəetmə düyməsini yerləşdirmək üçün də hazırlanmışdır. Tutucu plastik M3 boltlar və aralıqlarla bərkidilir.
Elektrik fişi üçün bir JST PCB konnektoru istifadə etdim, baxmayaraq ki, hamar bir yuva biraz daha hamar olardı. Lövhəni gücləndirmək üçün 12V enerji təchizatı və ya üç 18650 batareya seriyası arasında keçid etdim. Özümdən daha hamar bir kovboy, ehtimal ki, taxta üçün hamar bir batareya tutacağı dizayn edə bilər.
Addım 6: Səhvlər və Gələcək İş
Ok Tuşları: Ok düymələri təsadüfən qoyulub və çox funksiya yerinə yetirmir. Bu naviqasiyanı çətinləşdirir
Fayl G/Ç: Fayl G/Ç imkanları mövcuddur, lakin bunlar tətbiq olunmur. Bununla mübarizə aparmaq üçün HAL1284Com proqramı faylları lövhəyə yükləyə bilir. EEPROM -a yükləmək də mümkündür.
PEEK/POKE: PEEK və POKE sınanmamışdır və ünvanların nə olduğunu bilmirəm.
Break: Break (Esc) bəzən sonsuz döngələrdə olduqda bütün kodu qarışdırır.
Pin 7: DWRITE High və ya AWRITE 255 yazarkən PWM pin 7 çətin ola bilər. AWRITE 254 ilə yaxşı işləyir.
İdiot: UART1 vasitəsilə yükləmək də ideal olardı, ancaq yükləmə yalnız UART0 vasitəsi ilə mümkündür, buna görə yükləmə əsas IC -ni çıxarmaqla aparılmalıdır. Ekran və Gərginlik Tənzimləyicisi 5 uzun müddət işləyərkən bir az çox qızdırılır.
Tövsiyə:
Köhnə/zədələnmiş bir kompüteri və ya dizüstü kompüteri bir media qutusuna necə çevirmək olar: 9 addım
Köhnə/Zədələnmiş Bir Kompüteri və ya Laptopu Bir Media Qutusuna necə çevirmək olar: Texnologiyanın bizdən daha sürətlə inkişaf etdiyi bir dünyada sevdiyimiz elektronikalar çox tez köhnəlir. Bəlkə də heç sevdiyiniz pişiklər masaüstünüzdəki dizüstü kompüterinizi döydü və ekran qırıldı. Yoxsa ağıllı bir TV üçün bir media qutusu istəyərsiniz
Qabaqcıl Model Roket Uçuş Kompüteri!: 4 Addım (Şəkillərlə birlikdə)
Qabaqcıl Model Roket Uçuş Kompüteri!: Özünü qanadsız idarə edən ən yeni raketim üçün yüksək səviyyəli model raket uçuş kompüterinə ehtiyacım var idi! Buna görə özüm qurdum! Bunu qurmağa qərar verməyimin səbəbi TVC (itmə vektoruna nəzarət) raketləri qurmağımdır. Bu o deməkdir ki
Bunu belə et! Star Trek TNG Mini Mühəndislik Kompüteri: 11 Addım (Şəkillərlə birlikdə)
Bunu belə et! Star Trek TNG Mini Mühəndislik Kompüteri: Ümumi Baxış, Star Trek: Növbəti Nəsil filminə baxaraq böyümüşəm. Həmişə Star Trek temalı bir cihaz qurmaq istəmişəm, buna görə də nəhayət köhnə layihələrimdən birini yenidən düzəltmək üçün Star Trek Ekran Terminalını hazırladım. Terminal aşağıdakı məlumatları təqdim edir
Açıq Apollo Bələdçi Kompüteri DSKY: 13 Addım (Şəkillərlə birlikdə)
Açıq Apollo Bələdçi Kompüteri DSKY: 1/10/18 tarixindən bəri Xüsusi Təlimatlandırıcı olmaqdan qürur duyuram. Zəhmət olmasa bizə səs verin və bizə like atın! Kickstarter kampaniyası super bir uğur idi! Açıq DSKY Kickstarter Açıq DSKY hazırda Backerkit -də (https://opendsky.backerkit.com/hosted_preorders) canlı yayımdadır
Cib Ölçülü Linux Kompüteri: Pi-Micro: 13 Addım (Şəkillərlə birlikdə)
Cib Ölçülü Linux Kompüteri: Pi-Micro: Heç əlinizə sığacaq bir kompüter etmək istəmisinizmi? Tam hüquqlu bir noutbuk idi, amma kiçik? Mən də buna görə də Pi-Micro adlandırdığım bu kiçik laptopu qurdum. Bu, Pi-Micro-nun, demək olar ki, bir ildir ki, üçüncü versiyasıdır