Cuprins:

Robot Brain: Construiește un singur computer de bord într-o seară: 11 pași
Robot Brain: Construiește un singur computer de bord într-o seară: 11 pași

Video: Robot Brain: Construiește un singur computer de bord într-o seară: 11 pași

Video: Robot Brain: Construiește un singur computer de bord într-o seară: 11 pași
Video: 15 MODALITATI DE A STRECURA MANCARE IN CINEMA !! 2024, Mai
Anonim
Robot Brain: Construiește un singur computer de bord într-o seară
Robot Brain: Construiește un singur computer de bord într-o seară

Ai rămas fără memorie pe Picaxe sau Arduino? Dar un PC este exagerat pentru slujbă? Aruncați o privire la acest computer cu sursă open source care poate fi programat în limbi precum C, Basic, Forth, Pascal sau Fortran. Folosește un sistem de operare numit CPM care rulează pe un Z80, care a fost popular la sfârșitul anilor 1970 până la mijlocul anilor 1980. Ca urmare, există cel puțin un gigabyte de software disponibil, inclusiv limbaje de programare, programe de calcul tabelar și procesoare de text. CPM este un sistem de operare bazat pe text și este o versiune simplă a DOS. Această placă este perfectă dacă construiești acel robot extrem de complex sau sistemul de automatizare a casei și găsești în continuare că computerele cu un singur cip, cum ar fi fotografiile, arduino-urile și atmegas, pur și simplu nu au memorie. Tehnologia modernă înseamnă că hard disk-urile și dischetele pot exista pe cipuri de memorie unice, iar computerele care aveau nevoie de o sursă de alimentare trifazată pot fi acum emulate pe o placă alimentată de baterii. Un număr de plăci N8VEM sunt construite peste tot în lume de către un grup de entuziaști prietenoși https://groups.google.com.au/group/n8vemBoards sunt un design open source și vă puteți construi propriul sau puteți cumpăra unul de la un entuziast din SUA la preț de cost (20 USD). Eproms pot fi achiziționate pre-programate sau le puteți programa pe ale dvs. Să punem unul împreună și să vedem ce poate face …

Pasul 1: Alăturați-vă grupului Google

Alăturați-vă grupului Google
Alăturați-vă grupului Google

Puteți răsfoi grupul https://groups.google.com.au/group/n8vem, dar dacă trimiteți o cerere de aderare la grup, puteți contribui la discuție. Există o bibliotecă de fișiere și o mulțime de imagini cu tablele de lucru. Am trimis un mesaj grupului în urmă cu câteva săptămâni și am cerut să mă alătur. Am comandat o masă și a sosit o săptămână mai târziu, ceea ce este destul de rapid din SUA în Australia. Nu am avut multe dintre părți, așa că am primit lista de piese de aici https://n8vem.googlegroups.com/web/TestPrototype_BOM_PART-LIST.lst?gda=6DMrhVQAAABRoI8ydU505jGCwGWcAnRLVYTZaCdyJias028kLbDjM7mHeIlRNZNuWyWm5kKNAJr2D8gD3ctlIYKczaAghgqdUwk_6Qi3BU8HCN0q6OYwM6JXPqrFQS5SIfKND7QsaYYQuite câteva magazine au piese, inclusiv Digikey, Jameco și Futurlec. Toate cipurile logice sunt specificate ca piese LS. LS este un pic școală veche și jetoanele folosesc mai multă energie și se încălzesc. Am înlocuit toate cipurile LS cu gama HCT mai modernă. HCT sunt direct compatibile, dar utilizează mult mai puțină energie. În mod similar, am optat pentru un CMOS Z80, un CMOS UART (16C550) și un chip de intrare / ieșire CMOS (82C55). Placa a sosit cam în același timp cu piesele și a venit timpul să începem să lipim.

Pasul 2: lipiți placa

Lipiți placa
Lipiți placa

Lipirea a fost destul de ușoară și s-a făcut într-o oră și jumătate. Am decis să conectez jetoanele mari și să lipesc direct jetoanele mai mici. Cea mai mare problemă a fost îndoirea ușoară a tuturor știfturilor cipului, astfel încât să încapă în tablă. Există un cip de ceas în timp real de care nu aveam nevoie, așa că l-am lăsat deoparte. Poate fi adăugat mai târziu. Am pus și o priză de curent continuu pe placa mea și un regulator de 5 V. Această placă este atât de eficientă încât nici măcar nu are nevoie de radiator pe regulator. L-am scăpat de un neg de perete de 9 V. Eprom are o etichetă peste fereastră, altfel s-ar putea șterge dacă iese la soare. Schema este aici https://n8vem.googlegroups.com/web/Printing+TestPrototype- sch.pdf? gda = MaRhCFMAAABRoI8ydU505jGCwGWcAnRLnTJP08ZxIX8TVeSmRPYsxGLTiGlLa5mMzgNTsMYdvKCD3Kr1rUv-XML38vqpBkuybcVT3VQT Dar mi s-a părut util să compar cu primul meu computer care avea 8 cipuri RAM pentru a obține 64K. Această placă are o jumătate de megă pe un singur cip. CPU-ul este un Z80. Z80 a venit de la cipul 8080, iar 8080 a generat, de asemenea, 8086, 80286 până la 80586, care a fost numit pentium, deoarece oficiul de brevete a spus că nu puteți breveta numerele. Instrucțiunile codului mașinii 8080 într-un Z80 există încă în computerele moderne.

