From: Michael R. Kesti on
Grant Edwards wrote:

>On 2006-09-29, Fred Bartoli <fred._canxxxel_this_bartoli(a)RemoveThatAlso_free.fr_AndThisToo> wrote:
>> Mark McDougall a ?crit :
>><snipped>
>>> 4. Masochistic tendencies. Debugging real-time multi-threaded apps using
>>> a single LED and a CRO is not unheard of! ;)
>>>
>> Morse code?
>
>Yes, it's been done.

It was'nt Morse, but I've been known to output a state machine's state index
using two output pins. At the state machine's entry point one output was
toggled to generate a sync pulse and then the other output was toggled after
a number of times equal to the state variable. A dual-trace 'scope monitoring
the outputs and triggered by the the sync pulse displayed the state variable
quite nicely!

--
========================================================================
Michael Kesti | "And like, one and one don't make
| two, one and one make one."
mrkesti at hotmail dot com | - The Who, Bargain
From: CBFalconer on
"Michael R. Kesti" wrote:
> Grant Edwards wrote:
>> Fred Bartoli wrote:
>>> Mark McDougall a ?crit :
>>><snipped>
>>>> 4. Masochistic tendencies. Debugging real-time multi-threaded
>>>> apps using a single LED and a CRO is not unheard of! ;)
>>>>
>>> Morse code?
>>
>> Yes, it's been done.
>
> It was'nt Morse, but I've been known to output a state machine's
> state index using two output pins. At the state machine's entry
> point one output was toggled to generate a sync pulse and then the
> other output was toggled after a number of times equal to the state
> variable. A dual-trace 'scope monitoring the outputs and triggered
> by the the sync pulse displayed the state variable quite nicely!

You can improve that to a single pin by emulating a UART. Emit a
long start pulse, followed by the binary describing the state, and
a long stop pulse. As long as the scope sweep is long compared to
the complete signal, less the stop pulse, you should easily
maintain sync. This assumes you can control the pulse lengths
reasonably well so that the bits are well delimited by the scope
reticule. Probably not reasonable for over 20 bits of state info.
You could even make the start pulse considerably shorter than the
bit times.

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>


From: Michael R. Kesti on
CBFalconer wrote:

>"Michael R. Kesti" wrote:
>
>> It was'nt Morse, but I've been known to output a state machine's
>> state index using two output pins. At the state machine's entry
>> point one output was toggled to generate a sync pulse and then the
>> other output was toggled after a number of times equal to the state
>> variable. A dual-trace 'scope monitoring the outputs and triggered
>> by the the sync pulse displayed the state variable quite nicely!
>
>You can improve that to a single pin by emulating a UART. Emit a
>long start pulse, followed by the binary describing the state, and
>a long stop pulse. As long as the scope sweep is long compared to
>the complete signal, less the stop pulse, you should easily
>maintain sync. This assumes you can control the pulse lengths
>reasonably well so that the bits are well delimited by the scope
>reticule. Probably not reasonable for over 20 bits of state info.
>You could even make the start pulse considerably shorter than the
>bit times.

That's an improvement in terms of pin count, but is more complex to code
and consumes more execution time, too. Always remember and never forget
that there are ALWAYS tradeoffs!

--
========================================================================
Michael Kesti | "And like, one and one don't make
| two, one and one make one."
mrkesti at hotmail dot com | - The Who, Bargain
From: Charles Marslett on
On Sat, 30 Sep 2006 09:55:21 +1200, Jim Granville
<no.spam(a)designtools.maps.co.nz> wrote:

>Mike Silva wrote:
>> Jim Granville wrote:
>>
>>>...Or if 8 bits in a 3mm package scares you a little, this alternative
>>>http://www.zilog.com/docs/zneo/FL0121.pdf
>>>
>>>gives you 16 x 32 bit register CPU. Large PCB+Compiler ToolChain and In
>>>System Debug, is <$50.
>>
>>
>> Jim, your posts on this board have talked me into getting one myself.
>> Never hurts to play around with another device family.
>
>Let us know how you get on. I have not got my hands on one yet, but
>I'm tempted to give one to my son. Appeal is the low price, and ALL docs
>and Tools come from one company. Caution is, it is new silicon, but for
>teaching that's not such an issue. [for work, I'll stick with 8051,
>until an app screams for more crunch-power :)]
>
>-jg

And I would recommend the TI MSP-430 USB key. You can carry it around
in your pocket, comes with an debugging system, tool chain and a "sort
of" 16-bit processor with 8 I/O pins. For $15 if you sign up for
their contest or whatever it is.

As someone else mentioned about TI processors, you get all the
documentation you could want (lots of sample code, processor docs,
etc.) from TI, but it is TI documentation. You get to read it and
re-read it....

--Charles
From: Mike Silva on

CBFalconer wrote:

> You can improve that to a single pin by emulating a UART. Emit a
> long start pulse, followed by the binary describing the state, and
> a long stop pulse. As long as the scope sweep is long compared to
> the complete signal, less the stop pulse, you should easily
> maintain sync. This assumes you can control the pulse lengths
> reasonably well so that the bits are well delimited by the scope
> reticule. Probably not reasonable for over 20 bits of state info.
> You could even make the start pulse considerably shorter than the
> bit times.

Just thinking out loud here, but for viewing state on a scope I'd like
to see bit starting point clearly identified. Something like 3/4 on
and 1/4 off for a '1', and 1/4 on, 3/4 off for a '0'. That way every
rising edge is the start of a new bit.

There are lots of useful debugging things you can do with a single bit
and a scope.

First  |  Prev  | 
Pages: 1 2 3 4
Prev: SC16IS752 anyone?
Next: PIC vs AVR vs ARM