Kronos Robotics and Electronics
Site Map
 
Home Zeus Projects App Notes Downloads Dios Athena Forums
 

Build an Athena Logic probe

New and Improved

By Michael Simpson

 

A little while back I presented a couple of logic probe projects that used the Athena or Dios to create a logic probe.  While they were great projects for learning the Athena or Dios language they were not the best logic probes.

A good logic probe must indicate the following states:

  • High state - LED will shine bright

  • Low state - LED will shine dim

  • No signal - LED will not be lit

  • Pulse - LED will flash.

While the original logic probes presented all the above states they had fundamental flaw.   In order to test for a no signal state the probe placed a high and low pulse on the probe lead then attempted to measure the pulse.  The problem is that this pulse would be transmitted to the device being tested.  This is how most microcontroller based logic probes work.

 

The Athena line of products contain 2 comparators that can be used to create a high speed passive logic probe.  All that is needed is a few resistors and an LED.  You can even add an optional piezo element for audio feedback.

 

The Circuits

Schematic 1

Schematic 1 is for Athena and Nemesis controllers.  You can connect a piezo between port 14 and Gnd if you want an audio beep each time the state changes.

 

Schematic 2

Schematic 2 is for Perseus controller.  You can connect a piezo between port 10 and Gnd if you want an audio beep each time the state changes.

 

Programs

On the Athena and Nemesis bit 6 on the PIR1 register will be set when there is a change on the output of ether comparator.  We poll for this change then set the hardware pwm generator so the led is set accordingly.  On the Perseus the bits 4 and 5 will be set depending on which comparator changes.

The Perseus does not have a hardware PWM generator.  So we have to create our own to dim the LED when needed. 

 

Athena Program (download it here)

Athena
'Athena Logic Prob

   hwpwm 0,255,0
   output 6
   output 14

   dim dat

   CMCON = 4
   gosub gotchange


loop:
   if PIR1 & 64 = 64 then
      gosub gotchange
      PIR1 = 0
   endif
   goto loop

gotchange:
   gosub blink
   dat = CMCON & 192 / 64
   branch dat,none,tlow,thigh
   return

none:
   hwpwm 0,255,0
   return

tlow:
   hwpwm 0,255,30
   return

thigh:
   hwpwm 0,255,255
   return

blink:
   hwpwm 0,255,0
   signal 14,10,25
   hwpwm 0,255,255
   pause 25
   hwpwm 0,255,0
   return

 

Nemesis Program (download it here)

Nemesis
'Nemesis Logic Prob

   hwpwm 0,255,0
   output 6
   output 14

   dim dat

   CMCON = 4
   gosub gotchange


loop:
   if PIR2 & 64 = 64 then
      gosub gotchange
      PIR2 = 0
   endif
   goto loop

gotchange:
   gosub blink
   dat = CMCON & 192 / 64
   branch dat,none,tlow,thigh
   return

none:
   hwpwm 0,255,0
   return

tlow:
   hwpwm 0,255,30
   return

thigh:
   hwpwm 0,255,255
   return

blink:
   hwpwm 0,255,0
   signal 14,10,25
   hwpwm 0,255,255
   pause 25
   hwpwm 0,255,0
   return

 

Perseus Program (download it here)

Perseus
'perseus Logic Prob

   RCSTA=0
   output 8
   output 10
   output 5
   low 5

   dim dat,tcount,level

   CMCON0 = 4
   level = 0
mainloop:
   tcount = 0

   if level > 0 then
      high 8
      endif
loop:

   if PIR1 & 24 > 0 then
      gosub gotchange
      PIR1 = 0
     goto mainloop
     endif
   tcount = tcount + 1
   if tcount > level then
     low 8
     endif
   if tcount > 20 then
      tcount = 0
      goto mainloop
      endif
   goto loop



gotchange:
   gosub blink
   dat = CMCON0 & 192 / 64
   branch dat,none,tlow,thigh
   return

none:
  level = 0
  return

tlow:
  level = 1
  return

thigh:
  level = 30
  return

blink:
  high 8
  signal 10,10,25
  low 8
  pause 25
  high 8
  return
 

The Perseus Carrier is very easy to use to create a simple breadboard logic probe.  Only a single jumper is needed to connect ports 0 and 4.

 

Parts

 

 

Athena

Athena Carrier 1

Perseus

Perseus Carrier 1

 

Easy RS232 Driver  

7.5V AC Adapter

9 Pin Cable

Breadboard and Wire Kit

 

 

Copyright © 2001 - 2007 Kronos Robotics