Pasul 3: Programați Eprom

Programați Eprom
Programați Eprom

Dacă nu doriți să programați un eprom, puteți cumpăra oricând unul pre-programat când primiți placa. Dar m-am gândit că aș putea folosi programe electronice programate în alte proiecte, așa că am un programator și o radieră. Acestea costau mii. Dar am luat programatorul pentru 34 USD, inclusiv transportul (căutați programatorul eprom pe eBay), iar radierul a fost de 25 USD, inclusiv transportul. Programatorul vine cu propriul software și, dacă îi spui numărul cipului, îți oferă o imagine despre cum să introduci cipul și să setezi toate comutatoarele. Eprom-urile devin goale, dar am programat una, apoi am șters-o timp de 5 minute și am reprogramat-o, doar pentru a verifica dacă a funcționat. Întreaga imagine rom este aici https://n8vem.googlegroups.com/web/ROMIMAGE.zip?gda = 5RkX1kEAAABRoI8ydU505jGCwGWcAnRLTpwShSoH8O7HvxGhdHl1lXeXmbZQXujx0V3ulhJIKNrhtrFcBixfottYTQUy-Muj7WbB0sVAO2Hmgtm1PE. Este un fel ca discul de instalare XP, cu excepția faptului că acesta intră într-un cip. Dezarhivați fișierul, porniți programatorul, încărcați fișierul.bin și programați cipul. Puteți citi datele înapoi pentru a verifica dacă au trecut. Singura captură cu acest programator este că are nevoie de un port paralel. Unele PC-uri mai noi nu au un port paralel. Mi-am construit un cablu prelungitor de port paralel, așa că nu a trebuit să continui să ajung în spatele computerului. Se compune dintr-o mufă IDC D25 și o priză IDC D25 și 2 metri de cablu cu bandă. Folosiți un menghină pentru a strânge ștecherul pe conector. Programatorul willem pe care l-am cumpărat nu afișează toate setările necesare pentru a programa un eprom de 1 megabyte. În partea stângă a jetoanei din partea de jos, un jumper trebuie mutat. Setările sunt însă în manual, care este un fișier numit Willem PCB5.0 Manual.html în secțiunea manuală. Acest lucru are mult mai multe detalii despre setări.

Pasul 4: conectați un cablu serial

Conectați un cablu serial
Conectați un cablu serial

Dacă reveniți la pasul 2, puteți vedea cablul serial în imagine. Există trei părți în acest sens: 1) cablul meu de extensie care vine din partea din spate a computerului. Acesta este cablul curcubeu. L-am construit în același mod ca și cablul de prelungire al programatorului, cu excepția faptului că acesta folosește o priză și o priză D9 IDC. Este cu adevărat util să nu fie nevoie să continuați să ajungeți în spatele computerului tot timpul. Conductorul de extensie are o femelă la un capăt și un mascul la celălalt. 2) Un modem nul. Aceasta este o legătură între femeie și femeie. Am luat circuitul de aici https://www.beyondlogic.org/serial/serial.htm (derulați puțin în jos). În esență, un modem nul unește pinii 7 și 8, unește pinii 1, 4, 6 și schimbă pinii 2 și 3 peste. Conexiunea cu 9 pini devine apoi o conexiune cu 3 fire - sol, transmite date și primește date. Simplifică un fel RS232.3) Un antet cu 10 pini pe placă la un conector tată D9. Mai multe despre acest lucru în pagina următoare. Pe schemă, masculul D9 din stânga se conectează la computer. Modemul nul este o conexiune de la mamă la mamă cu conexiunile din prize. Aș fi putut conecta toate acestea cu mult mai puține mufe, dar voi folosi modemul nul în alte proiecte.

Pasul 5: conectați antetul serial

Conectați antetul serial
Conectați antetul serial

Antetul de pe placă este conceput pentru a merge la un cablu panglică IDC cu 9 căi, apoi la o mufă tată D9. Singurul truc este că antetul cu 10 căi este conceput pentru a lua cablu cu bandă cu 10 căi. Dacă utilizați cablu cu 9 căi, există un spațiu pentru firul lipsă. Am luat un detaliu pentru a clarifica acest lucru. Dacă îl conectați la dreapta, atunci pinul 1 de pe tablă trece la pinul 1 de pe D9. Pinul 5 de pe D9 ar trebui să se conecteze la pământ pe placa. Dacă cele două sunt conectate, restul firelor vor fi și ele ok.

Firul 1 este în stânga ambelor vederi ale cablului cu bandă. Puteți folosi cablu cu bandă cu culori dacă doriți. Lucrurile dezordonate de pe fișa IDC sunt lipici topit la cald. Probabil că nu este necesar, dar face lucrurile puțin mai puternice.

Pasul 6: Descărcați unele programe software

Descărcați unele programe software
Descărcați unele programe software

Avem nevoie de niște software pe tablă și, înainte de a putea descărca programe, avem nevoie de un program de modem. Vom folosi xmodem, care este un standard existent de ani de zile. Xmodem există ca un program CPM și există în multe forme pe programe pentru PC, cum ar fi hiperterminal. Deci, putem folosi acest lucru pentru a comunica între tehnologia veche și cea nouă. Să apuca fișierul hex de Xmodem de aici: https://n8vem.googlegroups.com/web/xm50_LB1.zip?gda=O2tYn0EAAABRoI8ydU505jGCwGWcAnRL1RQ8Aj5bHZQJ6hxcf7VyVbwBih-m421sIN3Oibiyd_vhtrFcBixfottYTQUy-Muj7WbB0sVAO2Hmgtm1PE2xNgUnzip-l și vei primi două fișiere. Ai nevoie de cel care se termină cu.hex. Acum trebuie să trimitem acest lucru consiliului. Aveți nevoie de un program terminal, care să emule un monitor și o tastatură pentru acest computer de bord unic. Windows are unul numit hiperterminal care de obicei se ascunde în folderul start / programe / accesorii. Sau puteți utiliza hiperterminalul privat. Sau Teraterm. Sau absolutetelnet. Sau un program bazat pe dos numit conex. Există o mulțime de programe terminale în jurul valorii, deoarece așa ați apelat la internet înainte de bandă largă. Vă va oferi trei ecrane și aveți nevoie de toate setările corecte! Odată ce ați introdus acest lucru o singură dată, puteți salva această sesiune și va crea un mic fișier care se termină cu.ht Dacă faceți clic pe acel fișier (trageți-l pe desktop, astfel încât să îl puteți găsi mai târziu), va începe hiperterminal cu toate setările corecte. Primul ecran = denumiți conexiunea. Apelați-l SBC și alegeți o pictogramă. Al doilea ecran. Setați portul de com. Calculatorul meu este implicit COM2 pe ecranul de configurare și trebuie schimbat în COM1. Continuați și treceți la COM1. Al treilea ecran. Baud rate etc. Setați biții pe secundă la 9600. 8 biți de date. Paritate la Nimeni. Opriți biții la 1. Și controlul debitului la Niciuna. Probabil va trebui doar să schimbați biții pe secundă și Flow Control. Acum vi se va prezenta ecranul terminalului. Conectați placa la portul serial și porniți-o și ar trebui să primiți un mesaj de bun venit. Dacă nu, intrați în grupul Google și cereți ajutor. Acum este timpul să vorbim cu consiliul de administrație!

Pasul 7: Descărcați Xmodem

Descărcați Xmodem
Descărcați Xmodem

Dacă ați cumpărat cipul RAM cu baterie, va trebui să faceți acest lucru o singură dată. Într-adevăr, alții lucrează la punerea acestui lucru pe cipul eprom, astfel încât este posibil să nu fie nevoie să faceți acest lucru în viitorul foarte apropiat. La promptul>, tastați h

Nu mai scrie nimic altceva. Nu tastați Enter. Doar o singură oră, minusculă sau minusculă. Cursorul va coborî pe o linie, dar nimic altceva nu se va întâmpla. Acum faceți clic în partea de sus a programului hiperterminal din meniul Transfer. Faceți clic pe Trimiteți fișier text. În Nume fișier, utilizați răsfoire pentru a găsi copia hexagonală a xmodemului pe care l-ați descărcat. Se numește XM50LB1. HEX Este posibil să fie necesar să schimbați căutarea implicită pentru *.txt la *.hex pentru a o găsi. Faceți clic pe OK și o mulțime de numere vor trece pe ecran timp de aproximativ 30 de secunde. Așteptați până se opresc. Apoi apăsați litera c o dată, din nou fără introducere. Așteptați 2 secunde și veți fi în CPM cu un prompt A>. Acum tastați următoarele și apăsați Enter: Save 40 b: xm.com Acum tastați B: și introduceți, pentru a trece la unitatea B și veți primi un prompt B>. Acum tastați DIR și introduceți, pentru a lista fișierele. Există trei unități pe acest computer, A, B și F. Puteți vedea ce este pe fiecare tastând litera unității, apoi două puncte, apoi introduceți și apoi DIR. Imaginea arată o captură de ecran.

