Hi-tech picc-18. This is a patch level update that fixes bugs reported since version 9.50PL1. This release also enables several new optimizations

Страницы работы

Фрагмент текста работы

Turning off any other application will cause the build to fail.

–SERIAL option (9.50) Although version 9.10 introduced many new options, version 9.50 also adds another, --SERIAL which can be used to store a hexadecimal code sequence or serial number at a fixed address.

Peripheral memory (9.50) To compliment the –RAM and –ROM options, some memory ranges which correspond to a special memory which is usable by the device itself or its peripherals can be referred to by a tag. For example the tag USBRAM refers to the range where an applicable device’s dual-port USB RAM is mapped.

New driver (9.10) The compiler has a completely new command line driver. The new driver’s options are different from the previous version, but the driver is also compatible with the older style options. Running the compiler with the --help option will list the options available. The new options provide a more consistent interface and flexability in controlling things like memory configuration. Please refer to the user manual for details about the command line driver and new features it has to offer.

Start-up Code (9.10) The driver now has the ability to write custom start-up code for the application being build. In previous versions of the compiler there was a generic runtime startup routine which always got linked. Instead, the driver examines the application being build and “writes” a specifically-tailored routine. This is a completely automatic process and allows the application to have smaller, faster start-up code. In order for the compiler to do this, there are now two link stages when compiling a program.

Library Generation (9.10) The driver will now accept .lib as an output file type and generate a library for the files it is building. Previously is was necessary to manually run the libr utility to create a library file.

Hexmate Support (9.10) The Hexmate utility is now incorporated into the regular build process for applications. This means that HEX files are now accepted by the driver and when used, will merge the named hex file with the application which is being built. Hexmate also can provide additional summary information about addresses used within a hex file. This summary information can be turned on via the --summary option.

Code Generator

Enhanced errata support (9.10) The types of silicon errata that is applicable to each chip is now defined in the file picc-18.ini which supercedes the old pic18.ini file. Specific errata workarounds can be selectively enabled or disabled via the command line. Support for additional errata issues has been added and a complete list can be found at the end of this document.

Memory symbols (9.10) New preprocessor symbols are defined by the driver to define the ammount of program memory, RAM and EEPROM memory. These symbols are named _ROMSIZE, _RAMSIZE, _EEPROMSIZE respectively. The existing definitions of EEPROM_SIZE (from device header files) will be retained for backward compatibility but won’t be maintained for newer chips. Use the newer _EEPROMSIZE symbol instead. Also defined are new symbols, _FLASH_ERASE_SIZE and _FLASH_WRITE_SIZE to define the number of bytes a device’s flash erase and write actions will affect respectively.

2.3      Code Generator

Optimizations on small devices (9.50) Additional optimizations are enabled for small memory devices such as the 18F1220 and 18F1320.

Word/Byte write EMI (9.10) When using far variables (those residing in external memory space), the compiler can now specify whether write accesses will be performed as word or byte sized accesses. In the previous version, only word sized accesses were supported.

Bitfield optimizations (9.10) Several specific optimizations have been added to accelerate

Похожие материалы

Информация о работе