Revision 1.1
4
Download configuration options include enabling or disabling the Watchdog Timer, Power-up
Timer, Brown-out Reset, In-Circuit Debugger and Code Protection modes. Refer to the
datasheet for the target microcontroller for a full description of each available download option.
If a PIC Flash device is code protected, the read function will return all 1’s for the data read, and
a standard bulk erase will not work correctly. The only way to erase a device that was
previously programmed with code protection turned on is by issuing commands 1 and 7 while in
Load Configuration mode. The download application mentioned above will perform both a
standard bulk erase and a code-protected bulk erase when the Erase function is selected. This
allows the target processor to be code protected such that the firmware cannot be read but will
still allow for future downloads to occur.
A firmware version string of 16 characters (maximum) can be written to the EEPROM memory
in the download microcontroller. This string is read automatically every time the download
process is initiated, and can be written any time the download application is running and
connected to the target. EEPROM memory in the download microcontroller was used for
storage of the version string instead of the target microcontroller’s EEPROM so that all of the
EEPROM memory in the target would remain available for project use.
The Connect function will attempt to initiate communications with the DLP-IO16 board using
the serial number, the device description string or just the device number found in the Search edit
box. The character string in the text box can either be entered manually by the user or it can be
placed there as a result of using the Search function.
If the desired DLP-IOx board is present in the system then the Connect function will be
successful and the version string for the attached board will appear in the Firmware Version edit
box. Additionally, as part of the Connect process, the processor type (16F84A or 16F877) will
be automatically selected by the processor selection radio buttons. Connect mode can be
terminated either by clicking on Disconnect or by pressing the reset button while the Connect
LED is solidly lit.
The Open function will launch a dialog that allows selection of the HEX file that is to be written
to the Flash memory of the target processor. As the HEX file is loaded, each line of data in the
file is checked for errors by calculating and verifying its checksum. The HEX file can contain
configuration settings, processor ID codes and EEPROM data as well as program data.
The Blank Check function will read the entire contents of the Flash memory program area and
verify that every location is set to an all 1’s condition. This is the expected state of the Flash
memory after an Erase function has been successfully completed.
The Program function will read the currently selected HEX file, verify the data to be written and
then send the data to the Download processor. Each 14-bit word is checked immediately after it
is written for errors. Any errors that occur during the download process are immediately
reported and the download process if halted. If the target processor is not blank the Program
function will report an error.