Ben Eater hasn't made videos in a while and, surprisingly, he releases a video this weekend on building a serial interface. LOL. One of my favorite topics and I get TWO of them in just a few days. Sweet....
Nice shout outs to some of my other favourite channels. I spent the weekend debugging a microcontroller UART so great timing there from Ben and yourself ;)
Very nice video George. I suspect you have an off-by-one error in your baud clock divider. The intended baud rate was 115,200 baud (4,500,000 / 39) What you got on the scope was actually 112,600 baud (4,500,000 / 40) The error is possibly because the counter is couing 39...0 then reloading synchronously, which is actually a division by 40. Try setting the counter parallel load input to 38 and see if this fixes it. (Even at 112,500 baud (2.5% slow) it still works because because the slippage the whole character is ~25% of a bit time.) Dave
Thanks Dave, yes I realised that might be the case, and I meant to put a caption up while editing, but forgot! Still, it's close enough! I also kept mentally forgetting whether it was meant to be 115200 or 112500... oops!
Yes, indeed - there's no hardware buffering so I will need to wait either before or after sending the character. I've considered using a counter to let the CPU poll for an empty buffer, and it might mean that I no longer need the flip flop. But just delaying a bit is simplest, and simple is the goal here.
This is a really interesting project. I assumed you were going to hook it upto to a PC. I've looked at the Debug innovations terminal a few times, but honestly I found the schematics a little tricky to follow!
@@GeorgeFoot it's a nice website. Although often a little slow. I'm tempted to build this circut for my Z80 computer, I'm sick of burning eeproms for testing code. I imagine going the other way won't be too tricky, I keep meaning to make James Sherman's version.
Ben Eater hasn't made videos in a while and, surprisingly, he releases a video this weekend on building a serial interface. LOL. One of my favorite topics and I get TWO of them in just a few days. Sweet....
Yes that was a bit of a surprise! Luckily it's not exactly the same content though!
Simple and elegant design George. Very nice to see a video where the solution isn't just slapping an arduino on the bus!
Haha, I nearly did that. It's the kind of thing I'd be willing to compromise on if it was just a debugging interface!
Nice shout outs to some of my other favourite channels. I spent the weekend debugging a microcontroller UART so great timing there from Ben and yourself ;)
I hope your debugging went well!
@@GeorgeFoot hmmmmm..... not yet.
Nice one, George!
Very nice video George.
I suspect you have an off-by-one error in your baud clock divider.
The intended baud rate was 115,200 baud (4,500,000 / 39)
What you got on the scope was actually 112,600 baud (4,500,000 / 40)
The error is possibly because the counter is couing 39...0 then reloading synchronously, which is actually a division by 40. Try setting the counter parallel load input to 38 and see if this fixes it.
(Even at 112,500 baud (2.5% slow) it still works because because the slippage the whole character is ~25% of a bit time.)
Dave
Thanks Dave, yes I realised that might be the case, and I meant to put a caption up while editing, but forgot! Still, it's close enough! I also kept mentally forgetting whether it was meant to be 115200 or 112500... oops!
If the serial is still being sent, you must prevent a new letter from being inserted.
Either you wait 400 clocks or you make a busy signal.
Yes, indeed - there's no hardware buffering so I will need to wait either before or after sending the character. I've considered using a counter to let the CPU poll for an empty buffer, and it might mean that I no longer need the flip flop. But just delaying a bit is simplest, and simple is the goal here.
Hope you're ok wherever you are. Just realised you haven't uploaded in 8 months :)
Neat.
Can you Kickstarter this project?
This is a really interesting project. I assumed you were going to hook it upto to a PC. I've looked at the Debug innovations terminal a few times, but honestly I found the schematics a little tricky to follow!
If you browse the website, he has a really good walkthrough of how it works, that's probably easier to follow than the schematics!
@@GeorgeFoot it's a nice website. Although often a little slow. I'm tempted to build this circut for my Z80 computer, I'm sick of burning eeproms for testing code. I imagine going the other way won't be too tricky, I keep meaning to make James Sherman's version.
Debug why