Taula de continguts:
- Subministraments
- Pas 1: la placa de circuit
- Pas 2: teoria de la programació
- Pas 3: el programa i la sortida d'Arduino
- Pas 4: Conclusió
Vídeo: Ordinador mínim 6502 i 6522 (amb Arduino MEGA) Part 2: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Seguint el meu anterior Instructable, ara he posat el 6502 a una placa de tires i he afegit un adaptador d'interfície versàtil (VIA) 6522. Una vegada més, estic fent servir una versió WDC del 6522, ja que és una combinació perfecta per al seu 6502. Aquests nous xips no només utilitzen molta menys potència que les versions originals de MOS, sinó que es poden executar a velocitats més baixes o fins i tot fer-hi un pas. un programa sense problemes.
El programa Arduino va ser escrit originalment per Ben Eater (que té molts vídeos a YouTube) i he estat modificat per aconseguir aquest resultat.
Subministraments
1 x processador WDC W65C02
1 adaptador d'interfície versàtil WDC W65C22
1 x IC 74HC00N (porta NAND Quad 2 entrades) o similar
1 x 10cm d'ample (35 línies) Tauler de tires
2 endolls DIL de 40 pins
Presa DIL d'1 x 14 pins
Pins de capçalera PCB de 2,54 mm
Preses de capçal de PCB de 2,54 mm
1 interruptor de botó momentani tàctil momentani de 12 mm muntat en PCB SPST o similar
1 x 1K resistència
1 x resistència 3K3
2 condensadors ceràmics de 0,1 uF
Carpa de llum d'aigua 1 x 8 vies LED vermell de 5 mm
Filferro de diversos colors per a connexions
8 cables d'enllaç mascle - mascle
Pas 1: la placa de circuit
La placa de circuit és força compacta i la part inferior es connecta directament a l’Arduino MEGA. Per aconseguir-ho, els passadors s’introdueixen el màxim possible als suports de plàstic abans de soldar-se a la part inferior del tauler. Per a això es podrien haver utilitzat pins més llargs, però els pins estàndard volen dir que el tauler es recolza fermament a sobre del MEGA.
He alineat els circuits integrats 6502 i 6522 perquè facin ús de les pistes del tauler de tires per connectar-se al MEGA. També hi ha algunes connexions per al 6502 amagades sota l'IC. A l’hora de fabricar el tauler, el primer que s’ha de fer va ser tallar les 16 tires que es connectaran a la doble fila de sòcols de l’Arduino. No cal tallar els 2 exteriors, ja que el 5v i el Gnd estan a banda i banda. Següent soldadura a les 2 files de 18 pins de la part inferior i a les 2 files de 18 endolls a la part superior.
Després d'això, els endolls DIL es van soldar al seu lloc i es van tallar les vies entre ells. Podria haver desat una connexió posant el pin 14 del 74HC00 a la mateixa pista que 5v. Només vaig tallar les vies quan estava segur que havien de ser mentre soldava els cables de connexió. Tanmateix, les coses no sempre van al pla, originalment vaig dissenyar el tauler de tires de la taula de pa anterior utilitzant els passadors 2, 3 i 7 de l’Arduino, però no s’alineaven amb els forats del tauler de tires. els pins 18, 31 i 37. Per tant, els enllaços del meu tauler els dies 31 i 37. Us podeu preguntar per què no he utilitzat un dels pins no utilitzats (23, 24, etc.) per al rellotge, perquè això no és compatible interrupcions, de manera que calia utilitzar el pin 18, 19, 20 o 21 que sí. Afortunadament, aquests 4 pins s’alineen amb els forats del tauler de tires i ho mantenen tot compacte. El pin 18 també està més allunyat de tots els altres cables.
També podeu notar que el meu tauler completat no és exactament el mateix que el meu diagrama. Això es deu al fet que seguia el diagrama d'una altra persona. D’aquí les connexions al 74HC00. També he afegit un LED d'alimentació i 2 files addicionals de sòcols per a Gnd i 5v, així com un parell de condensadors més.
Podria haver connectat els dos sòcols de dades, però això significaria molts més cables que creuaven la placa. Vaig optar per 8 cables d'enllaç per fer-ho com a mesura temporal.
Els ports 6522 A i B han tingut sòcols soldats a les seves vies perquè es puguin inserir fàcilment marques LED.
Ara hi ha molts menys cables que a la versió de taulers de pa.
Pas 2: teoria de la programació
El 6522 té dos ports d'E / S, així com moltes altres funcions, però els ports A i B són fàcilment accessibles. Per generar dades al port, cal establir el Registre de direcció de dades (DDR) en conseqüència i enviar les dades al propi port.
Amb la configuració anterior, el 6522 es troba a $ E000.
Per generar dades al port B, el DDR a $ E002 es defineix en $ FF (255 - totes les sortides) i les dades s’envien a $ E000.
Per generar dades al port A, el DDR a $ E003 es defineix en $ FF (255 - totes les sortides) i les dades s’envien a $ E001.
El codi següent carrega $ FF al registre 6502 A i l’escriu a DDR B a $ E002. Després carrega 55 dòlars i l’escriu a ORB. El codi es gira (donant $ AA) i s’escriu a ORB. El programa fa un salt de 1005 dòlars i es repeteix sense parar. NOTA: el DDR només s’ha d’inicialitzar una vegada.
Adreça Hexdump Desmuntatge
$ 1000 a9 ff LDA # $ ff $ 1002 8d 02 e0 STA $ e002 $ 1005 a9 55 LDA # $ 55 $ 1007 8d 00 e0 STA $ e000 $ 100a 6a ROR A $ 100b 8d 00 e0 STA $ e000 $ 100e 4c 05 10 JMP $ 1005
$ 55 en binari és 010101010 i $ AA és 10101010, cosa que fa que els LED alternin 4 encès i 4 apagats.
Solució ràpida i bruta:
Substituïu el 74HC00 (Quad NAND Gate d'entrada 2) per un 74HC08 (Quad 2 input AND Gate) i el 6522 ara es troba a $ 6000 en lloc de $ E000. Això el mou des dels 32K superiors als 32K inferiors de la memòria adreçable del 6502.
Pas 3: el programa i la sortida d'Arduino
Com que el 6502 no té memòria RAM per llegir, l’Arduino subministra el programa perquè el llegeixi. Quan es detecta un pols de rellotge al pin 18, l’Arduino posa les dades del programa al bus de dades (pins Arduino 39, 41, 43, 45, 47, 49, 51 i 53). El 6502 genera les seves pròpies adreces, que només Arduino supervisa als pins parells 22 a 52. L'Arduino també subministra el pols del rellotge al pin 37. La línia R / W del 6502 es controla al pin 31.
Com Arduino subministra les dades, fins ara no ha estat possible obtenir el 6502 per introduir dades del VIA (tret que se sàpiga millor).
A continuació es mostra el programa Arduino i una mostra de sortida del monitor sèrie.
Pas 4: Conclusió
De nou he intentat mostrar com configurar un "ordinador 6502" mínim.
En aquesta etapa, el 6502 segueix confiant en l'Arduino per subministrar-li un programa i un pols de rellotge perquè funcioni.
És un pas més enllà que quan el vaig instal·lar a la taula de pa.
Aquesta vegada no he utilitzat el 74HC373, sinó el més complex 6522 per bloquejar les sortides de dades. A més, el 6522 té dos ports d'E / S.
Tinc la intenció de portar aquest projecte més enllà instal·lant algun SRAM o una EEPROM.
Recomanat:
Ordinador mínim 6502 (amb Arduino MEGA) Part 3: 7 passos
Ordinador mínim 6502 (amb Arduino MEGA) Part 3: Avançant encara més, ara he afegit un Octal Latch, 8 LED rectangulars i una matriu de resistències de 220 Ohm a la placa principal. També hi ha un pont entre el pin comú de la matriu i el terra, de manera que es poden apagar els LED. La porta 74HC00 NAND h
Ordinador mínim 6502 (amb Arduino MEGA) Part 1: 7 passos
Ordinador mínim 6502 (amb Arduino MEGA) Part 1: El microprocessador 6502 va aparèixer per primera vegada el 1975 i va ser dissenyat per un petit equip dirigit per Chuck Peddle per a la tecnologia MOS. Aleshores es feia servir en videoconsoles i ordinadors domèstics, inclosos els Atari, Apple II, Nintendo Entertainment System, BBC Micr
Xassís mínim de quatre volts de 12 volts amb GoBILDA: 10 passos
Xassís Rover mínim de quatre volts de 12 volts amb GoBILDA: us mostraré com he construït un xassís rover RC o autònom amb components goBILDA. He d'afegir aquí que no tinc cap connexió amb goBILDA que no sigui com a client principalment satisfet. He inclòs una llista completa de peces a Suppl
Com fer un connector OTG mínim: 4 passos (amb imatges)
Com fer un connector OTG mínim: en aquest projecte de bricolatge electrònic veureu com fer un connector OTG mínim a un cost molt baix. El connector OTG és una eina molt pràctica que facilita la connexió del telèfon Android per ampliar el disc U i connectar-lo amb el ratolí. Pots fer un
Ús de PSP com a joystick de l'ordinador i control de l'ordinador amb la PSP: 5 passos (amb imatges)
Ús de PSP com a joystick de l’ordinador i, a continuació, control de l’ordinador amb la PSP: podeu fer moltes coses interessants amb PSP homebrew i, en aquesta instrucció, us mostraré com utilitzar la vostra PSP com a joystick per jugar a jocs, però també hi ha un programa que us permet utilitzar el joystick com a ratolí. Aquí teniu el mater