Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 1 www.parallax.com 599 Menlo Drive Suite 100 Rocklin, CA 95765 Presentation based on: “What’s a Microcontroller?" by Andy Lindsay Presented by Andy.

Similar presentations


Presentation on theme: "Slide 1 www.parallax.com 599 Menlo Drive Suite 100 Rocklin, CA 95765 Presentation based on: “What’s a Microcontroller?" by Andy Lindsay Presented by Andy."— Presentation transcript:

1 Slide 1 www.parallax.com 599 Menlo Drive Suite 100 Rocklin, CA 95765 Presentation based on: “What’s a Microcontroller?" by Andy Lindsay Presented by Andy Lindsay Applications Engineer, Parallax Inc. Education Dept. Parallax Inc. Education Dept.

2 Slide 2 Copyrights and Trademarks This documentation is copyright 2007 by Parallax, Inc. By downloading or obtaining a printed copy of this documentation or software you agree that it is to be used exclusively with Parallax products. Any other uses are not permitted and may represent a violation of Parallax copyrights, legally punishable according to Federal copyright or intellectual property laws. Any duplication of this documentation for commercial uses is expressly prohibited by Parallax, Inc. Duplication for educational use is permitted subject to the following conditions: Parallax grants the user a conditional right to download, duplicate, and distribute this text without Parallax's permission. This right is based on the following conditions: the document, or any portion thereof, may not be duplicated for commercial use; it may be duplicated only for educational purposes when used solely in conjunction with Parallax products, and the user may recover from the student only the cost of duplication. BASIC Stamp, Stamps in Class, and Board of Education are registered trademarks of Parallax, Inc. If you decide to use the names BASIC Stamp, Stamps in Class, and/or Board of Education on your web page or in printed material, you must state that "BASIC Stamp is a registered trademark of Parallax, Inc.," "Stamps in Class is a registered trademark of Parallax, Inc.," and/or "Board of Education is a registered trademark of Parallax, Inc.," respectively, upon the first appearance of the trademark name. Other brand and product names are trademarks or registered trademarks of their respective holders.

3 Slide 3 Stamps In Class Curriculum Cited in Further Investigation Sections

4 Slide 4 Stamps in Class Flowchart www.parallax.com Education  Stamps in Class Flowchart

5 Slide 5 Chapter #1: Getting Started Parallax CD: BASIC Stamp Editor Software  BASIC Stamps  Windows… What’s a Microcontroller Documentation  Educational Curriculum BASIC Stamp Manual Documentation  BASIC Stamp Parallax Website:www.parallax.comwww.parallax.com BASIC Stamp Editor Downloads  BASIC Stamp Software What ’ s a Microcontroller Downloads  Stamps in Class Tutorials BASIC Stamp Manual Documentation  BASIC Stamp Documentation Excerpts from pages 9 and 6

6 Slide 6Introduction How many microcontrollers did you use today? What’s a BASIC Stamp? Excerpts from pages 1, 2, and 13, 14 For the Classroom BASIC Stamp and Board of Education BASIC Stamp HomeWork Board

7 Slide 7Introduction Amazing inventions with the BASIC Stamp Excerpts from pages 3 - 4

8 Slide 8 Chapter #1: Getting Started Write a PBASIC program then download it to the BASIC Stamp Connect serial cable and battery to HomeWork Board Connect serial cable to computer COM port. Excerpts from pages 14-16, 18, 20 Affix rubber feet to the underside of your board.

9 Slide 9 Chapter #1: Getting Started ' What's a Microcontroller - FirstProgram.bs2 ' BASIC Stamp sends message to Debug Terminal. ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "Hello, it's me, your BASIC Stamp!" END Run the BASIC Stamp Editor Software Enter this program Click the ‘Run’ button Click the PBASIC 2.5 button Click the BASIC Stamp 2 Button Excerpts from pages 18-22

10 Slide 10 Chapter #1: Getting Started Click the ‘Run’ button The Debug Terminal appears with a message sent by the BASIC Stamp DEBUG "Hello, it's me…" The command: Causes the BASIC Stamp to send a message to the Computer Excerpts from pages 20, 23

11 Slide 11 Chapter #1: Getting Started ' What's a Microcontroller - FirstProgram.bs2 ' BASIC Stamp sends message to Debug Terminal. ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "Hello, it's me, your BASIC Stamp!" END comment Stamp 2 directive PBASIC 2.5 directive DEBUG command END command Excerpts from pages 20-21, 27-28

