Stamp BS2 Testing
paradigm
Posts: 3
Hello, I am new here. I teach the use of microcontrollers and use the Stamp BS2 for an introduction. There is a requirement to quickly and easily test that Stamps are functional and have not been damaged. The most important thing is to check that all the I/O lines are functional as they are the most prone to be damaged by students! Can anyone direct me to any work that may have already been done on an automated test system? I have no aversion to starting from scratch and rigging up a PIC based test system but wonder if there is already a clever solution around?
Thanks,
paradigm
Thanks,
paradigm
Comments
http://forums.parallax.com/showthread.php?t=107510&highlight=stamp+tester
Humanoido
Regards,
paradigm
a:for b0=0 to 15
toggle b0
next
pause 1000
goto a
Using Google, I found complete plans for the BASIC Stamp tester on the Parallax web site.
http://www.parallax.com/tabid/799/Default.aspx
and there's even a usage tutorial for it here
http://www.parallax.com/tabid/800/Default.aspx
You can also access Chris Savage's BASIC Stamp tester project page with all downloads and details at his excellent web site found here:
http://www.savagecircuits.com/forums/content.php?174-BASIC-Stamp-Tester-Usage-Tutorial
This should keep you busy for a while.
Humanoido
One thing that can happen when a Stamp is abused is that either the source or the sink transistor can burn out, so that it can no longer go one state or the other, or the bond wire has burnt out, so that the pin can't do anything, or there has been internal metal migration that increases the input leakage current dramatically. As you know, i/o burnout is the most likely damage in the classroom! Some the Stamp boards (the homework board comes to mind) have series resistors permanently installed on the pins to forestall at least some inadvertent damage. There are some things the test can't detect, such as a weakened pin. Another thing that the program can flag as an error is excessive leakage between the pins that might be caused, say, by a student spilling a Coke on board. Now that could never happen, right?
Sid Weaver (NEWZED) RIP, was an active member here who sold a stamp tester for a long time, and there was quite a long discussion about it back when the list was hosted on Yahoo Groups. That uses a ring of resistor/capacitors. A measurement is made of RCTIME for charge up from zero and also time for discharge down from Vcc. In that way it at one swoop tests the ability of each pin to be an output LOW, or HIGH, or an input. Humanoido just pointed out that technique.
It looks like a virtual software box could test the Stamp for many things, pins, cpu, eeprom, timing, math, program, and other functions. Perhaps many of these routines singularly already exist and are just waiting for use.
Humanoido
http://forums.parallaxinc.com/forums/default.aspx?f=21&m=302780
Humanoido
I have used Microchip PICs (16F and 18F series) for class exercises over many years with a very low rate of failed chips. I am somewhat surprised by the relatively high rate of damage to The Stamp BS2 modules (which are PIC based). However, I did note that the BS2 is based on the older 16C range PIC. Might this be more susceptible to port line damage? The present failures do not seem to be due to static discharge but more related to student mis-treatment!
I hope you don't mind, but I corrected the error I got with the "IF...THEN DEBUG" command where a label was expected instead of DEBUG; and to avoid a blank screen when no errors are detected, I also added some debug output with test results...
This gave me the following debug display:
test1= 1010101010101010
test2= 0101010101010101
No Errors Detected
Thanks again,
-Brian
I have revised it, and added a flag to keep track of errors and only report none if none are detected. Also fixed another small glitch that I believe would have caused the error messages to repeat. Sorry about that, and hopefully the following one will work correctly. Maybe someone with a broken stamp can test it.
I guess programs are never done, they just keep getting better.