sburrow wrote:
floobydust wrote:
So, I'll still keep my opinion as is... simple and minimal is better for a first project.
I completely agree. I am doing just that. And thank you for your continued support and help. I don't plan on showing y'all anything until I'm super super sure about it. No more "hey look at this". I would like to run it by y'all just before I print a board, and that's it.
Other than that, is it ok if I ask smaller questions along the way? Like here is a question floobydust: Why 3.3K pull-up resistors? Why not 4.7K? Why not 5K? Why not 1K? Yes I could do the math, but the math seems screwy at times. I was working on a little LCD breadboard project a day or two ago, and I used 1K pull-up resistors and it worked great. I've seen different values all over the internet. Some folks even use 10K, for whatever reason. The idea is straightforward enough: Put in a resistor where enough voltage gets through that it still triggers a high-logic state, but when grounded the resistor keeps enough voltage back that it stays in a low-logic state.
Just a smaller question. Most folks on the internet seem to answer: "That's just what I've always done."
Anyways, thank you again for everything, sorry that my small question might be silly. No need to reply if it's too silly.
Chad
Sounds like a plan. However, as you have a breadboard, I would suggest that you divide your project into separate functional blocks and use the breadboard to test them. Functional blocks can be things as simple as the supervisory circuit on power up that provides the proper timing for the Reset signal and the Panic trigger for the NMI signal. Another block would be I/O decode... which you can easily test with some LEDs and a dropping resistor on the output of an I/O or memory select signal. The same goes for qualified read and write signals used by memory devices and non-65xx I/O peripheral devices. Get these functional blocks working so you know how they operate and can feel confident that when used in a complete system they will function as intended.
3.3K... well, not that much of a ground rule, but the general consensus with the newer CMOS processors is to use 3.3K for all pull-ups. Sure, you could spend time calculating slew rates versus signal timings and the capacitive load on each signal (IRQ, NMI, etc.), but it's just easy to go with a 3.3K pull-up and call it done. I've actually run at 10MHz clock speeds with no errors, and I always use IRQ-driven I/O on pretty much all (I/O) devices. BTW - I use LEDs (for indication) which are rated at 1ma active current, so a 3.3K works out perfect as a dropping resistor for these as well.
Lastly... just realize that the number 1 goal is to get something working. Also, once you have a working design, you'll obviously get to a point where you'll ditch it for the next design that has more features/functions and newer and better ideas. It's a journey... not a one-off for all of time.