12 Slide 12 Chapter 1 Activities

13 Slide 13 LED Test Circuit Parts (1) (1)LED – Green (1) (1)Resistor – 470  (yellow-violet-brown) Chapter #2: Lights on – Lights off Manual Circuit – LED On Manual Circuit – LED Off See What’s a Microcontroller Page 39 for resistor color code information Excerpts from pages 39, 40, 43, 46

14 Slide 14 Chapter #2: Lights on – Lights off BASIC Stamp – LED Circuit Next Step Write a PBASIC Program to make the BASIC Stamp Switch the LED circuit input between Vdd (5 V) and Vss (0 V). Excerpts from pages 47-50 ' {$STAMP BS2} ' {$PBASIC 2.5} DO HIGH 14 PAUSE 250 LOW 14 PAUSE 250 LOOP LedOnOff.bs2

15 Slide 15 Chapter #2: Lights on – Lights off √ Use the same circuit √ Replace DO and LOOP with the segments of code shown here. √ Run your modified program. √ Remember to save your modified program. Excerpts from page 54 LedOnOffTenTimes.bs2 Changing the program to make the LED flash on/off 10 times Before making any changes, save the original program, then save a copy (to be modified) under a new name: ' {$STAMP BS2} ' {$PBASIC 2.5} counter VAR Byte FOR counter = 1 TO 10 DEBUG ? counter HIGH 14 PAUSE 500 LOW 14 PAUSE 500 NEXT DEBUG "All done!" END ' {$STAMP BS2} ' {$PBASIC 2.5} HIGH 14 PAUSE 500 LOW 14 PAUSE 500

16 Slide 16 LED Test Circuit Parts (1) LED – Green (1) LED - Yellow (2) Resistor – 470  (yellow-violet-brown) Chapter #2: Lights on – Lights off BASIC Stamp – LED Circuit (Modified) Next Step - Make both LEDs flash on/off √ Open LedOnOff.bs2 √ Add two lines of code √ Run your modified program. √ Remember to save your modified program under a different name! Use FlashBothLeds.bs2 Excerpts from pages 58-59 FlashBothLeds.bs2 Important: Leave this circuit on your board! This circuit is re-used in the next set of activities. Do not take it apart before building the next circuit. ' {$STAMP BS2} ' {$PBASIC 2.5} DO HIGH 14 HIGH 15 PAUSE 250 LOW 14 LOW 15 PAUSE 250 LOOP HIGH 15 LOW 15

17 Slide 17 Chapter 1 Activities

18 Slide 18Notes

19 Slide 19Notes

20 Slide 20Notes

21 Slide 21 LED Test Circuit Parts (1) Resistor – 220 Ω (red-red-brown) (1) Resistor – 10 kΩ (brown-black-orange) (1) (1)Pushbutton - normally open (2) Jumper wires Chapter #3: Digital Input - Pushbuttons How the Pushbutton Works Pushbutton Circuit Excerpts from pages 72, 76

22 Slide 22 Chapter #3: Digital Input - Pushbuttons ' {$STAMP BS2} ' {$PBASIC 2.5} DO DEBUG ? IN3 PAUSE 250 LOOP How the Circuit and Program Work Excerpt from page 77 - 78 ReadPushbuttonState.bs2 √ Follow instructions with checkmarks on page 78

23 Slide 23 Pushbutton/LED Circuit Parts (1) Pushbutton – normally open (1) Resistor - 10 k Ω (brown-black-orange) (1) LED – any color (1) Resistor – 220 Ω (red-red-brown) (1) Resistor – 470 Ω (yellow-violet-brown) (2) Jumper wires Chapter #3: Digital Input - Pushbuttons Excerpts from pages 80-83 PushbuttonControlledLed.bs2 Pushbutton/LED Circuit ELSE PAUSE 100 ENDIF ' {$STAMP BS2} ' {$PBASIC 2.5} DO HIGH 14 PAUSE 50 LOW 14 PAUSE 50 LOOP DEBUG ? IN3 IF (IN3 = 1) THEN

24 Slide 24 ' {$STAMP BS2} ' {$PBASIC 2.5} DO DEBUG HOME DEBUG ? IN4 DEBUG ? IN3 IF (IN3 = 1) THEN HIGH 14 PAUSE 50 ELSEIF (IN4 = 1) THEN HIGH 15 PAUSE 50 ELSE PAUSE 50 ENDIF LOW 14 LOW 15 PAUSE 50 LOOP Pushbutton/LED Circuit Parts (2) Pushbuttons – normally open (2) Resistors - 10 kΩ (brown-black-orange) (2) Resistors – 470 Ω (yellow-violet-brown) (2) Resistors – 220 Ω (red-red-brown) (2) LEDs – any color Chapter #3: Digital Input - Pushbuttons PushbuttonControlOfTwoLeds.bs2 Excerpts from pages 83-87

25 Slide 25 Chapter 3 Activities

26 Slide 26Notes

27 Slide 27Notes

28 Slide 28Notes

29 Slide 29 Servo Circuit Parts (1) Standard Servo (1) 3-pin male/male header Chapter #4: Controlling Motion Excerpts from page 108-112, 130 Important: Leave the P14 LED and pushbutton circuits on your board! These circuits are re-used in this set of activities. Servo Circuit

30 Slide 30 Chapter #4: Controlling Motion PULSOUT pin, duration Use 0 to 15 to select BASIC Stamp I/O pin P0 through P15 duration × 2  s = pulse duration Example: PULSOUT 14, 1000 Excerpts from pages 113-114 10 o’clock2 o’clock12 o’clock 1.0 ms2.0 ms1.5 ms

31 Slide 31 Chapter #4: Controlling Motion FOR counter = 1 TO 150 PULSOUT 14, 1000 PAUSE 20 NEXT FOR COUNTER = 1 TO 150 PULSOUT 14, 500 PAUSE 20 NEXT FOR counter = 1 TO 150 PULSOUT 14, 750 PAUSE 20 NEXT Excerpts from Example Program: ServoTest.bs2 ≈ 3 seconds Excerpts from pages 115-118

32 Slide 32 Chapter #4: Controlling Motion Excerpt from Example Program: ServoControlWithDebug.bs2 Receive windowpane Transmit windowpane DEBUG CLS, "Enter number of pulses:", CR DEBUGIN DEC pulses DEBUG "Enter PULSOUT duration:", CR DEBUGIN DEC duration Excerpts from pages 119 - 124 √ Follow instructions from Activity #2, pg. 119-124

33 Slide 33 Chapter #4: Controlling Motion Excerpts from Example Program: ServoVelocities.bs2 FOR counter = 500 TO 1000 STEP 4 PULSOUT 14, counter PAUSE 20 DEBUG DEC5 counter, CR, CRSRUP NEXT Excerpts from pages 125-128 √ Follow instructions from Activity #3 pg. 125 – 128 counter VAR Word STEP value controls the rate at which counter increases Counter increments with FOR…NEXT loop. As counter changes, so does the pulse width. As the pulse width changes, the servo’s position updates. Position changing over time gives an apparent velocity. FOR counter = 1000 TO 500 STEP 10 PULSOUT 14, counter PAUSE 20 DEBUG DEC5 counter, CR, CRSRUP NEXT Count down instead of up at a faster step rate.

34 Slide 34 Chapter #4: Controlling Motion Extra Pushbutton Parts (2) Pushbuttons normally open (2) Resistors – 10 k  (brown-black-orange) (2) Resistors – 220  (red-red-brown) (3) Jumper wires The pushbutton circuit should still be on your board. √ If not, build it now. Excerpts from pages 129 - 130

35 Slide 35 Chapter #4: Controlling Motion Excerpt from: ServoControlWithPushbuttons.bs2 DO IF IN3 = 1 THEN IF duration > 500 THEN duration = duration - 25 ENDIF IF IN4 = 1 THEN IF duration < 1000 THEN duration = duration + 25 ENDIF PULSOUT 14, duration PAUSE 10 DEBUG HOME, DEC4 duration, " = duration" LOOP Excerpts from pages131-133 √ Follow instructions with checkmarks on page 132.

36 Slide 36 Chapter 4 Activities

37 Slide 37 Chapter #5: Measuring Rotation Dial Circuit Parts (1) (1)Resistor – 220 Ω (red-red-brown) (1) (1)Capacitor – 0.1  F (2) Jumper wires (1) Potentiometer – 10 kΩ Dial Circuit Excerpts from pages 149-152, 190 Important – more info: √ Replace your pushbutton circuits with this dial circuit. √ Remember to leave the P14 LED and servo circuits connected. √ NOTE: The pot must be firmly seated in its breadboard sockets. √ Run ReadPotWithRcTime.bs2 Activity #3 p. 149 √ Run ControlServoWithPot.bs2 Activity #4 p. 152 √ Have fun controlling the servo with the pot.

