Chameleon-PIC Nurve Networks, Chameleon-PIC Datasheet - Page 241

MCU, MPU & DSP Development Tools PIC24 & PROPELLER DEV SYSTEM (SBC)

Chameleon-PIC

Manufacturer Part Number
Chameleon-PIC
Description
MCU, MPU & DSP Development Tools PIC24 & PROPELLER DEV SYSTEM (SBC)
Manufacturer
Nurve Networks
Datasheet

Specifications of Chameleon-PIC

Processor To Be Evaluated
PIC24
Data Bus Width
16 bit
Interface Type
USB, VGA, PS/2, I2C, ISP, SPI
Operating Supply Voltage
3.3 V, 5 V
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Compiling and Running the MPLAB/TextPad Bootloader Version
Demo Version Description:
Main Source File:
Additional Files Required:
General Requirements:
Controls Required:
Technical Overview
The program is probably the most complex of all since it has to do so much. We need a NTSC/VGA menuing system that
allows the user to enter menu options, then we needed the X-Modem function to receive files which is a project in itself,
and finally, the FLASH memory call to display and save the FLASH data. So a lot of parts, but with a little imagination, you
can use this program as the basis of a MP3 or video player. You can download files into the FLASH with the X-Modem
function, then write code that decompresses video or audio and presto!
Anyway, we have already seen the X-Modem receive file listing earlier in the overview and the complete program is rather
long, too long to list. Therefore, I am just going to verbalize the FLASH aspect of the program. Forgetting about the X-
Modem support, accessing the FLASH memory is trivial with the API, all you need to do is call Flash_Open(), then you
can read data with the Flash_Read(…) function. When you’re done, call Flash_Close() and that’s it! If you want to write
to the flash memory, then in addition to the Flash_Open() call you must make sure that the blocks or sectors you want to
write to have been erased first, once they are erased you can write to them. The erase function is Flash_Erase(…) and
as long as you have done that once before writing (or know that the FLASH is already erased) then you call
Flash_Write(…) and write one or more bytes anywhere in the FLASH, once again, call Flash_Close() when you’re done.
Summary
In this chapter, you not only learned about the cool 1 MB Flash memory the Chameleon has, but got a taste of file transfer
protocols. Hopefully, you can take our 30 minute X-Modem file transfer function and spend a good day on it and really
make it robust!
CHAM_PIC_SYSTEM_V010.c|h
CHAM_PIC_I2C_SPI_DRV_V010.c|h
CHAM_PIC_UART_DRV_V010.c|h
CHAM_PIC_NTSC_DRV_V010.c|h
CHAM_PIC_VGA_DRV_V010.c|h
CHAM_PIC_KEYBOARD_DRV_V010.c|h
CHAM_PIC_FLASH_DRV_V010.c|h
TIP
There is also a “chip erase” function supported by the FLASH memory that erases the
whole chip. We removed this from the API since we were having trouble with it, the
datasheets are always a little buggy, and might have something incorrect, so check it
out – It’s a simple command, but first you need to unprotect the chip and of course write
enable then erase. It worked on some other versions of the FLASH chip, but these
version it doesn’t seem reliable. It WORKS – trust me, but there are some missing
details in the data sheet possibly, a step that we are omitting with these new chips, so
we deleted the function this time around.
FLASH memory demo that receives files via X-Modem protocol.
CHAM_PIC_FLASH_DEMO_01.c
NTSC or VGA display connected, local PS/2 keyboard connected, X-Modem download
program running on PC, N81, 2400 baud.
Local PS/2 keyboard, simply use menu, also PC running X-Modem uploader.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon PIC 16-Bit”
241

Related parts for Chameleon-PIC