public:computers:6502:update_sept_2022
Table of Contents
Update Sept 2022
Some recent modifications and additions
Hardware
- 2 more 65C22 VIA chips to give a total of 3 VIAs providing six 8-bit I/O ports.
- VIA #1 ($6001) : Port A = Keypad
- VIA #1 ($6000) : Port B = LCD_1 (4×20 in 4-bit mode)
- VIA #1 : IRQ connection to CPU for keypad and CB1 & CB2 buttons
- VIA #1 Port B handshaking CB1 and CB2 connected to debounced buttons for user input experiments
- VIA #2 ($5001) : Port A = Spare
- VIA #2 ($5000) : Port B = SPI (bit0,1,2,6), Piezo Sounder (bit7)
- VIA #2 : T1 Timer = square wave generator for sounder using Port B bit7
- VIA #3 ($4801) : Port A = LCD_2 (2×16 in 4-bit mode)
- VIA #3 ($4800) : Port B = Spare
- VIA #3 : T1 Timer = System Clock Ticks at 10ms rate via NMI connection to CPU
- main LCD changed to a 4 line by 20 character display
- 2nd LCD (2 x 16) added on VIA #3 Port A
- LED indicator plug-in boards made to give easy visual indication of VIA output port state
- Piezo sounder connected to VIA #2 Port B, bit 7
- SPI interfacing using VIA #2 Port B
- Buttons for controlling interrupt driven events, each de-bounced with a 555 monostable
- 555 timer as a power-on CPU reset
Firmware
ROM Monitor code extended to support the new hardware.
- SPI transceive to communicate with a basic SPI slave running on a PyBoard
- LCD #2 display of either “Mission Time” or SPI TX/RX data to/from PyBoard
- code to send audible beeps of different pitch/duration (controlled by the 2 buttons)
- keypad - confirmation keypress beeps
- Byte (binary) to ASCII decimal conversion to show 16-bit/2-byte binary data as a human readable decimal number
- Use of FLAGS to control background tasks extended/explored
Next Steps
- add Serial Interface using Rockwell 65C51 ACIA and MAX232
- learn how to code for interacting via serial interface
- connect to a Wyse-185 Serial Terminal
- [✓ John Pumford-Green, 2022-09-26]
add DS1306 RTC via SPI - [✓ John Pumford-Green, 2022-09-26]
move system clock back to VIA_1 using IRQ interrupt - [✓ John Pumford-Green, 2022-09-26]
move beep to VIA_3 port B7 - [✓ John Pumford-Green, 2022-09-26]
move SPI interface to VIA_3 port B, for future connection to DS1306 RTC- this will leave :
- VIA_2 ports A & B free for external use
- VIA_3 Port A = LCD2
- VIA_3 Port B = Beep and SPI/RTC
— John Pumford-Green 17/09/22 11:50
Further Information
public/computers/6502/update_sept_2022.txt · Last modified: 31/07/24 12:12 BST by john