Chris, Measure the time of the smallest pulse and that should be the the baudrate.
Dave Purola,
Chris, Measure the time of the smallest pulse and that should be the the baudrate.
Dave Purola,
Dave Purola,
N8NTA
EN82fn
I'll check it but it's either 2400 or 4800. When I figure out the exact baudrate, how can I decode the data?
did you try all std baud rates from say 300 thru 38000 ? If you cant get to see some type of decernable ascii chars, then you would need to have the mfg info on data.
also, it could be inverted, so you could invert the signal and try the bauds again for readable data.
One thing I'd look at: is the data inverted? That would make you receive garbage all the time. Put a scope on the signal an look. If that's the case, use a 4049 gate to invert the data.
JR
I'm still kind of lost but seem to be making a little progress. I can see that the entire packet takes 20mS to transmit. It's hard to tell where one piece of data ends and the other begins. I can see the data change when I press buttons on the controller but some of the data isn't used for this application. In other words, those bits/bytes are just taking up space but must be included when the packet is transmitted.
Perhaps this will help you guys help me. I concentrated on the ones digit for the home team score. I think it takes 750uS to transmit the ones digit and I based that assumption on when the edge falls to when it rises again at the end. However, some of the data takes about 500uS. Is it safe to assume that it takes 750uS for a byte and maybe 500uS for a bit?
To duplicate the packet (I'm starting with the ones digit), I have the data from the PIC going to the input of a ULN2003A. On the output side I'm using a 10K pullup and then measuring it with the scope. One problem I'm having is that I can't quite get the timing right. I've attached two pictures that show my problem. The first picture is of the source. I'm trying to duplicate what is seen here. In the middle (-250uS from center to +500uS from center) is the number 2.
Here is my attempt to make the number 2. As you can see, I had to adjust the sec/div to 100uS and the second pulse in the number two isn't the same as the source.
Regarding the data being inverted, what is the normal way? High to low or low to high?
I've tried adjusting my settings but nothing seems to help. The relevant settings are:
Code:RCSTA1 = $90 TXSTA1 = $24 DEFINE HSER_BAUD 300 DEFINE HSER_CLROERR 1 ' Clear overflow automatically BAUDCON1 = %00111000 And then I send the data like this: MAINLOOP: HSEROUT [dec 2] PAUSE 100 GOTO MAINLOOP
From the images, I do not think it is an UART transmission. Can you zoom out the source capture a little so that you center the '2' and we can see around it a bit more detail?
I've attached pictures of the PCB, a picture of the #2 zoomed in and a picture of the #2 zoomed out.![]()
Bookmarks