Բովանդակություն:
- Քայլ 1. Իմ օգտագործած մասերը
- Քայլ 2: Շղթան
- Քայլ 3: PCB
- Քայլ 4: Կոդի վերբեռնում
- Քայլ 5: Հավաքում
- Քայլ 6: Սխալներ և ապագա աշխատանք
Video: Handheld BASIC համակարգիչ ՝ 6 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Այս Instructable- ը նկարագրում է BASIC- ով աշխատող փոքր ձեռքի համակարգիչ կառուցելու իմ ընթացքը: Համակարգիչը կառուցված է ATmega 1284P AVR չիպի շուրջ, որը նույնպես ներշնչեց համակարգչի հիմար անունը (HAL 1284):
Այս կառուցվածքը HEAVILY ոգեշնչված է այստեղ հայտնաբերված զարմանահրաշ նախագծից և SuperCON BASIC կրծքանշանից:
Համակարգիչն աշխատում է TinyBasic- ի փոփոխված տարբերակով, չնայած ծրագրաշարի մեծ մասը հիմնված է dan14 նախագծի վրա: Դուք, իհարկե, կարող եք հետևել այս Ուսուցողական, կամ նույնիսկ ավելի լավ, կատարելագործել այն, քանի որ ես մի քանի սխալ եմ թույլ տվել:
Այս նախագծի համար ես ստեղծեցի նաև ձեռնարկ: Այն նշում է որոշ սխալներ և առանձնահատկություններ ընտրված մոնիտորի համար, բայց ամենակարևորը `այն ունի ՀԻՄՆԱԿԱՆ գործողությունների ցանկ:
Այս հրապարակումից հետո ես պատրաստեցի նախագիծը ցուցադրող տեսանյութ:
Քայլ 1. Իմ օգտագործած մասերը
Հիմնական IC- ի համար.
- ATmega 1284P
- 16 ՄՀց բյուրեղ
- 2x 22pf կերամիկական կոնդենսատոր
- 10KΩ դիմադրություն (վերակայման համար քաշեք դեպի վեր)
- 4-պին կոճակ (վերակայման համար)
- 470Ω Reistor (կոմպոզիտային տեսանյութերի համար)
- 1kΩ դիմադրություն (կոմպոզիտային տեսանյութերի համաժամացման համար)
- 3 պինային թռիչք (տեսազանգի համար)
- Պասիվ ազդանշան
Ստեղնաշարի կառավարման համար.
- ATmega 328P (ինչպես Arduino Uno- ում օգտագործվողները)
- 16 ՄՀց բյուրեղ
- 2x 22pf կերամիկական կոնդենսատոր
- 12x 10KΩ դիմադրություն (վերակայման համար քաշեք և կոճակները)
- 51x 4-փին կոճակ (իրական ստեղնաշարի համար)
Իշխանության համար.
- L7805 Լարման կարգավորիչ
- 3 մմ LED
- 220Ω դիմադրություն (LED- ի համար)
- 2x 0.1µF էլեկտրոլիտիկ կոնդենսատոր
- 0.22 µF էլեկտրոլիտիկ կոնդենսատոր (Դուք կարող եք փոխարինել այս 0.22 -ով և 0.1 -ով `0.33 -ով: Ինձ նաև ասել են, որ արժեքներն իրականում նշանակություն չունեն, բայց ես հիանալի չեմ կոնդենսատորներով)
- 2x 2-պտույտ jumper (էներգիայի մուտքի և հիմնական անջատիչի համար)
GPIO (Միգուցե մի քանի հիմք ավելացնեք).
- 7-պտուտակ ցատկող
- 2x 8-պտույտ Jumper
- 2-փամփուշտ Jumper (5V- ի և GND- ի համար)
- 3-4-պին Jumper (սերիական հաղորդակցության համար)
Ոչ PCB:
- 4 դյույմանոց LCD էկրան ՝ կոմպոզիտային տեսանյութով (իմը մուտքային լարում ուներ 7-30 Վ-ի սահմաններում)
- 3D տպագրության կրող `ցուցադրման համար
- Մի տեսակ անջատիչ
Քայլ 2: Շղթան
Շղթան այնքան էլ գեղեցիկ չէ, և հիմնական IC- տարածաշրջանի մեծ մասը ներշնչված է dan14- ով: Ասածս այն է, որ բավականին ուղիղ Arduino- ն Breadboard- շղթայի վրա է: Ստեղնաշարը պարզ ցանց է և վերահսկվում է ATmega328- ի կողմից: Երկու AVR չիպերը հաղորդակցվում են UART սերիական կապում:
Թե՛ պատկերը, թե՛ իմ Արծիվ-ֆայլերը կցված են և, հուսով եմ, բավական կլինեն շրջանագիծը վերստեղծելու համար: Եթե ոչ, ազատ զգուշացրեք ինձ տեղեկացնելը, և ես կթարմացնեմ Instructable- ը:
Քայլ 3: PCB
PCB- ն երկշերտ է և ստեղծվել է Auto Route- ի միջոցով (Օ,, ինչպիսի ** անցք): Այն ունի կոճակներ և էներգիայի ցուցիչ LED առջևում, իսկ մնացածը ՝ հետևում: Ես ունեի իմ PCB- ն JCL PCB- ով, և նրանք դրա հետ զարմանալի աշխատանք կատարեցին: PCB- ն վերստեղծելու համար անհրաժեշտ ֆայլերը պետք է լինեն Eagle- ֆայլերում նախկինում:
Ես կառաջարկեի վերափոխել PCB- ն, քանի որ ես ունեմ որոշ բաներ, որոնք կուզենայի այլ կերպ անել: Եթե ձեզ դուր է գալիս իմ դիզայնը, ես դեռ ունեմ (գրելու պահին) չորս չօգտագործված տախտակ, որոնք ես ավելի քան պատրաստ եմ վաճառել:
Տախտակն ունի չորս հորատման անցքեր, որոնք ես օգտագործել եմ LCD էկրանը տեղադրելու համար:
Քայլ 4: Կոդի վերբեռնում
Թե՛ 1284 – ը, և թե՛ 328 – ը, իհարկե, կարիք ունեն ծածկագրի և իմ օգտագործած ծածկագիրը կարելի է գտնել այստեղ ՝ https://github.com/PlainOldAnders/HAL1284 ArduinoSrc/src- ի ներքո: Ես պարզապես օգտագործեցի Arduino IDE- ն ՝ կոդը փոփոխելու և վերբեռնելու համար, բայց մինչ դա հնարավոր կլինի անել, դուք պետք է այրեք բեռնիչ սարքերը IC- ներում.
ATMega328:
Այս մեկը հեշտ է, այն իմաստով, որ այնտեղ շատ աջակցություն կա, թե ինչպես կարելի է այրել bootloader- ը և վերբեռնել կոդը այս IC- ին: Ես սովորաբար հետևում եմ այս ուղեցույցին, հիմնականում այն պատճառով, որ անընդհատ մոռանում եմ առանձնահատկությունները:
328 -ի կոդը (ArduinoSrc/ստեղնաշարի ներքո) բավականին պարզ է: Այն լիովին ապավինում է Adafruit_Keypad-master- գրադարանին: Եթե lib- ում ինչ-որ բան փոխվի, ես ներառել եմ այն տարբերակը, որն օգտագործել եմ իմ github էջում ՝ ArduinoSrc/lib- ի ներքո:
ATmega1284:
Սա ինձ համար մի փոքր դժվար էր, երբ առաջին անգամ ստացա IC- ն: Սկսեցի այստեղից ստանալով բեռնիչը և հետևեցի տեղադրման ուղեցույցին: Բեռնիչն այրելու համար ես պարզապես արեցի նույնը, ինչ 328 -ի դեպքում և օգնություն ստացա այստեղից: Երկու IC- ների համար ես պարզապես օգտագործել եմ Arduino Uno- ն ՝ բեռնիչն այրելու և ծածկագիրը վերբեռնելու համար (բեռնվելիս IC- ն հեռացվել է Arduino Uno- ից):
Կոդը (ArduinoSrc/HAL1284Basic- ի ներքո) ինձ համար չափազանց բարդ է, բայց ես կարողացա փոփոխել կոդի որոշ հատվածներ.
Ես ավելացրի մի քանի հրաման (դրանք ձեռնարկում նշվում են [A] - ով. Pdf), և ես փոխեցի նաև այլ հրամաններ.
Tone: The tone հրահանգը պարզապես օգտագործում էր Arduino- ի հնչերանգային գործառույթը նախկինում, սակայն TVout գրադարանից օգտվելիս դա ազդանշանի չաշխատելու պատճառ դարձավ: Ես փոխեցի այն TVout- ի հնչերանգային գործառույթի օգտագործման համար, բայց դա նշանակում է, որ հնչերանգի քորոցը պետք է լինի 15 փին (atmega1284- ի համար)
Սերիական հաղորդակցություն. Քանի որ ստեղնաշարը DIY է, այն օգտագործում է սերիական հաղորդակցություն կերպարները կարդալու համար: Քանի որ այստեղ օգտագործվում է atmega1284- ը, առկա են երկու սերիական հաղորդակցության ուղիներ, և երբ «սերկոմը» միացված է, ծածկագիրը նաև թույլ է տալիս գրել սերիական պորտով (համակարգչից կամ որևէ այլ բանից):
Բանաձև. Այս ծրագրի համար օգտագործվող մոնիտորը բավականին բութ է, և անհրաժեշտ է փոքր լուծում, հակառակ դեպքում նկարը թարթում է: Եթե ավելի լավ մոնիտոր է օգտագործվում, ես կառաջարկեի փոխել լուծումը կարգաբերման գործառույթում:
Քայլ 5: Հավաքում
Բեռնված ծածկագրով և PCB- ով և մասերով պատրաստ լինելով, այժմ հավաքման ժամանակն է: Բոլոր այն մասերը, որոնք ես օգտագործել էի, անցքերով էին անցել, ուստի զոդումը շատ դժվար չէր (ի տարբերություն այնտեղի չարաճճի-SMD-soldering-fellas- ների): Մոնիտորը 3DB տպիչով ամրացված էր PCB- ի չորս հորատման անցքերի վրա: Եթե օգտագործվում է մեկ այլ մոնիտոր, ապա հուսով եմ, որ հորատման չորս անցքերը կարող են օգտագործվել դրա տեղադրման համար:
Այստեղ օգտագործվող մոնիտորի կրիչը նախատեսված է նաև միացման անջատիչ տեղադրելու համար (միացված է PCB- ի «անջատիչ» թռիչքին) և մոնիտորի երեք հսկիչ կոճակներին: Սարքը ամրացվում է պլաստմասե M3 պտուտակներով և հեռավորությամբ:
Էլեկտրաէներգիայի միացման համար ես օգտագործել եմ JST PCB միակցիչ, չնայած որ տակառի սլաքը մի փոքր ավելի հարթ կլիներ: Տախտակը սնուցելու համար ես անցա 12 Վ էլեկտրամատակարարման կամ երեք 18650 մարտկոցի միջև: Ինձանից ավելի հարթ կովբոյը, հավանաբար, կարող էր նախագծել տախտակի համար մարտկոցի փայլուն պահիչ:
Քայլ 6: Սխալներ և ապագա աշխատանք
Սլաքների ստեղներ. Սլաքների ստեղները պատահական են դրված և շատ գործառույթներ չեն կատարում: Սա դժվարացնում է նավարկությունը
Ֆայլ I/O: Գոյություն ունեն File I/O հնարավորություններ, սակայն դրանք չեն իրագործվում: Դրա դեմ պայքարելու համար HAL1284Com ծրագիրը կարող է ֆայլեր վերբեռնել տախտակ: Հնարավոր է նաև վերբեռնել EEPROM:
PEEK/POKE. PEEK- ը և POKE- ն անփորձ են, և ես վստահ չեմ, թե որոնք են հասցեները:
Break: Break (Esc) երբեմն խառնաշփոթ է առաջացրել ամբողջ կոդի հետ, երբ գտնվում է անսահմանափակ հանգույցներում:
Պին 7. PWM կապ 7 -ը կարող է դժվար լինել DWRITE High կամ AWRITE 255 գրելիս: Այն լավ է աշխատում AWRITE 254 -ով:
Իդիոտ. Իդեալական կլինի, որ կարողանաք նաև վերբեռնել UART1- ի միջոցով, բայց վերբեռնումը հնարավոր է միայն UART0- ի միջոցով, այնպես որ վերբեռնումը պետք է կատարվի `հանելով հիմնական IC- ն: Էկրանը և լարման կարգավորիչը 5 -ը մի փոքր չափազանց տաքանում է երկար աշխատելիս:
Խորհուրդ ենք տալիս:
MutantC V3 - Մոդուլային և հզոր ձեռքի համակարգիչ. 9 քայլ (նկարներով)
MutantC V3 - Մոդուլային և հզոր HandHeld համակարգիչ. Raspberry -pi ձեռքի հարթակ ֆիզիկական ստեղնաշարով, boուցադրման և ընդլայնման վերնագիր ՝ սովորական տախտակների համար (Arduino Shield- ի նման): mutantC_V3- ը մուտանտի C_V1 և V2- ի իրավահաջորդն է: Ստուգեք մուտանտի C_V1 և մուտանտի C_V2.https: //mutantc.gitlab.io/https: // gitla
Բաց շրջանակ Mini ITX համակարգիչ ՝ 5 քայլ (նկարներով)
Բաց շրջանակ Mini ITX համակարգիչ. Ես երկար ժամանակ ցանկանում էի կառուցել փոքր աշխատասեղան: Ինձ նաև շատ դուր եկավ բաց շրջանակի նստարանային ոճի շասսիի գաղափարը, ինչ-որ բան, որը թույլ կտար ինձ հեշտությամբ հեռացնել/փոխարինել բաղադրիչները: Իմ պահանջները ապարատային սարքավորումների նկատմամբ առաջին հերթին
Դարձրեք այդպես! Star Trek TNG մինի ինժեներական համակարգիչ. 11 քայլ (նկարներով)
Դարձրեք այդպես! Star Trek TNG Mini Engineering Computer: Overview Ես մեծացել եմ ՝ դիտելով Star Trek: The Next Generation: Ես միշտ ցանկացել եմ կառուցել Star Trek թեմայով սարք, ուստի վերջապես սկսեցի վերափոխել իմ հին նախագծերից մեկը ՝ Star Trek Display տերմինալ ստեղծելու համար: Տերմինալը տրամադրում է հետևյալ տեղեկատվությունը
Samytronix Pi. DIY Raspberry Pi Desktop համակարգիչ (հասանելի GPIO- ով) ՝ 13 քայլ (նկարներով)
Samytronix Pi. DIY Raspberry Pi Desktop համակարգիչ (հասանելի GPIO- ով). Այս նախագծում մենք պատրաստելու ենք Raspberry Pi Desktop համակարգիչ, որը ես անվանում եմ Samytronix Pi: Այս աշխատասեղանի համակարգիչը հիմնականում պատրաստված է 3 մմ լազերային կտրված ակրիլային թերթից: Samytronix Pi- ն հագեցած է HD մոնիտորով, բարձրախոսներով և ամենակարևորը ՝ հասանելիությամբ
Arduino հիմնական համակարգիչ VGA ելքով ՝ 5 քայլ (նկարներով)
Arduino հիմնական համակարգիչ ՝ VGA ելքով Այժմ ես ցույց կտամ, թե ինչպես կարելի է կառուցել նույն համակարգիչը, բայց ելքային ազդանշանի միջոցով