barnacle wrote:
Anyways: I'm looking to try and work out what's going on with the clock. (As an aside: it's much easier to read a schematic if you choose symbols which reflect the function of the part, rather than the actual pinout as has been done here. Using Vcc and GND symbols rather than looping those connections around the part can also help!)
Yea, I'm still learning how to use EasyEDA (or any software for that matter) to lay this out, and didn't see how to load in the symbols instead of just the parts.
Quote:
That said: it looks as if you've got something interesting going on there, but I'm not at all certain quite what it is. I think that you're using the push buttons to single step - or at least, single clock? - in some circumstances. Could you perhaps explain?
As for how it works:
The 25.175MHz oscillator is feed into a 4-bit counter that I'm using as a clock divider; right now the main circuit is taking it's input from the divide by 2 pin which gives me a clock frequency of around 6.3MHz (which should be in spec for the 65C02 and 65C22). The other bits are used to stop the clock and single step as you figured out. In the physical circuit, the red switch is a manual reset, the green switch selects if I'm using the oscillator clock or the manual clock, and the yellow switch is my manual clock which let's me single step the circuit.
All of that appears to be working quite well.
Quote:
As Jeff pointed out: decoupling capacitors are essential, and while you tell us you've applied some, there are none shown on the circuit diagram. I'd certainly have some around the 1.8MHz oscillator block and the 6551: probably 100nF *close* to each part's power pins. 10nF or 100nF across the power input of *every* chip is a good idea but you probably don't need anything bigger except perhaps where the power comes into the board; sometimes too big doesn't help either.
Yep, they hadn't been drawn into the circuit I have going into EasyEDA yet, but if you look closely there are plenty of little yellow ceramics on the power rails of the breadboards. I've tried to add at least one near the power rail and sometimes also to the ground rails. Again, for the things I suspected might be power hungry I added some beefier 4.7 electrolytics. (There aren't a lot of those though.)
Not everything on the breadboard is on the circuit, such as the LCD which won't end up in my final design. My goal was to get the general circuit working on the breadboard and then see about designing a PCB (perhaps in an ITX or Mini ATX layout so I can put it in a case) and doing additional prototyping either with some edge connectors or some kind of GPIO type cable or something.
Quote:
Kudos for pulling up/down unused inputs (and for indicating unused outputs!) - Open TTL inputs should pull high, but CMOS (HC) inputs don't as a rule, so actively connecting unused inputs is a very good idea.
Thank you. ^^
I had read (or saw in a video) you should keep those from floating so they don't constantly switch back and forth and cause extra noise, so I've tried to be diligent with keep those tied either high or low, even on my breadboards.
Quote:
And let me echo Jeff's comment on breadboards. Personally, I hate 'em and won't use them beyond the most trivial of test circuits. I take the view that PCBs are cheap enough and fast enough to prototype on them, though I appreciate that them might seem a bit daunting at first: the major advantage is that if something doesn't work, either your soldering wasn't up to scratch, or your original circuit diagram was wrong. Particularly with through-hole parts, it's easy to fit a socket and bend a leg out if you need to change a design
I don't blame you. I have a few cheep breadboards and instantly regretted using them; again, I'd like to get a PCB designed up, but wanted to get a pass at a working circuit first so I could have a stable system to design other things for it. (Keyboard, video hardware, anything else I can dream up)