6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Thu Nov 21, 2024 5:04 pm

All times are UTC




Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Sat Oct 12, 2024 11:48 am 
Deleted.
Sorry for my question


Last edited by boogs on Sat Oct 12, 2024 6:56 pm, edited 2 times in total.

Top
  
Reply with quote  
PostPosted: Sat Oct 12, 2024 4:43 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8543
Location: Southern California
Welcome.

Before I spend any time looking at the code, the first thing I notice in the "schematic" (really more of a netlist written around boxes) is that you don't have DCD or CTS connected.  The transmitter is automatically disabled in CTS is not low, and DCD must be low for the receiver to operate.  I'll go through the source code a little later when I get a chance.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Sat Oct 12, 2024 6:43 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8504
Location: Midwestern USA
boogs wrote:
My mistake. I 've changed first post with updated version.
CTS is connected to ground, and I left DTR unconnected following Ben Eater schematic.

Thanks for your message, I will try to understand starting from this point!

Welcome.

Further to what Garth noted, it is a fairly general rule that inputs to a CMOS device should not be floated.  A floating CMOS input will pick up noise and may cause undefined device behavior that will be difficult to diagnose.  Any exception to this rule will be noted in the device’s data sheet.

In your application, CTS (clear to send), DCD (data carrier detect) and DSR (data set ready) should be grounded for the purposes of proving that your serial I/O is working.  In more general usage, CTS would be connected to the remote device’s RTS (request to send) to implement hardware handshaking for flow-control purposes.  Above 9600 bits-per-second (bpS) data rate, hardware handshaking may be necessary to avoid errors.  At or below 9600 bpS, either software handshaking (called XON/XOFF or DC1/DC3) or no handshaking should be sufficient (I never use XON/XOFF—hardware handshaking is much more trustworthy).  Consulting data sheets will identify cases where flow-control should be implemented.

DCD’s usefulness is most historical, since dial-up modems are not used much these days.  If you were using one, the modem’s carrier-detect output (usually pin 8 on the modem’s DB-25 connector) would be wired to DCD to tell the host when the modem is “off-hook” and linked up with a remote modem.  Most modems will also require a DTR (data terminal ready) signal in order to be able to originate or answer calls.  DTR at the UART would be wired to the modem’s DSR input.  DTR at the modem would be wired to the UART’s DSR.  Regrettably, the WDC data sheet for the 65C51 doesn’t clarify how the UART is affected by DSR, other than that its state is visible as bit 6 in the status register and that when asserted, a IRQ will occur.

Speaking of IRQs, the WDC 65C51 has a hardware defect that prevents the use of the transmitter IRQ.  Worse yet, the transmitter-empty bit in the status register (bit 4) is “stuck”, which complicates transmission.  We have a fairly-lengthy topic on that problem and ways to circumvent it.

GARTHWILSON wrote:
I'll go through the source code a little later when I get a chance.

In your code, I see what appears to be references to a VIA, as well as to the UART.  The code might be easier to follow if you remove the VIA references, unless they are somehow germane to setting up and controlling the UART.  A cursory read of the code made it unclear to me how the VIA fits into the scheme of things.

Regarding the schematic, please post schematics in monochrome for the benefit of members who have color-perception issues.  Color adds nothing to understanding the schematic—if anything, it degrades readability, even for someone with normal vision.

Also, and further to what Garth said, a bunch of rectangles surrounded by net symbols does little to indicate what the circuit does, especially in cases where there are a lot of logic gates.  Most of us try to limit the use of net symbols to where connections extend to a different page, and draw out the common gates as logic symbols, not as generic boxes.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Last edited by BigDumbDinosaur on Sun Oct 13, 2024 1:13 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Sat Oct 12, 2024 6:51 pm 
Thanks for your time you spend for answering to my 3d.
I understand this forum it's too professional for me.


Top
  
Reply with quote  
PostPosted: Sat Oct 12, 2024 7:09 pm 
Offline

Joined: Mon Jan 19, 2004 12:49 pm
Posts: 983
Location: Potsdam, DE
Too professional? No - it is populated by amateurs who delight in designing with and writing code for the 6502 and its relatives. Some of us either have or have had careers in the industry and that will show - there are always in-company rules about how drawings should be drawn and how code should be written, indented, and commented, and in general we will tend to follow those standards.

So if someone suggests that, for example, your drawing might be improved, it's just that: a suggestion that makes it easier for them to help you, by reducing the amount of work they have to do to do it.

It can sound kind of bossy: you WILL draw your drawings THIS way! but it's not; it's providing you with another tool. You don't need to do it, but if you do, you're more likely to get help. 'Netlist' drawings are almost universally disliked: they contain all the information you need to make a circuit board, but generally they tell you nothing about the circuit topology until all the networks are joined up. It's one of those things where _you_ know how everything fits together, but nobody else does :mrgreen:

So hang around a while...

Neil


Top
 Profile  
Reply with quote  
PostPosted: Sat Oct 12, 2024 7:19 pm 
I'm not so skilled to join to this forum.
I will try to solve my problem by myself.


Top
  
Reply with quote  
PostPosted: Sun Oct 13, 2024 12:01 am 
Offline
User avatar

Joined: Fri Dec 12, 2008 10:40 pm
Posts: 1007
Location: Canada
We are here to help. I am not sure what anyone said to get you to delete your question and leave. It seems to me they stepped right up and gave you some good suggestions.

If you cannot understand the information given, let us know and we can try to simplify things.

:shock:

_________________
Bill


Top
 Profile  
Reply with quote  
PostPosted: Sun Oct 13, 2024 1:13 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8504
Location: Midwestern USA
boogs wrote:
I'm not so skilled to join to this forum.
I will try to solve my problem by myself.

Don’t be silly!  As Neil said, we’re all amateurs here.  Some of us have, or had, professional careers in computing, but they mostly weren’t careers that involved the 6502.  This forum is meant for all experimenters who are interested in the 6502 family, regardless of skill level.  Ask whatever questions you need to ask to get your unit running.  All that we ask in return is that you make it reasonably easy for us to understand what you are trying to accomplish.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 27 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: