Hello everyone! Just wanna share my progress from little knowledge about circuitry to being able to make an 8-bit computer (and maybe even a full-fledged computer). This will be structured like a thread so I'll be putting each day on the comments. (I'll be having off-days and breaks of course)
top of page
bottom of page
I'll no longer be continuing to update. I've found that other simulators like Falstad and LTspice suit my needs better, it's just easier to see what's going on, get details, and analyze. (multiple channel oscilloscopes is such a godsend I don't know why I can't do it on CRUMB, I've seen others do it though, maybe I just don't know how to)
I'll still use CRUMB from time to time of course, it has its uses that Falstad and LTspice can't replace, and It's good at that. I'll also continue journalling my progress, just privately (maybe sometime I'll try to put it up online somewhere or even make a vid which is very unlikely). Journalling has done wonders for me (if I can call this journalling), It's my first try and got amazing results (never been so productive like this), highly recommend it.
I'm just letting anyone who's reading this know since I've always hated when people try to figure things out on online forums and it just ends abruptly without conclusion.
Day 8
I regret calling the day early yesterday. Contrary to my belief, timers aren't actually that hard. I made a D flip flop pretty quickly and flawlessly.
I learned to make the clock from the artworks page of CRUMB's Steam Community general discussions, turns out I need to supply positive current to the reset pin. (I really need to start to get into the habit of reading datasheets) I fiddled with it a bit after learning it to know how to change variables of the pulse timing (trigger capacitor changes the pulse delay, resistor connecting the discharge and threshold pin changes the speed of the pace of the pulse).
I then connected the clock to a delay timer, I also fiddled with it for the reason stated previously (resistor and capacitor changes the lifetime of the pulse). Then I connected the output of that to the AND gates of the inputs (replacing the enable). Ben Eater vid
To make up for my regret I tried making a JK flip flop, and was kinda successful! I luckily found this stackexchange post stating that the circuit shown in Ben Eater's video was wrong, (tl;dr he got it flipped) they also stated that JK flip flop was a junk circuit, but I'm too far into it to not ignore that. The thing with my circuit is that it works normally until both inputs are on. It does oscillate while the clock is pulses, but when the pulse ends, both are off. I actually got it to work like a real JK flip flop for a very short time but modified something in the circuit and returned to the previous state. I'll just blame the simulator like I always do hehe
I built all these circuits mostly all by myself again, I only read logic and circuit diagrams, no breadboard tutorials/videos which is a big win in my books! (except for the clock reset pin moment)
I think I'll take a break to research and decide what I'll do next, it's very possible that I'll begin to just follow Ben Eater's playlist. It's also to celebrate how consistent I've been, I've officially been doing this for a week!
D flip flop (555 Q/output pin directly connected to delay timer, green cables connect delay timer to AND gates of inputs)
JK flip flop
files
Day 7
I'm ending my session early today. I fixed the D latch with no enable made with transistors. I say "fixed", but more trial and error'd, not that proud. I somewhat know the logic to it though.
I watched Ben Eater's video on D flip flops, turns out flip flops need clocks, which I think is a whole another monster that needs its own session based on how many videos Ben has on the 555.
D flip flops also need delay timers, but I already understand it based on the D flip flop video and I also already replicated an example on day 1, it's just that I don't think I can actually test if the flip flops I made work without a clock.
D latch no enable
files
Hey Mike! I received your message but I don't really know how to reply to it. You can share it btw no worries and thanks a lot!
Day 6
Today was successful to say the least I did all of the things below all by myself with only Ben's video and literally nothing else!
Started off by Watching Ben Eater's video on a D latch, made all his examples using the ICs flawlessly, I did my goal in under 1 hour so I'm a little surprised. There's a lot more time left in my schedule so I decided to take a very little break then tried to make all the examples using transistors.
I kinda made the D latch with no enable, the thing was that one output wouldn't turn off completely when it was supposed to. I just skipped to making the SR latch with an enable. When I added the enable gate, when either of the buttons were pressed, the output LED that was supposed to stay on just wouldn't, both of them would be off when nothing was pressed. It turns out that the positive current coming from the enable switch to the beta of the transistor was interfering with the circuit. I just increased the ohms of the resistor of the enable switch to 2000.
During the troubleshooting of said problem, I deleted the connection between the enable switch and the beta of one of the transistor, then tried pushing the button of the one with the enable switch still connected. I came to realize that I just made an actual D latch, it actually remembers the state of the outputs when the enable switch is off.
I'm kind of getting a hold of working with circuits with inverters, I think it's all about giving new paths for the current to go to ground when and how you want it to. I'll try to make a D latch with no enable that works flawlessly tomorrow, then go to D flip-flops.
D latch with no enable
SR latch with enable
D latch
files
Day 5
After discovering that an SR latch is possible yesterday, I started to work on a version that doesn't use an IC but rather transistors. I knew that an SR latch uses of NOR gates, so my thought process was: make two NOR gates with transistors, then connect the output of each gate to the base of one of the other gate's transistor. That was practically hopeless, I felt defeated. I searched up how to make an SR latch using transistors, it was very different to what I imagined. I saw the resemblance but barely.
I've come to the realization that the way you think about electronics (like the way you combine things and solve problems) is vastly different to the way you think about programming. (comparing because it was what I've been doing as a hobby for a few years on and off) I kinda feel clueless. Despite this, I'll try significantly slowing down the pace of learning electronics to preserve my mind. However, I'll still try to do learn something at least somewhat significant everyday.
My goal tomorrow is to make a D latch with an IC, maybe try to make it with transistors but I'd be getting ahead of myself since that's the goal of Day 6.
working SR latch
what I thought would work
files
Day 4
Started off by watching Ben Eater's video on a set-reset latch. I tried to make his first circuit based on the logic but failed, I got to the point where I replicated it one-for-one and it still didn't work. That weirded me out, but I just skipped to the part where he made the SR latch. The same thing happen, I replicated it one-for-one and still didn't work. I thought that there may be a bug, but I couldn't really tell tbh. That kinda made me down, I took a break.
It was as I'm writing this that I remembered that CRUMB has guides, I thought there may be a guide for an SR latch there. Sure enough, there was one, and it worked, I even did it in another workspace and it still worked, I have no excuse for lazing around anymore so the journey continues tomorrow!
p.s. nothing relevant made by me today so no files
Day 3
Started off the by watching a video that digs a little bit deeper on electronic components (resistors, capacitors, diodes, transistors) just to gain more foundational knowledge. You see, it wasn't up until this day that I remembered, LED stands for "light emitting diodes". They're diodes... which are directional... and I was putting LEDs these past few days without ever thinking of where the positive and negative ends are located... and wondering why it wouldn't work or would work weirdly... and blaming the simulator... :)
Anyway, I fixed up the logic gates I previously made improperly and made new ones. (NOR, NAND, XNOR) NOR was just an OR gate hooked up to an inverter, NAND just had an added jumper to ground rather than a whole inverter, and XNOR was kind of like !(!(A AND B) AND (A OR B)) but not really... (I still don't understand XNOR fully)
First thing on the agenda tomorrow is getting a set-reset latch working. Then maybe starting to work on a 4-bit adder? idk tbh
fixed AND
fixed OR
NOR
NAND
XNOR (WIP)
files
Day 2
I came across kerbo's videos while searching through YouTube for CRUMB stuff. I watched his video on transistor circuits and made a simple delay timer. I tried making a set-reset latch but couldn't get it to work so I just continued to Making logic gates from transistors by Ben Eater to actually build some foundation on my knowledge and made an XOR gate among other (simpler) gates at the end of the day.
Delay Timer
Weird AND gate, wouldn't work when LED is connected to only the right transistor and positive rail
XOR gate which was kinda cool for me because I organized it myself
I excluded showing other stuff (AND, NOT, OR) since I'd think they're kind of self-explanatory for you guys.
p.s. I know, I posted two days in one day. I only came up with the idea now on day 2 so :|
Edit: Here's the project files
Day 1
Didn't really learn anything big. Just learnt how to use usual stuff like a breadboard, power rails, power supply, transistors, cables, resistors, LED, switches, and notations. Took me the whole day to play around and get used to it.