38 Slide 38 Chapter #5: Measuring Rotation Excerpt from: ReadPotWithRcTime.bs2 HIGH 7 PAUSE 100 RCTIME 7, 1, time Excerpt from page 151-152 √ Your course guide will explain how to adjust the example program so that it works best with the pulsout command and gives your servo a range of motion that uses the potentiometer’s entire range of motion. √ Run ReadPotWithRcTime.bs2 √ Twist the potentiometer’s input shaft, and make notes of the time values displayed by the Debug Terminal. ReadPotWithRcTime.bs2

39 Slide 39 Chapter #5: Measuring Rotation ControlServoWithPot.bs2 Excerpt from page 151 & 156 ReadPotWithRcTime.bs2

40 Slide 40 Chapter 5 Activities

41 Slide 41 Educational Support Parallax has a strong support system through the use of forums. Educational support is present with two forums: Stamps in Class (Public) Parallax Educators (Private)

42 Slide 42 Forum Registration 1- Go to Parallax forums: http://forums.parallax.com http://forums.parallax.com 2- Register as new forum member. 3- Open the confirmation email and follow the link to confirm that you have joined. 4- Send your username to stampsinclass@parallax.com, and request access to the Parallax Educators Forum. stampsinclass@parallax.com We recommend that you send the request using your EDU email address, and include a link to your faculty page or entry in the school’s online staff directory.

43 Slide 43Notes

44 Slide 44Notes

45 Slide 45 Chapter #8: Frequency and Sound Piezospeaker Circuit Parts (2) Jumper wires (1) Piezoelectric speaker Piezospeaker Circuit TestPiezoWithFreqout.bs2 '{$STAMP BS2} '{$PBASIC 2.5} DEBUG "Tone sending...", CR FREQOUT 9, 1500, 2000 DEBUG "Tone done." f = 2000 Hz T = 1÷2000 s duration = 1500 ms = 1.5 s I/O pin = P9 T Excerpt from page 219-221 √ Build the piezospeaker circuit. √ Run TestPiezoWithFreqout.bs2

46 Slide 46 Chapter #8: Frequency and Sound Excerpts from: ActionTones.bs2 DEBUG "Alarm...", CR PAUSE 100 FREQOUT 9, 500, 1500 PAUSE 500 FREQOUT 9, 500, 1500 PAUSE 500 DEBUG "Robot reply...", CR PAUSE 100 FREQOUT 9, 100, 2800 FREQOUT 9, 200, 2400 FREQOUT 9, 140, 4200 FREQOUT 9, 30, 2000 PAUSE 500 DEBUG "Hyperspace...", CR PAUSE 100 FOR duration = 15 TO 1 STEP 1 FOR frequency = 2000 TO 2500 STEP 20 FREQOUT 9, duration, frequency NEXT duration VAR Word frequency VAR Word Excerpts from pages 222-223 √ Run ActionTones.bs2

47 Slide 47 Chapter #8: Frequency and Sound '{$STAMP BS2} '{$PBASIC 2.5} DEBUG "Frequency = 2000", CR FREQOUT 9, 4000, 2000 DEBUG "Frequency = 3000", CR FREQOUT 9, 4000, 3000 DEBUG "Frequency = 2000 + 3000", CR FREQOUT 9, 4000, 2000, 3000 DEBUG "Frequency = 2000 + 2001", CR FREQOUT 9, 4000, 2000, 2001 DEBUG "Frequency = 2000 + 2002", CR FREQOUT 9, 4000, 2000, 2002 DEBUG "Frequency = 2000 + 2003", CR FREQOUT 9, 4000, 2000, 2003 DEBUG "Frequency = 2000 + 2005", CR FREQOUT 9, 4000, 2000, 2005 DEBUG "Frequency = 2000 + 2010", CR FREQOUT 9, 4000, 2000, 2010 DEBUG "Done", CR END MixingTones.bs2 + Excerpt from page 225 - 226 = √ Run MixingTones.bs2

48 Slide 48 Chapter #8: Frequency and Sound DEBUG "Mi...", CR: FREQOUT 9,500,1319 ' E6 DEBUG "Fa...", CR: FREQOUT 9,500,1396 ' F6 DEBUG "Sol..", CR: FREQOUT 9,500,1568 ' G6 Frequencies in Music Excerpts from pages 227 - 229 Excerpt from DoReMiFaSolLaTiDo.bs2 √ Run DoReMiFaSolLaTiDo.bs2

49 Slide 49 Chapter #8: Frequency and Sound Excerpts from pages 250 - 256

50 Slide 50 Chapter 8 Activities

51 Slide 51Notes

52 Slide 52Notes

53 Slide 53 Chapter #7: Measuring Light Light Sensor Circuit Parts (1) (1)Resistor – 220 Ω (red-red-brown) (1) Capacitor – 0.1  F (1) Capacitor – 0.01  F (1) Jumper wire (1) Photoresistor Light Sensor Circuit Excerpts from pages 190 - 191

54 Slide 54 Chapter #7: Measuring Light TestPhotoresistor.bs2 HIGH 2 PAUSE 100 RCTIME 2, 1, time Excerpt from page 192

55 Slide 55 Chapter #7: Measuring Light TestPhotoresistor.bs2 Excerpt from page 151, 192 ReadPotWithRcTime.bs2

56 Slide 56 Chapter #6: Measuring Light Excerpt from page 193, 195, 196

57 Slide 57 Chapter #7: Measuring Light Excerpt from page 196-197

58 Slide 58 Chapter #7: Measuring Light Excerpt from page 198

59 Slide 59 Chapter #7: Measuring Light Excerpt from page 200-203 StoreLightMeasurementsInEeprom.bs2ReadLightMeasurementsFromEeprom.bs2

60 Slide 60 Chapter 7 Activities

61 Slide 61 Chapter #6: Digital Display Excerpts from pages 165

62 Slide 62 Chapter #6: Digital Display Display Parts (8) Resistors – 1 kΩ (brown-black-red) (5) Jumper wires (1) 7-segment LED Excerpts from pages 166-7, 172-173

63 Slide 63 Chapter #6: Digital Display SegmentTestWithHighLow.bs2 '{$STAMP BS2} '{$PBASIC 2.5} pinCounter VAR Nib DEBUG "I/O Pin", CR, "-------", CR FOR pinCounter = 8 TO 15 DEBUG DEC2 pinCounter, CR HIGH pinCounter PAUSE 1000 LOW pinCounter NEXT Excerpts from pages 173-174 √ Predict which segment will glow. How long will each segment glow? In what order will they glow? √ Run the example program shown on this slide and compare to your predictions.

64 Slide 64 Chapter #6: Digital Display Excerpt from: DisplayDigits.bs2 '{$STAMP BS2} '{$PBASIC 2.5} OUTH = %00000000 DIRH = %11111111 ' BAFG.CDE ' Digit: OUTH = %11100111 ' 0 PAUSE 1000 OUTH = %10000100 ' 1 PAUSE 1000 OUTH = %11010011 ' 2 PAUSE 1000 OUTH = %11010110 ' 3 PAUSE 1000 OUTH = %10110100 ' 4 PAUSE 1000 Excerpts from pages 174-178

65 Slide 65 Chapter #6: Digital Display FOR index = 0 TO 9 LOOKUP index, [ %11100111, %10000100, %11010011, %11010110, %10110100, %01110110, %01110111, %11000100, %11110111, %11110110 ], OUTH DEBUG " ", DEC2 index, " ", BIN8 OUTH, CR PAUSE 1000 NEXT Excerpt from: DisplayDigitsWithLookup.bs2 Excerpts from pages 180-181 Lookup tables are useful for many things. √ Make notes on how the LOOKUP command is used to place a predetermined sequence of bit patterns into the OUTH variable.

66 Slide 66 Chapter 6 Activities

67 Slide 67Notes

68 Slide 68Notes

69 Slide 69 Chapter #9: Electronic Building Blocks Excerpts from pages 261, 263, 265

70 Slide 70 Chapter #9: Electronic Building Blocks Excerpts from pages 264-265 Transistor

71 Slide 71 Chapter #9: Electronic Building Blocks Excerpts from pages 266-268

72 Slide 72 Chapter 9 Activities

73 Slide 73 Chapter 10: Running the Whole Show Excerpts from pages 280-285

74 Slide 74 Chapter 10: Running the Whole Show Excerpts from pages 287, 291

75 Slide 75Notes

76 Slide 76Notes


Download ppt "Slide 1 www.parallax.com 599 Menlo Drive Suite 100 Rocklin, CA 95765 Presentation based on: “What’s a Microcontroller?" by Andy Lindsay Presented by Andy."

Similar presentations


Ads by Google