What's a Microcontroller?
If you already know, skip ahead to the next section. If not, read on.
A microcontroller is a programmable device that can read inputs from external devices,
analyze the input, and then output control
signals to external devices.
What kinds of devices?
There is a whole range of both analog and digital devices that serve a wide variety of purposes.
Simple devices like pushbuttons, switches, keypads, temperature and humidity sensors, lights, buzzers,
speakers, LCD displays, servo motors and stepper motors.
More complex devices include motion sensors, accelerometers, infrared and sonar rangefinders, electronic compasses, and GPS units.
Microcontrollers can even send data to and receive data from other systems like your personal computer,
home automation systems, lighting and environment controllers, industrial control systems, laboratory control systems, etc.
A microcontroller can communicate with other devices and systems (including other microcontrollers)
using a wide variety of interfaces: standard serial line, wireless (infrared, radio, satellite, etc.),
even the Internet.
So what can you do with a microcontroller? The possibilities are limited only by your imagination.
Microcontrollers are used by scientists, engineers, experimenters and hobbyists alike to build things
for work and play. More and more, everyday items all around us have microcontrollers inside them - from
your coffee pot and microwave oven to your TV, DVD/VCR, stereo, cell phone and other wireless devices.
Even your car has microcontrollers in it if it is relatively new. The newest passenger jets have literally
hundreds of microcontrollers in them. These are all examples of microcontrollers employed in embedded systems.
For more in-depth discussion, see the Wikipedia articles on
microcontrollers and
embedded systems.
ZX Microcontrollers for Your Embedded Application
The ZX microcontroller family provides a good mix of features and performance all at a favorable price.
The ZX-24 is a 24-pin module that is pin-compatible with the venerable BASIC Stamp microcontroller from Parallax, Inc.
However, it far exceeds the Stamp's program and data capacity and it is much faster to boot.
On top of that, the ZX-24 offers advanced features not available on the Stamp like multi-tasking, multiple
simultaneous full duplex buffered serial channels, built-in floating point math, and more. If you got started
in microcontrollers using the Basic Stamp it's likely that you're well aware of its limitations and are
ready to move up to a more capable platform for your next project.
The ZX-24 is also pin-compatible with the BX-24 microcontroller from NetMedia, Inc.
However, the ZX-24 microcontroller is more than twice as fast and has over four times the user RAM space as the BX-24.
This impressive increase in capacity and performance is attained while achieving a very high level of software
compatibility with the BX-24 (at the source code level).
Although the ZX-24 has the same amount of space for user programs as the BX-24, it uses the space much more
efficiently allowing you to write more complex programs. It's not unusual to see a program compiled
for the ZX-24 be 60% to 75% the size as when compiled for the BX-24.
For applications where you need more I/O lines, more program space, more design flexibility or lower cost,
we offer the ZX-40 and ZX-44. The ZX-40 is a 40-pin DIP package that is compatible with most prototyping boards
while the ZX-44 is a space-saving 44-pin TQFP (surface mount) package. For both of these devices, you need to
add a few external components (e.g. crystal, memory, and serial interface circuitry)for which we provide suggested
circuits. The ZX-40 and ZX-44 are software compatible with the ZX-24 (excepting differing pin assignments)
providing a convenient upgrade path.
The next group of members of the ZX family are the ZX-24a, the ZX-40a and the ZX-44a.
These microcontrollers are based on Atmel's advanced ATmega644 chip that has twice as much RAM as the ATmega32
(on which the earlier ZX devices were based) along with other advanced features. The new ZX family members
are pin compatible with their non-a counterparts and are also source-code compatible (with the minor exeception of
some differences in internal register names) with the earlier devices.
For more demanding applications, we offer the ZX-1280 and the ZX-1281.
Based on Atmel's advanced ATmega1280 and ATmega1281 chips, respectively, these powerful microcontrollers
are suited for applications that require more resources such as additional RAM, more I/O lines, more PWM
channels and more hardware serial channels.
These ZX family members are source-code compatible (with the minor exeception of some differences in internal
register names) with the other ZX family members thus providing an easy upgrade path as your application grows.
All members of the ZX family described so far are field upgradable. This means that when a new version of the
system code becomes available you can upgrade your ZX microcontroller in a matter of minutes and begin using the
new features.
The newest members of the ZX family are the "native mode" devices. In contrast to the previously described models that use the
"virtual machine" (or VM) model, the ZBasic compiler produces native object code for the native mode ZX devices.
In addition to executing your application significantly faster, the native mode devices offer more flexibility for
advanced users, for example, to create interrupt handler routines, to use inline C or assembly code, or to link with
externally generated object modules or object libraries.
Due to the high degree of source code compatibility between the VM models and the native mode models, the ZX-24n,
ZX-40n and ZX-44n provide an excellent upgrade path as your application and programming skills become more sophisticated.
ZBasic - A Powerful Language for Microcontroller Programming
The ZX microcontrollers are programmed using ZBasic. This language is an easy-to-learn, yet powerful, variant
of the popular Basic language. Perhaps more importantly, ZBasic is a subset of Microsoft's widely used Visual Basic 6
but it has powerful extensions appropriate to microcontroller programming. ZBasic is similar to NetMedia's BasicX
language offering modern control structures and parameterized subroutines/functions but ZBasic has many advanced
features that make it easier and faster to create your programs.
This is in stark contrast to PBasic, the language used to program the Basic Stamp, which is an archaic
form of Basic (circa 1970) that lacks the modern concepts of parameterized calls and local variables
that help you write correct code more quickly and make it easier to modify and maintain your programs.
ZBasic Integrated Development Environment (IDE)
You can write your ZBasic code using any editor that is capable of manipulating plain-text files.
However, the ZBasic IDE offers many advanced code editing features that simplify and expedite your programming.
It also offers special project-oriented capabilities that facilitate working with your ZBasic projects -
you can edit, compile, download and debug all from one convenient application.
Want More Details?
Use these links to learn more about the ZBasic language
and the ZBasic IDE.
For more information on the individual ZX devices, use the links in the table below.
The ZX devices shown in red type are discontinued but are still supported.
The ZX devices shown with light blue background are produced by Oak Micros
under a license from Elba Corp. More information about those devices is available at the Oak Micros website.
ZX Family Diagram
|