the basic stamp 2 the robotic arm cs 445 hunter lloyd ... · the basic stamp 2 serial signal...
TRANSCRIPT
The BASIC Stamp 2and
The Robotic Arm
CS 445 Hunter Lloyd
Montana State University
The BASIC Stamp 2Serial SignalConditioningConditions voltagesignals between PC serialconnection (+/- 12V) and BASIC Stamp (5V)
Interpreter ChipReads the BASIC program from the EEPROM and executes the instructions.
EEPROMStores the tokenized PBASIC program.
5V RegulatorRegulates voltageto 5V with a supply of 5.5VDC to 15VDC
1. Microcontroller (PIC16C57) – Brains of the system, provides BASICinterpreter, serial communication, and I/O.
2. Memory (EEPROM) – User program storage and long term datastorage.
3. Voltage Regulator – Generates 5Vdc from supply power of 5.5Vdcto 15Vdc.
4. Clock – 20MHz resonator.
5. Miscellaneous Support Components – 4v brown out detector, transistors, and resistors.
BASIC Stamp 2 (BS2)
The BASIC Stamp 2 (BS2) is an embedded system that includes:
BASIC Stamp 2 microcontroller
PIC16C57 8-bit CMOS MicrocontrollerRISC CPU (only 33 single word, single cycle instructions)28 pin, DIP12 bit wide instructions8 bit wide data8 bit clock counter72 bytes of RAM1 watch dog timer
16 I/O pins + 2 dedicated serial2K EEPROM/ROM
See http://www.microchip.com
BASIC Stamp Pin Descriptions
BASIC Stamp 2 microcontroller - 2
PIC16C57 16 I/O pins + 2 dedicated serial2K EEPROM/ROM72 bytes of RAM on PIC
Only 26 bytes available
20 MHz clock, 4000 instructions per second20 mA current (source) limit at each pin (25 mA sink limit)
Caution!PIC16F84-F = flash memory (a type of EEPROM)
BASIC Stamp 2 Memory
Memory (space for code)2K Bytes500 lines of code
Speed20 MHz4000 instructions/second
RAM (space for storing variables)26 BytesREG0 – REG12 are 16-bit registers
208 1-bit variables (Bits)52 4-bit variables (Nibbles)26 8-bit variables (Bytes)13 16-bit variables (Words)
ProgramStored in EEPROM memory
+6 bytes for storing I/O
• Vss (System ground) – Any external circuitry connected to the BS2must have a common ground with the BS2.
• P0-P15 (general purpose I/O) – Maximum current limits for I/O pinsmust be obeyed.
• Vdd (5Vdc supply) – If user has 5Vdc available, connect it to this pin.
• Vin (5.5Vdc-15Vdc supply) – If user has 5.5-15Vdc, connect it to thispin. Note that the onboard regulator will step this down to 5Vdc foruse by the BS2 circuitry. MAKE SURE THIS 5Vdc IS NOT USED BYEXTERNAL CIRCUITRY OR DAMAGE TO THE bs2 WILL OCCUR.
IMPORTANT: PIN CHARACTERISTICS
• Static sensitive device, use grounded wrist strap or touch a groundedsurface before handling the BS2.
• Verify power is off before connecting and disconnecting the BS2 andany external circuitry.
• Verify BS2 orientation before inserting it into the carrier board.
• Do not overdrive I/O pins, abide by maximum limits.
• If using an unregulated supply (5.5-15Vdc), do not drive externalcircuitry with the regulated 5Vdc generated by the BS2.
Precautions
• Communicate with the BS2 via the USB (RS232).
• Download program from PC to BS2, cannot upload aprogram that is already in the BS2.
• Can upload data from the BS2 to the PC using the DEBUG command. It will print out variables, Strings orwhatever you need to debug.
PC to BASIC Stamp 2
RAM:- storage of program variables- losses contents at power down- 32 bytes available
6 – I/O pin status26 – general purpose use
EEPROM:- 2K bytes, ~500 instructions- program storage- long term data storage- retains data at power down
Memory Configuration
Mouse VAR BIT ‘variable can be 0 thru 1Cat VAR NIB ‘variable can be 0 thru 15Dog VAR BYTE ‘variable can be 0 thru 255Rhino VAR WORD ‘variable can be 0 thru 65535
Horse VAR Rhino.BIT9 ‘bit 9 of RhinoCow VAR Rhino.HIGHBYTE ‘highest 8 bit of
Rhino
Constant Definition
Cheers CON 5
Variable Definition
1 Decimal
$1A6 Hex
%1011 Binary
LetterA CON “A” ‘ASCII code for A (65)Cheers CON 3 ‘decimalHex128 CON $80 ‘hexFewBits CON %1101 ‘binary
Examples:
Number Representation
- Addition and Subtraction, order is not important
12+7-3+22=3822-3+12+7=38
- Multiplication and Division, order is important
12+3*2/4=7 **2*12/4+3=9
- Note that the BS2 performs integer math only, as shown in **30/4=7 not 7.5
- BS2 solves equations in the order they are written, left to right
- Use parenthesis to change order of evaluation
12+((3*2)/4)=13
Mathematical Expressions
http://www.parallax.com http://groups.yahoo.com/group/basicstamps/
BASIC Stamp 2 Commands
BASIC Stamp 2 Commands
BASIC Stamp 2 Commands
units in Variable – 2 microsecondsmaximum pulse width – 131.07milliseconds
units in Period – 2 microsecondsmaximum pulse width – 131.07milliseconds
units in Cycle – 1millisecondAverage voltage – avg. volt.=(Duty/255)*5Required charge time – 4*R*C