Electronic Projects, forums and more.

Go Back   Electronic Circuits Projects Diagrams Free > Electronics Forums > Electronic Projects Design/Ideas/Reviews


Electronic Projects Design/Ideas/Reviews Are you building an electronic project or want to? Maybe you need some assistance? Come and submit your electronic questions here and let our experienced members find a solution.

Reply
 
Thread Tools Display Modes
Old 26th May 2004, 09:27 AM   (permalink)
Default

Thanks Exo!

But i still have some questions.

How am i going to detect the start pulse? And how am i going to ignore the stop bit? :?

A timer circuit can be controlled to generate a desired number of pulses?! :shock: (eg. 8 pulses) All this while i though it can only used to generate a continuous pulse train. If can, can you provide me that timer circuit? Please... :cry:

There is one thing i really want to be very sure. Its about the output of SIPO shift register. i know what are you talking about but i need to know how to extract the correct parallel bits. :?:

Is it there is a 'special' circuit behind the SIPO shift register before we can take the final parallel bits? :idea:

For example, if i had a serial bits of 10110000, where the leading 1 is MSB, going into the SIPO shift register. After 8 pulses, the output will be at the correct parallel bits, right? But before those 8 pulses, how am i going to managed all those 'incorrect' parallel bits? I think there should be a 'special' circuit behind the SIPO shift register that block all those incorrect bits, right? So that what we get at last is the correct parallel bits. Agree?
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 26th May 2004, 10:38 AM   (permalink)
Default

Quote:
Originally Posted by cwt
Thanks Exo!

But i still have some questions.

How am i going to detect the start pulse? And how am i going to ignore the stop bit?
It's the first bit that comes in after a pause. between every byte sent there is a little pause wich is detectable.

Quote:
Originally Posted by cwt
A timer circuit can be controlled to generate a desired number of pulses?! :shock: (eg. 8 pulses) All this while i though it can only used to generate a continuous pulse train. If can, can you provide me that timer circuit? Please... :cry:
Of course a timer can be constructed to generate 8 clocks and then stop, It's just adding some more logic chips to the pile you're already going to need. I don't have a circuit handy, I would need to design one and i don't have time for that, I use pic's to do things like this would solve the entire circuit in 1 day...

Quote:
Originally Posted by cwt
There is one thing i really want to be very sure. Its about the output of SIPO shift register. i know what are you talking about but i need to know how to extract the correct parallel bits. :?:

Is it there is a 'special' circuit behind the SIPO shift register before we can take the final parallel bits? :idea:

For example, if i had a serial bits of 10110000, where the leading 1 is MSB, going into the SIPO shift register. After 8 pulses, the output will be at the correct parallel bits, right? But before those 8 pulses, how am i going to managed all those 'incorrect' parallel bits? I think there should be a 'special' circuit behind the SIPO shift register that block all those incorrect bits, right? So that what we get at last is the correct parallel bits. Agree?
If your timer circuit starts clocking 8 times right after the startbit and then stops then your shift register will have read the 8 databits, no incorrect bits will be read...
Exo is offline  
Reply With Quote
Old 26th May 2004, 05:50 PM   (permalink)
Default

[Exo wrote]If your timer circuit starts clocking 8 times right after the startbit and then stops then your shift register will have read the 8 databits, no incorrect bits will be read...[/quote]

Erm..what i need to know is the output of the serial shift register. :?
How am i going to take the correct parallel bits out of the serial data? :?:

If 1011 0110 --> going into the shift register,
At first clock pulse, the SIPO output will be 0xxx xxxx.(where x is an unknow state)
At second clock pulse, parallel output is 10xx xxxx.
At third clock pulse, parallel output is 110x xxxx.
At fourth clock pulse, parallel output is 0110 xxxx.
.....
.....
At eighth clock pulse, parallel output is 1011 0110.

Agree with those?? :roll:

So if i want to make 1011 0110 parallel output available at the dot matrix array, what should i do to prevent those previous 7 incorrect parallel bits from entering the dot matrix column? Is it there should be a 'special' circuit that only allow the correct parallel bits to go through?? Will a D latch do the job?

I apologise if i have offended you. :cry: ops:
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 26th May 2004, 09:59 PM   (permalink)
Default

Quote:
Originally Posted by cwt
I have some questions to ask about parallel out serial shift register.

If i am going to input a serial data (eg. 10110, where the leading 1 is a MSB and the last 0 is a LSB, into a SIPO shift register) how am i going to take the equivalent output from each of the output pins (eg. D0 = 0, D1 = 1, D2 = 1, D3 = 0, D4 = 1)?:roll:

How am i going to design a circuit to make sure that i extract the right parallel bits?? :?
parallel port may be a lot easyer you have plenty of i/o pins if you use the full parallel interface, the normal pc register for the data port (D0-D7) is 0378H the other two are 0378H +1 & +2

blue pins are output red are input
you can get a dll to allow port acces for visual basic under most operating systems
set your data on port D0-D7 pulse the strobe pin (C0) to tell your circuit that 8 bits are ready to be moved into the latchyou could then pull down S7 to tell the pc to send the next byte
Attached Images
File Type: gif pinout_938.gif (6.4 KB, 546 views)
__________________
There Are 10 Types Of People, Those That Understand binary And Those That Don\'t
p3t3rv is offline  
Reply With Quote
Old 26th May 2004, 10:28 PM   (permalink)
Default

Quote:
Originally Posted by cwt
Quote:
Originally Posted by Exo
If your timer circuit starts clocking 8 times right after the startbit and then stops then your shift register will have read the 8 databits, no incorrect bits will be read...
Erm..what i need to know is the output of the serial shift register. :?
How am i going to take the correct parallel bits out of the serial data? :?:

If 1011 0110 --> going into the shift register,
At first clock pulse, the SIPO output will be 0xxx xxxx.(where x is an unknow state)
At second clock pulse, parallel output is 10xx xxxx.
At third clock pulse, parallel output is 110x xxxx.
At fourth clock pulse, parallel output is 0110 xxxx.
.....
.....
At eighth clock pulse, parallel output is 1011 0110.

Agree with those?? :roll:

So if i want to make 1011 0110 parallel output available at the dot matrix array, what should i do to prevent those previous 7 incorrect parallel bits from entering the dot matrix column? Is it there should be a 'special' circuit that only allow the correct parallel bits to go through?? Will a D latch do the job?

I apologise if i have offended you. :cry: ops:
Well, the 8 leds of the column you are driving any moment have one side connected to the 8 outputs of the shift register, the other sides of the 8 leds are all connected togheter as a 'common'. when you are clocking the data in on the shift register you don't drive this 'common' so the leds will not light, once you've got your 8 databits you turn the 'common' on and the leds will show the pattern.

It's a common multiplexing technique, when done fast enough it seems like a steady image...

I'm curious, how are you going to write the software for this?

and indeed, like p3t3rv said, have you considered the parallel port? it's a lot easyer...
Exo is offline  
Reply With Quote
Old 27th May 2004, 08:23 AM   (permalink)
Default

Thanks p3t3rv! Thanks for your suggestion..
Arigato!!
Thankx Exo...now i know what you mean! :lol:
I apologise for what i did to you..~sorry~

You know why i am not switching to parallel ports?
Because i find it fun to construct in serial communication.
As a student, i hope to learn more.
Another reason is my supervisor ask me to do it in serial communication.
Hope you all dont mind.. ops: ops:
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 28th May 2004, 07:23 PM   (permalink)
Default

Hi..now i am at the stage of shifting bits column-by column in the dot matrix array. Now i need a driver to drive those task. Is there any suitable driver to recommend?

I am using a 8x8 dot matrix array.
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 4th June 2004, 05:24 AM   (permalink)
Default

Hi..
I have something to ask about the MAX232 chip. ops:

What is the capacitors used for in the MAX232 chip?

How to select the value of capacitors?

*I am using the MAX232 output to drive some ICs.
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 4th June 2004, 05:53 AM   (permalink)
Default

Quote:
Originally Posted by cwt
Hi..
I have something to ask about the MAX232 chip. ops:

What is the capacitors used for in the MAX232 chip?
They are used in charge pump circuits to generate the +10V and -10V supplies.

Quote:
How to select the value of capacitors?
Use the values off the datasheet, or if you like, look at my RS232 tutorial hardware, where I got the values off the datasheet.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Reply With Quote
Old 4th June 2004, 12:41 PM   (permalink)
Default

why would you need a max232? You only receive from the pc don't you? you dont send anything back...

A simple resistor and diode (to clamp it to 5V) would do...
Exo is offline  
Reply With Quote
Old 5th June 2004, 02:04 PM   (permalink)
Default

Thx Exo...that sounds interesting. :roll:
However, i already bought the chip and is ready to be implemented..so..i'll stick to MAX232.
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 6th June 2004, 04:47 PM   (permalink)
Default

http://www.qsl.net/yo5ofh/hobby%20ci...r_circuits.htm

This may be of interest to you...
Exo is offline  
Reply With Quote
Old 13th June 2004, 07:53 AM   (permalink)
Default

Hi out there... :lol:
I have something to ask about my programming stuff. Currently i am using visual basic 6.0 to do my programming.

What i want is like that:

Base on an ASCII character, my program will able to find the pattern that represent the character and display it on the dot matrix array.

How am i going to store all the patterns for each of the ASCII character? :?:
Eg. for the character 'A', the equivalent display pattern is [c1,b7,77,b7,c1].
*Note: all display pattern is in hex.

How am i going to retreive the pattern for each ASCII character? :?:
Eg. for the character 'A', the display pattern [c1,b7,77,b7,c1] will be send out to the dot matrix array.

Thanks!! :wink:
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Old 13th June 2004, 10:43 AM   (permalink)
Default

Create a 2 dimensional array and load it with your hex values

Code:
Dim HexData(X, Y) as integer     'where X is the amount of characters and Y is the number of hex bytes per character
Exo is offline  
Reply With Quote
Old 14th June 2004, 02:34 PM   (permalink)
Default

Hi...

Is A (a string type) has the same value as A (a hex type)?

Let say A has the character pattern of [c1,b7,77,b7,c1], how am i going to send those patterns out as hex values?
__________________
I already give my best, i have no regret at all.
cwt is offline  
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes




All times are GMT. The time now is 09:33 PM.


Electronic Circuits  |  Electronics Wiki
Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.