Pasul 8: Prindeți niște programe software

Luați câteva programe software
Luați câteva programe software

Există o mulțime de software CPM acolo. Eghttps://www.loomcom.com/cpm/cpm_cdrom/https://www.gaby.de/ecpmlink.htmDar să încercăm ceva simplu. Permiteți obținerea de bază pentru a adăuga câteva numere și a imprima răspunsul. Pentru a face acest lucru, avem nevoie de o copie a Basic. O mulțime de copii sunt acolo, dar să mergem pe o tangență și să vorbim despre simulatorul Altair. Acest mic program este o emulare completă a unei mașini CPM care rulează pe un computer. Are o bibliotecă software mare, ambalată convenabil în porțiuni de dimensiuni de disc, și rulează mult mai repede decât un computer CPM real, care este foarte la îndemână la compilare. Simulatorul este aici: https://www.schorn.ch/cpm/intro.php Descărcați software-ul și descărcați cel puțin imaginea de disc CPM2.2 și aproximativ jumătate din pagină, imaginea de bază. Puneți-le pe toate în același director. În timp ce sunteți acolo, verificați toate celelalte limbi, cum ar fi C Cobal, Fortran, Pascal. Dacă rulați programul AltairZ80.exe, veți obține o fereastră dos. Dacă ați descărcat fișierul basic.dsk, atunci îl puteți rula cu comanda Doo basic În simulator. Apoi DIR pentru a lista fișierele (care sunt pe unitatea A: și B:)) Vrem MBASIC și este așezat în unitatea A. Pentru a copia acest lucru într-un director PC, tastați W MBASIC. COM și acest lucru va salva fișierul în directorul în care se află programul Altair. Puteți face invers cu comanda R care transferă fișiere de pe PC în discurile simulatorului Altair. Într-adevăr, dacă doriți să jucați cu CPM, acesta este un mod minunat de a face acest lucru fără a fi nevoie să construiți sau să cumpărați nimic. Dacă doriți să salvați fișiere pe discul virtual, ieșiți din simulatorul de altair cu un ctrlE E). Aceasta iese și salvează. Dacă nu doriți să salvați modificările, închideți fereastra cu X în colțul din dreapta sus.

Pasul 9: Mutați fișierul MBASIC. COM în tablă

Mutați fișierul MBASIC. COM în tablă
Mutați fișierul MBASIC. COM în tablă

Să transferăm Basic pe tablă.

În sesiunea hiperterminală, mergeți la unitatea B: și tastați XM R MBASIC. COM și apoi introduceți. Aceasta va porni programul xmodem și va sta acolo în așteptarea sosirii unui fișier. Acum accesați meniul hiperterminal și faceți clic pe Transfer și apoi Trimiteți fișier. Căutați fișierul MBASIC. COM. În secțiunea de protocol, selectați Xmodem. În hiperterminal este al treilea jos. Faceți clic pe trimitere și, după câteva secunde, fișierul va dispărea. Durează aproximativ un minut. Dacă funcționează, ar trebui să primiți promptul B>. Tastați DIR pentru a verifica dacă există. (Ignorați toate B> de pe ecran - am apăsat tasta Enter de câteva ori accidental)

Pasul 10: Rulați Basic și scrieți un program

Rulați Basic și scrieți un program
Rulați Basic și scrieți un program

Acum putem rula Basic pe tablă și scriem un mic program. Eg mbasic10 A = 2020 B = 3030 C = A + B40 tipăriți "Răspunsul este:";

Pasul 11: Compilați un program

Compilați un program
Compilați un program

Dacă vă simțiți cu adevărat dornici, puteți compila un program. Aceasta produce un.com (echivalentul unui.exe pe un PC). Fișierele Com pot fi rulate ca programe independente și pot fi chiar configurate pentru a rula automat când pornește placa. Acum, placa poate funcționa ca un controler independent, fără a fi nevoie să fie conectată vreodată la un computer. Placa N8VEM poate compila programe pe placă sau puteți utiliza simulatorul de altair. Acesta din urmă este mai rapid, dar nu prea contează. Dacă doriți să compilați programe, aveți nevoie de următoarele: MBASIC. COM, BRUN. COM L80. COM BCLOAD, BASLIB. REL ȘI BASCOM. COMC este puțin diferit, dar cred că folosește în continuare linkerul L80. Vedeți captura de ecran pentru a scrie, compila și rula un program. Și rămâneți la curent, pentru că în curând vor exista hard disk-uri, un mini ecran LCD, un afișaj care folosește un monitor vga vechi https://www.tvterminal.de/index.html#english cu interfață tastatură, o unitate flash și intrare și placi de iesire!

Recomandat: