Taula de continguts:

Robot Brain: construeix un ordinador de placa única al vespre: 11 passos
Robot Brain: construeix un ordinador de placa única al vespre: 11 passos

Vídeo: Robot Brain: construeix un ordinador de placa única al vespre: 11 passos

Vídeo: Robot Brain: construeix un ordinador de placa única al vespre: 11 passos
Vídeo: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Maig
Anonim
Robot Brain: construeix un ordinador de placa única al vespre
Robot Brain: construeix un ordinador de placa única al vespre

Us quedeu sense memòria al Picaxe o Arduino? Però hi ha un PC excessiu per a la feina? Mireu aquest ordinador de placa única de codi obert que es pot programar en idiomes com C, Basic, Forth, Pascal o Fortran. Utilitza un sistema operatiu anomenat CPM que s’executa en un Z80, que va ser popular a finals dels anys setanta fins a mitjans dels vuitanta. Com a resultat, hi ha almenys un gigabyte de programari disponible que inclou llenguatges de programació, programes de fulls de càlcul i processadors de text. CPM és un sistema operatiu basat en text i és una versió senzilla de DOS. Aquest tauler és perfecte si esteu construint un robot o un sistema domòtic molt complexos i continueu trobant que els equips amb un sol xip com ara pics, arduinos i atmegas no tenen memòria. La tecnologia moderna significa que poden existir discs durs i disquets en xips de memòria individuals i que els ordinadors que abans necessitaven una font d’alimentació trifàsica es poden emular en una placa alimentada per bateries. d'un grup d'entusiastes amigables https://groups.google.com.au/group/n8vemLes taules són un disseny de codi obert i podeu crear-ne de pròpies o comprar-ne un a un entusiasta dels Estats Units a un preu de cost (20 dòlars). Els Eproms es poden comprar preprogramats o podeu programar-ne els vostres. Ajuntem-ne un i vegem què pot fer …

Pas 1: uniu-vos al grup de Google

Uniu-vos al grup de Google
Uniu-vos al grup de Google

Podeu navegar pel grup https://groups.google.com.au/group/n8vem, però si envieu una sol·licitud per unir-vos al grup, podeu contribuir al debat. Hi ha una biblioteca de fitxers i moltes imatges de taules de treball. Vaig enviar un missatge al grup fa unes setmanes i vaig demanar que hi participés. Vaig demanar una taula i va arribar una setmana després, que és bastant ràpid des dels Estats Units fins a Austràlia. Jo no tenia moltes de les parts, així que em van donar la llista de peces d'aquí https://n8vem.googlegroups.com/web/TestPrototype_BOM_PART-LIST.lst?gda=6DMrhVQAAABRoI8ydU505jGCwGWcAnRLVYTZaCdyJias028kLbDjM7mHeIlRNZNuWyWm5kKNAJr2D8gD3ctlIYKczaAghgqdUwk_6Qi3BU8HCN0q6OYwM6JXPqrFQS5SIfKND7QsaYYQuite algunes botigues tenen les parts, incloent Digikey, Jameco i Futurlec. Tots els xips lògics s’especifiquen com a parts LS. LS és una mica vella i els xips fan servir més energia i s’escalfen. Vaig substituir tots els xips LS per la gamma HCT més moderna. Els HCT són directament compatibles però consumeixen molta menys energia. De la mateixa manera, vaig optar per un CMOS Z80, un CMOS UART (16C550) i un xip d’entrada / sortida CMOS (82C55). La junta va arribar gairebé al mateix temps que les peces i era el moment de començar a soldar.

Pas 2: soldeu el tauler

Soldar la Junta
Soldar la Junta

Soldar era bastant fàcil i es feia en una hora i mitja. Vaig decidir connectar les fitxes grans i soldar les fitxes més petites directament. El problema més gran era doblegar lleugerament tots els passadors del xip perquè encaixessin al tauler. Hi ha un xip de rellotge en temps real que no necessitava, així que el vaig deixar de banda. Es pot afegir més endavant. També he posat un endoll de corrent continu a la meva placa i un regulador de 5 V. Aquesta placa és tan eficient que ni tan sols necessita dissipador de calor al regulador. Vaig córrer contra una berruga de paret de 9 V. L'eprom té una etiqueta a la finestra, en cas contrari, es podria esborrar si surt al sol. L'esquema es troba aquí https://n8vem.googlegroups.com/web/Printing+TestPrototype- sch.pdf? gda = MaRhCFMAAABRoI8ydU505jGCwGWcAnRLnTJP08ZxIX8TVeSmRPYsxGLTiGlLa5mMzgNTsMYdvKCD3Kr1rUv-XML38vqpBkuybCVT3v Però em va semblar útil comparar-lo amb el meu primer equip que tenia 8 xips de RAM per obtenir 64K. Aquest tauler té mig meg en un sol xip. La CPU és un Z80. El Z80 provenia del xip 8080 i el 8080 també va generar el 8086, el 80286 fins el 80586, que es deia pentium perquè l'oficina de patents va dir que no es podien patentar números. Les instruccions de codi de màquina 8080 en un Z80 encara existeixen en ordinadors moderns.

Pas 3: programa l'Eprom

Programa l'Eprom
Programa l'Eprom

Si no voleu programar una eprom, sempre en podeu comprar una prèviament programada quan obtingueu el tauler. Però vaig pensar que podria fer servir eproms programats en alguns altres projectes, així que vaig aconseguir un programador i una goma d'esborrar. Aquests costaven milers. Però vaig agafar el programador per 34 dòlars inclòs l’enviament (cerqueu el programador eprom a eBay) i l’esborrador era de 25 dòlars, inclòs l’enviament. El programador ve amb el seu propi programari i, si li dieu el número del xip, us proporciona una imatge de com inserir el xip i configurar tots els commutadors. Els eproms queden en blanc, però en vaig programar un, després el vaig esborrar durant 5 minuts i el vaig reprogramar, només per comprovar que tot funcionés. La imatge rom completa es troba aquí https://n8vem.googlegroups.com/web/ROMIMAGE.zip?gda = 5RkX1kEAAABRoI8ydU505jGCwGWcAnRLTpwShSoH8O7HvxGhdHl1lXeXmbZQXujx0V3ulhJIKNrhtrFcBixfottYTQUy-Muj7WbB0sVAO2Hmgtm1PE. És com si fos el vostre disc d’instal·lació d’XP, excepte que entra en un xip. Descomprimiu el fitxer, engegueu el programador, carregueu el fitxer.bin i programeu el xip. Podeu llegir de nou les dades per comprovar-ne el funcionament. L’únic problema d’aquest programador és que necessita un port paral·lel. Alguns equips més nous no tenen un port paral·lel. Em vaig construir un cable d’extensió de port paral·lel, de manera que no vaig haver de seguir arribant darrere del PC. Consisteix en un endoll IDC D25 i un endoll IDC D25 i 2 metres de cable de cinta. Utilitzeu un vici per prémer l’endoll al connector. El programador willem que he comprat no mostra tots els paràmetres necessaris per programar un eprom d'1 megabyte. A l’esquerra del xip a prop de la part inferior, cal moure un pont. La configuració es troba al manual, que és un fitxer anomenat Willem PCB5.0 Manual.html a la secció manual. Això té molts més detalls sobre la configuració.

Pas 4: Connecteu un cable sèrie

Connecteu un cable de sèrie
Connecteu un cable de sèrie

Si torneu al pas 2 podeu veure el cable sèrie a la imatge. Hi ha tres parts: 1) El meu cable d'extensió que ve de la part posterior del PC. Aquest és el cable arc de Sant Martí. L'he construït de la mateixa manera que el cable d'extensió del programador, llevat que aquest utilitza un endoll i un endoll D9 IDC. És realment útil no haver de seguir arribant darrere de l’ordinador tot el temps. El cable d’extensió té una femella en un extrem i un mascle en l’altre. 2) Un mòdem nul. Es tracta d’una connexió entre dones i dones. Tinc el circuit d’aquí https://www.beyondlogic.org/serial/serial.htm (desplaceu-vos una mica cap avall). Bàsicament, un mòdem nul uneix els pins 7 i 8, uneix els pins 1, 4, 6 i canvia els pins 2 i 3. La connexió de 9 pins es converteix a continuació en una connexió de 3 fils: terra, transmet dades i rep dades. Simplement simplifica RS232.3) Una capçalera de 10 pins a la placa a un connector macho D9. Més informació sobre això a la pàgina següent: a l’esquema, el D9 masculí de l’esquerra es connecta al PC. El mòdem nul és una connexió femella a femella amb les connexions dels endolls. Podria haver connectat tot això amb molts menys endolls, però faré servir el mòdem nul en altres projectes.

Pas 5: connecteu la capçalera de sèrie

Connecteu la capçalera de sèrie
Connecteu la capçalera de sèrie

La capçalera del tauler està dissenyada per anar a un cable de cinta IDC de 9 vies i després a un endoll D9 mascle. L'únic truc és que la capçalera de 10 vies està dissenyada per agafar un cable de cinta de 10 vies. Si utilitzeu un cable de 9 vies, hi ha un buit per al cable que falta. He pres un primer pla per ajudar a aclarir això. Si el connecteu correctament, el pin 1 del tauler passa al pin1 del D9. El pin 5 del D9 s'hauria de connectar a terra a la placa. Si aquests dos estan connectats, la resta de cables també estaran bé.

El cable 1 es troba a l’esquerra de les dues vistes del cable de cinta. Si voleu, podeu utilitzar un cable de cinta amb colors. Les coses desordenades de l’endoll IDC són coles de fusió en calent. Probablement no sigui necessari, però fa que les coses siguin una mica més fortes.

Pas 6: descarregueu programari

Descarregueu alguns programes
Descarregueu alguns programes

Necessitem programari a la pissarra i abans de poder descarregar programes necessitem un programa de mòdem. Farem servir xmodem, que és un estàndard que existeix des de fa anys. Xmodem existeix com a programa CPM i existeix de moltes formes en programes de PC, com ara hiperterminal. Per tant, podem utilitzar-ho per comunicar-nos entre l’antiga i la nova tecnologia. Anem a agafar l'arxiu hexadecimal de Xmodem des d'aquí: https://n8vem.googlegroups.com/web/xm50_LB1.zip?gda=O2tYn0EAAABRoI8ydU505jGCwGWcAnRL1RQ8Aj5bHZQJ6hxcf7VyVbwBih-m421sIN3Oibiyd_vhtrFcBixfottYTQUy-Muj7WbB0sVAO2Hmgtm1PE2xNgUnzip i obtindrà dos arxius. Necessiteu el que acabi en.hex. Ara hem d’enviar-ho a la junta. Necessiteu un programa terminal que emuli un monitor i un teclat per a aquest ordinador de placa única. Windows té un anomenat hiperterminal que normalment s’amaga a la carpeta d’inici / programes / accessoris. O podeu fer servir un hiperterminal privat. O Teraterm. O absolutetelnet. O un programa basat en dos anomenat conex. Hi ha molts programes de terminal al voltant, perquè així us marcàveu a Internet abans de la banda ampla. Us donarà tres pantalles i necessiteu tots els paràmetres correctes. Un cop hàgiu introduït això, podeu desar aquesta sessió i es crearà un petit fitxer que acabi en.ht Si feu clic a aquest fitxer (arrossegueu-lo a l'escriptori perquè pugueu trobar-lo més endavant), s'iniciarà l'hiperterminal amb tot. la configuració correcta. Primera pantalla = assigna un nom a la connexió. Anomeneu-lo SBC i trieu una icona. Segona pantalla. Establiu el port de com. Per defecte, el meu ordinador és COM2 a la pantalla de configuració i s’ha de canviar a COM1. Seguiu endavant i canvieu a COM1. Tercera pantalla. Velocitats de transmissió, etc. Definiu els bits per segon a 9600. 8 bits de dades. Paritat a cap. Atureu els bits a 1. I el control de flux a Cap. Probablement només haureu de canviar bits per segon i Flow Control. Ara se us mostrarà la pantalla del terminal. Connecteu el tauler al port sèrie i engegueu-lo i hauríeu de rebre un missatge de benvinguda. Si no, entra al grup de Google i demana ajuda. Ara és hora de parlar amb la junta!

Pas 7: descarregueu Xmodem

Descarregueu Xmodem
Descarregueu Xmodem

Si heu comprat el xip RAM amb bateria, només haureu de fer-ho una vegada. De fet, altres estan treballant per posar-ho al xip eprom, de manera que és possible que no hagueu de fer-ho en un futur molt proper. A l'indicador>, escriviu h

No escriviu res més. No escriviu Retorn. Només una sola h, tant en minúscules com en majúscules. El cursor baixarà d'una línia, però no passarà res més. Ara feu clic a la part superior del programa hiperterminal al menú Transferència. Feu clic a Envia fitxer de text. A Nom de fitxer, utilitzeu l'exploració per trobar la còpia hexadecimal del xmodem que heu baixat. Es diu XM50LB1. HEX És possible que hagueu de canviar la cerca predeterminada de *.txt a *.hex per trobar-la. Feu clic a D'acord i molts números passaran per la pantalla durant uns 30 segons. Espereu fins que s’aturin. A continuació, premeu la lletra c una vegada, de nou sense entrar. Espereu 2 segons i estareu al CPM amb una sol·licitud A>. Ara escriviu el següent i premeu Intro: Desa 40 b: xm.com Ara escriviu B: i escriviu, per canviar a la unitat B i rebrà una sol·licitud B>. Ara escriviu DIR i introduïu, per llistar els fitxers. Hi ha tres unitats en aquest equip, A, B i F. Podeu veure què hi ha a cadascuna escrivint la lletra de la unitat, després dos punts, després introduïu i, a continuació, DIR. La imatge mostra una captura de pantalla.

Pas 8: Agafeu programari

Agafa alguns programes
Agafa alguns programes

Hi ha un munt de programari de CPM. Eghttps://www.loomcom.com/cpm/cpm_cdrom/https://www.gaby.de/ecpmlink.htm Però provem alguna cosa senzilla. Permetem que Basic afegeixi un parell de números i imprimim la resposta. Per fer-ho, necessitem una còpia de Basic. Hi ha moltes còpies, però deixem una mica tangent i parlem del simulador d’Altair. Aquest petit programa és una emulació completa d’una màquina CPM que s’executa en un PC. Té una gran biblioteca de programari, convenientment empaquetada en porcions de mida de disc, i funciona molt més ràpid que un ordinador CPM real, que és molt útil quan es compila. El simulador és aquí: https://www.schorn.ch/cpm/intro.php Descarregueu el programari i descarregueu com a mínim la imatge del disc CPM2.2 i aproximadament la meitat de la pàgina, la imatge bàsica. Col·loqueu-los tots al mateix directori. Mentre esteu allà, consulteu tots els altres idiomes com C Cobal, Fortran i Pascal. Si executeu el programa AltairZ80.exe, obtindreu una finestra de dos. Si heu descarregat el fitxer basic.dsk, podeu executar-lo amb l'ordre Doo basic al simulador. A continuació, DIR per llistar els fitxers (que es troben a la unitat A: i B:) Volem MBASIC i està assegut a la unitat A. Per copiar-ho a un directori de PC, escriviu W MBASIC. COM i això desarà el fitxer a la directori on es troba el programa d'altair. Podeu fer el contrari amb l'ordre R que transfereix fitxers del PC als discs del simulador d'altair. De fet, si voleu jugar amb CPM, aquesta és una bona manera de fer-ho sense haver de construir ni comprar res. Si voleu desar fitxers al disc virtual, sortiu del simulador d’altair amb un ctrlE (tecla de control i E). Això surt i estalvia. Si no voleu desar cap canvi, tanqueu la finestra amb la X a l'extrem superior dret.

Pas 9: Moveu el fitxer MBASIC. COM al tauler

Moveu el fitxer MBASIC. COM al tauler
Moveu el fitxer MBASIC. COM al tauler

Transferim Basic al tauler.

A la sessió hiperterminal, aneu a la unitat B: i escriviu XM R MBASIC. COM i després introduïu. Això posarà en marxa el programa xmodem i estarà allà esperant que arribi un fitxer. Ara aneu al menú hiperterminal i feu clic a Transferència i, a continuació, a Envia fitxer. Cerqueu el fitxer MBASIC. COM. A la secció de protocol, seleccioneu Xmodem. En hiperterminal és el tercer cap avall. Feu clic a Envia i, al cap de pocs segons, el fitxer es quedarà. Triga aproximadament un minut. Si funciona, hauríeu d'obtenir l'indicatiu B>. Escriviu DIR per comprovar que hi sigui. (Ignoreu totes les tecles B> de la pantalla; he premut la tecla d'inici algunes vegades accidentalment)

Pas 10: executeu Basic i escriviu un programa

Executeu Basic i escriviu un programa
Executeu Basic i escriviu un programa

Ara podem executar Basic a la pissarra i escriure un petit programa.

Pas 11: Compileu un programa

Compileu un programa
Compileu un programa

Si us agrada molt, podeu compilar un programa. Això produeix un.com (l'equivalent d'un.exe en un PC). Els fitxers Com es poden executar com a programes independents i fins i tot es poden configurar perquè s’executin automàticament quan s’inicia la placa. Ara, la placa pot funcionar com un controlador autònom, sense necessitat de connectar-la mai a un PC. La placa N8VEM pot compilar programes a la placa o podeu utilitzar el simulador d’altair. Aquest últim és més ràpid, però realment no importa. Si voleu compilar programes, necessiteu el següent: MBASIC. COM, BRUN. COM L80. COM BCLOAD, BASLIB. REL I BASCOM. COMC és una mica diferent, però crec que encara fa servir l’enllaçador L80. Consulteu la captura de pantalla per saber com escriure, compilar i executar un programa. I estigueu atents, perquè aviat hi haurà discs durs, una mini pantalla LCD, una pantalla que utilitzi un vga monitor vga https://www.tvterminal.de/index.html#english amb interfície de teclat, unitat flash i entrada i taules de sortida!

Recomanat: