Bit-Banging It Old School

  Рет қаралды 1,971

Stuart Patterson

Stuart Patterson

Күн бұрын

Bit-Banging is the process of implementing in software all the timing and handshaking code normally handled in hardware, such as a Universal Asynchronous Receiver Transmitter (UART). If you don’t have a serial output solution due to your embedded hardware, bit-banging can be a solution to getting that data out in numerous protocol formats! In this video I show you how I created a bit-banging solution to allow my old school Atari 800XL to talk to the SpeakJet speech synthesizer chip using TTL logic level with the RS-232 protocol. I used 6502 assembly language via the Mac65 development cartridge and an esp8266 D1 mini as a bridge to interface with the Arduino IDE Serial Monitor.
The following Wikipedia page was referenced for some content and graphics:
en.wikipedia.org/wiki/Bit_ban....
Any action you take upon the information in my KZbin videos or related schematics/stl/source code/additional content is strictly at your own risk and I will not be liable for losses, damages, or injuries in connection to the use of the videos or the recreation of the projects in the videos. I am NOT a professional Electrical Engineer, nor am I licensed as an EE.
00:00 Introduction
00:09 Title
00:12 Bit-Banging Explained
08:44 Demo
12:19 Code Review
19:55 Blooper

Пікірлер: 10
@razorr1920
@razorr1920 Жыл бұрын
Super cool boss...
@StuartPatterson
@StuartPatterson Жыл бұрын
Thank you
@rty1955
@rty1955 3 ай бұрын
Most people dont inderstand the start & stop bits and wby they are needed. These came from the old ASR-33 teletypes and omce a start bit was detected, it engaged a mechanical clutch that linked a synschronis motor to a distrivuter. As the data bits followed, this rotor wpuld spin at the motor rate and set mechanical rods. When the stop bit was sensedb tje clutch disengaged and the character was printed And on sending when you pressed a keyb it would engage the clutch again and read the rods and aend the bits, then disengaged the clutch
@StuartPatterson
@StuartPatterson 3 ай бұрын
Very cool! Thanks for sharing, I did not know that!
@0xssff
@0xssff 5 ай бұрын
Impressive
@StuartPatterson
@StuartPatterson 5 ай бұрын
Thank you!
@CDP1861
@CDP1861 Жыл бұрын
I have been doing exactly this on the same old processor that I used to have in my first computer long ago ( not a 6502). Maybe I overheard it, but stuff like interrupts or DMA requests can throw quite a brick into your carefully timed routines, How do you get that to work on the Atari without disabling them?
@StuartPatterson
@StuartPatterson Жыл бұрын
I did disable interrupts and those that are nonmaskable where left to go their merry way. Hence, at higher baud rates you can drop characters.
@CDP1861
@CDP1861 Жыл бұрын
@@StuartPatterson Uploading files via the XMODEM protocol is the only way to load something on my little breadboard experiment. Things also get very tight when whole data packets come in rapidly. I got 19200 baud quite reliably, and 38200 baud are possible if I clock the old processor with 7.3 MHz. That's all it gives me at 5V, but it's a CMOS processor, probably the first commercial one ever. It can be overclocked in a similar way as modern processors. In the old days that was not so attractive because faster RAMs were hard to get and expensive.And who had a terminal that supported such baud rates?
@StuartPatterson
@StuartPatterson Жыл бұрын
I remember my 300 baud modem on the Atari 800 and using xmodem. Those were the days!
Bit Bang FT232 to Control SPI Devices
37:45
Scott Harden
Рет қаралды 37 М.
EEVacademy #4 -  I²C (I2C) Bit Banging
10:57
EEVblog
Рет қаралды 73 М.
World’s Deadliest Obstacle Course!
28:25
MrBeast
Рет қаралды 73 МЛН
MEU IRMÃO FICOU FAMOSO
00:52
Matheus Kriwat
Рет қаралды 10 МЛН
🍕Пиццерия FNAF в реальной жизни #shorts
00:41
ESP8266 D1 Mini Keeps Rebooting / Restarting
2:20
Stuart Patterson
Рет қаралды 2,5 М.
RS232 interface with the 6551 UART
22:45
Ben Eater
Рет қаралды 198 М.
XPLPro/Arduino Zibo 737 CDU Display with 9486 Mega Shield
3:10
Curiosity Workshop
Рет қаралды 816
Bit-banging Ethernet on an ATTiny85
4:38
CNLohr
Рет қаралды 39 М.
SPI (Bit Banging)- IO from Scratch - Part 4
30:04
James Sharman
Рет қаралды 9 М.
Understanding UART
6:11
Rohde Schwarz
Рет қаралды 170 М.
Equivalent Series Resistance (ESR) Meters
9:52
Stuart Patterson
Рет қаралды 1,4 М.
I2C Bit-Banged without Microcontroller!
30:32
Kevin Darrah
Рет қаралды 46 М.
Tutorial: Access the UART (Serial Port) on GNU/Linux with a simple C program
12:53
#BB10 Namespaces & Macros for Arduino (and other) microcontrollers
19:06
ВСЕ МОИ ТЕЛЕФОНЫ
14:31
DimaViper Live
Рет қаралды 73 М.
i love you subscriber ♥️ #iphone #iphonefold #shortvideo
0:14
Si pamerR
Рет қаралды 3,3 МЛН
Cadiz smart lock official account unlocks the aesthetics of returning home
0:30
iPhone 15 Pro vs Samsung s24🤣 #shorts
0:10
Tech Tonics
Рет қаралды 14 МЛН