BBC micro:bit SN76489N VGM chiptunes player
Diff: main.cpp
- Revision:
- 2:74ecf50e4424
- Parent:
- 1:09a3520030b4
--- a/main.cpp Sun Feb 11 11:10:58 2018 +0000 +++ b/main.cpp Sun Feb 11 20:07:59 2018 +0000 @@ -25,7 +25,7 @@ Inspired by Arduino code produced by Artkasser (https://github.com/artkasser) -This code plays BBC micro (SN76489) VGM sound files on a BBC micro:bit. +This code plays BBC micro (SN76489N) VGM sound files on a BBC micro:bit. Note that in this code version, the VGM data is stored as a byte array file (minus the header info), and not read-in from anywhere. Maybe later!? @@ -34,7 +34,7 @@ 1 x BBC micro:bit breakout board (eg: Kitronik) to get to the required pins 1 x SN74HC595 shift register IC - easy to obtain -1 x SN76489 programmable sound generator (PSG) IC (From a reputable[!] +1 x SN76489N programmable sound generator (PSG) IC (From a reputable[!] supplier. You can get them on Ebay and elsewhere but beware of fakes. 2 x 0.1uF ceramic capacitors 1 x 4MHz oscillator module - the connections list below assumes a '14-pin' @@ -69,15 +69,15 @@ micro:bit P15 MOSI 74HC595 pin 14 (SER) micro:bit P13 CE 74HC595 pin 12 (RCLK) micro:bit P2 SER 74HC595 pin 11 (SRCLK) - micro:bit P8 PSG ~WE SN76489 pin 5 (~WE) + micro:bit P8 PSG ~WE SN76489N pin 5 (~WE) 74HC595 Data out Data bus PSG Data lines - Note that the PSG data lines are labelled in REVERSE, so the - wiring between the 595 and the 76489 should - be 74HC595 D0 --- D7 SN76489 - 74HC595 D1 --- D6 SN76489 etc + wiring between the 595 and the 76489N should + be 74HC595 D0 --- D7 SN76489N + 74HC595 D1 --- D6 SN76489N etc Oscillator P7 GND To common ground with all other GND pins - Oscillator P8 CLK SN76489 pin 16 - Audio out AUDIO SN76489 pin 7 to an external amplifier, + Oscillator P8 CLK SN76489N pin 14 + Audio out AUDIO SN76489N pin 7 to an external amplifier, or a piezo sounder through a 1K resistor +5V VCC Both ICs, pin 16, Oscillator pin 14; all active components EXCEPT the micro:bit @@ -85,7 +85,7 @@ parts For stability, connect 0.1uF capacitors between VCC and GND near the both the -74HC595 and SN76489 chips. +74HC595 and SN76489N chips. Double-check all wiring before powering up anything!