|
Part 1: Laying Out the Tools
by Fred Eady
Start ı Tooling
Up ı Hardware Development Tool ı Software
Development Tools ı Selecting a Terminal
Emulator ı The Boot Loader ı Add
Virtual Paper ı Sources and PDF
SELECTING A TERMINAL EMULATOR
Thank you Microchip application engineers!
While researching this project, I read about a terminal emulator called
Tera Term Pro in one of Microchipıs application notes. As it turns
out, Teranishi wrote this emulator with the help of some nuclear physicists
at the University of Tokyo and some of their Russian cohorts. That
was enough for me, I had to have it. The great thing about Tera Term
Pro is that, in addition to being a good script-driven terminal emulator,
itıs free! Iıll be using Tera Term Pro in VT100 mode to send code
to the S-7600A/PIC16F877 Internet Engine boot loader.
Thatıs the lineup. Serialtest Async will
provide the play-by-play, as well as help with debugging the serial
stream. The EDTP Internet Development board and accompanying software
will act as the hardware test bed. Tera Term Pro will provide a highly
automated user interface to the boot loader, and PCW will support
the entire effort from the firmware side.
Hereıs how it will all connect in the
development phase. The development board hardware is connected via
a parallel interface to the development board software running on
a Win98-laden PC. That same Win98 PC will also house and execute Tera
Term and Tera Term macros. Tera Term communicates with the development
board hardware via a serial interface that is monitored using the
facilities of Serialtest Async, which is running on its own dedicated,
highly powered personal computer. PCW is executing on the same Win98
machine with Tera Term Pro and the development board host software.
All of the code generated using PCW is channeled through the development
board driver to the development board hardware via the PCıs parallel
port.
The objective is to produce an Internet-capable
device that will interface to a computer (embedded, laptop, or otherwise)
using a standard terminal program (Tera Term Pro). The Internet-capable
device will incorporate a flash memory-based microcontroller (PIC16F877)
that can be programmed using standard high-voltage techniques or with
a custom boot loader program.
The boot loader will use the facilities
of the terminal emulator to transfer executable code from the host
computer to the microcontroller on the Internet-capable device. The
PIC16F877 microcontroller is capable of self-programming. That is,
the PIC16F877 has the ability to accept data via the custom boot loader
program in its ROM and program this code into other areas of ROM within
itself without assistance from external components or processes.
After the code is loaded via the Tera
Term Pro/boot loader serial conduit, the PIC16F877 will begin execution
of the newly loaded firmware. This firmware will control and communicate
with an S-7600A Internet engine. Then, the S-7600A Internet engine
will interface to yet another RS-232 port. Devices connected to the
S-7600A via this RS-232 connection will most likely be modems. These
externally connected modem devices will then allow the Internet-capable
device to execute the tasks downloaded to the PIC16F877 ROM.
Because of its ability to be programmed
easily via local methods or remotely, the Internet-capable device
I am calling the S-7600A/PIC16F877 Internet Engine can be configured
to be a web server, web client, or e-mail generator. In that the PIC16F877
is a full-function microcontroller with programmable I/O pins, the
S-7600A/PIC16F877 Internet Engine also can be programmed to interact
with its environment and capture data for transmission over the Internet
to other S-7600A/PIC16F877 Internet Engines or Internet-capable devices
or appliances.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ıCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |