Propeller Manual
Version 1.1
WARRANTY
Parallax Inc. warrants its products against defects in materials and workmanship for a period of 90 days from receipt of product.
If you discover a defect, Parallax Inc. will, at its option, repair or replace the merchandise, or refund the purchase price. Before
returning the product to Parallax, call for a Return Merchandise Authorization (RMA) number. Write the RMA number on the
outside of the box used to return the merchandise to Parallax. Please enclose the following along with the returned merchandise:
your name, telephone number, shipping address, and a description of the problem. Parallax will return your product or its
replacement using the same shipping method used to ship the product to Parallax.
14-DAY MONEY BACK GUARANTEE
If, within 14 days of having received your product, you find that it does not suit your needs, you may return it for a full refund.
Parallax Inc. will refund the purchase price of the product, excluding shipping/handling costs. This guarantee is void if the
product has been altered or damaged. See the Warranty section above for instructions on returning a product to Parallax.
COPYRIGHTS AND TRADEMARKS
This documentation is copyright © 2006-2009 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 of Duplication: Parallax Inc. 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
text, 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.
This text is available in printed format from Parallax Inc. Because we print the text in volume, the consumer price is often less
than typical retail duplication charges.
Parallax, Propeller Spin, and the Parallax and Propeller Hat logos are trademarks of Parallax Inc. BASIC Stamp, Stamps in
Class, Boe-Bot, SumoBot, Toddler, and SX-Key are registered trademarks of Parallax, Inc. If you decide to use any trademarks
of Parallax Inc. on your web page or in printed material, you must state that (trademark) is a (registered) trademark of Parallax
Inc.” upon the first appearance of the trademark name in each printed document or web page. Other brand and product names
herein are trademarks or registered trademarks of their respective holders.
ISBN 9-781928-982470
1.1.0-09.03.05-HKTP
DISCLAIMER OF LIABILITY
Parallax Inc. is not responsible for special, incidental, or consequential damages resulting from any breach of warranty, or under
any legal theory, including lost profits, downtime, goodwill, damage to or replacement of equipment or property, or any costs of
recovering, reprogramming, or reproducing any data stored in or used with Parallax products. Parallax Inc. is also not
responsible for any personal damage, including that to life and health, resulting from use of any of our products. You take full
responsibility for your Propeller microcontroller application, no matter how life-threatening it may be.
INTERNET DISCUSSION LISTS
We maintain active web-based discussion forums for people interested in Parallax products. These forums are accessible at
forums.parallax.com:
•
•
•
•
•
•
•
•
Propeller chip – This list is specifically for our customers using Propeller chips and products.
BASIC Stamp – This list is widely utilized by engineers, hobbyists and students who share their BASIC Stamp
projects and ask questions.
Stamps in Class
®
– Created for educators and students, subscribers discuss the use of the Stamps in Class series
of tutorials in their courses. The list provides an opportunity for both students and educators to ask questions
and get answers.
HYDRA – for enthusiasts of the Propeller-powered HYDRA videogame development system.
Parallax Educators – A private forum exclusively for educators and those who contribute to the development of
Stamps in Class. Parallax created this group to obtain feedback on our curricula and to provide a place for
educators to develop and obtain Teacher’s Guides.
Robotics – Designed for Parallax robots, this forum is intended to be an open dialogue for robotics enthusiasts.
Topics include assembly, source code, expansion, and manual updates. The Boe-Bot
®
, Toddler
®
, SumoBot
®
,
HexCrawler and QuadCrawler robots are discussed here.
SX Microcontrollers and SX-Key – Discussion of programming the SX microcontroller with Parallax assembly
language SX – Key
®
tools and 3rd party BASIC and C compilers.
Javelin Stamp – Discussion of application and design using the Javelin Stamp, a Parallax module that is
programmed using a subset of Sun Microsystems’ Java
®
programming language.
ERRATA
While great effort is made to assure the accuracy of our texts, errors may still exist. If you find an error, please let us know by
sending an email to editor@parallax.com. We continually strive to improve all of our educational materials and documentation,
and frequently revise our texts. Occasionally, an errata sheet with a list of known errors and corrections for a given text will be
posted to our web site, www.parallax.com. Please check the individual product page’s free downloads for an errata file.
SUPPORTED HARDWARE AND FIRMWARE
This manual is valid with the following hardware and firmware versions:
Hardware
P8X32A-D40
P8X32A-Q44
P8X32A-M44
Firmware
P8X32A v1.0
CREDITS
Authorship: Jeff Martin. Format & Editing, Stephanie Lindsay.
Cover Art: Jen Jacobs; Technical Graphics: Rich Allred; with many thanks to everyone at Parallax Inc.
Table of Contents
PREFACE ............................................................................................................................... 11
CHAPTER 1 : INTRODUCING THE PROPELLER CHIP....................................................... 13
C
ONCEPT
............................................................................................................................. 13
P
ACKAGE
T
YPES
................................................................................................................... 14
P
IN
D
ESCRIPTIONS
................................................................................................................ 15
S
PECIFICATIONS
................................................................................................................... 16
H
ARDWARE
C
ONNECTIONS
.................................................................................................... 17
B
OOT
U
P
P
ROCEDURE
.......................................................................................................... 18
R
UN
-T
IME
P
ROCEDURE
......................................................................................................... 18
S
HUTDOWN
P
ROCEDURE
....................................................................................................... 19
B
LOCK
D
IAGRAM
................................................................................................................... 20
S
HARED
R
ESOURCES
............................................................................................................ 22
S
YSTEM
C
LOCK
.................................................................................................................... 22
C
OGS
(
PROCESSORS
) ........................................................................................................... 22
H
UB
..................................................................................................................................... 24
I/O P
INS
............................................................................................................................... 26
S
YSTEM
C
OUNTER
................................................................................................................ 27
CLK R
EGISTER
..................................................................................................................... 28
L
OCKS
.................................................................................................................................. 30
M
AIN
M
EMORY
...................................................................................................................... 30
M
AIN
RAM ........................................................................................................................... 31
M
AIN
ROM ........................................................................................................................... 32
C
HARACTER
D
EFINITIONS
...................................................................................................... 32
L
OG AND
A
NTI
-L
OG
T
ABLES
................................................................................................... 34
S
INE
T
ABLE
.......................................................................................................................... 34
B
OOT
L
OADER AND
S
PIN
I
NTERPRETER
.................................................................................. 34
CHAPTER 2 : SPIN LANGUAGE REFERENCE .................................................................... 35
S
TRUCTURE OF
P
ROPELLER
O
BJECTS
/S
PIN
........................................................................... 36
C
ATEGORICAL
L
ISTING OF
P
ROPELLER
S
PIN
L
ANGUAGE
......................................................... 38
Block Designators........................................................................................................... 38
Configuration .................................................................................................................. 38
Cog Control .................................................................................................................... 39
Process Control .............................................................................................................. 39
Flow Control ................................................................................................................... 39
Memory........................................................................................................................... 40
Directives........................................................................................................................ 41
Registers ........................................................................................................................ 41
Constants ....................................................................................................................... 42
Variable .......................................................................................................................... 42
Unary Operators ............................................................................................................. 42
Binary Operators ............................................................................................................ 43
Propeller Manual v1.1
·
Page 5