|
楼主 |
发表于 2016-12-25 04:34:22
|
显示全部楼层
Version 1.40 is released on Dec-13-2016. There is no release 1.39.
3.1. Version 1.40
New device support Support is now available for the following parts (and their corresponding LF variants): 16F15356, 16F15375, 16F15376, 16F15385, 16F15386, 16F19195, 16F19196, 16F19197, 16F15325, 16F15345, 18F24K42, and 18F25K42.
Overhauled Interrupt Handing As part of the support for the new PIC18Fxxk42 devices, which employ a new Interrupt Controller Module and interrupt vector tables, the way that interrupt functions can be defined has been expanded. The __interrupt() specifier, previously part of the Common C Interface (CCI), can now be used with all devices that have interrupts. For those devices using the vector tables, interrupt sources and vector table base addresses can be specified with the irq() and base() arguments, respectively, and as fully described in Section 5.9 Interrupts in the new User’s Guide. The interrupt functions for these devices can be define with a function parameter to determine the interrupt source. A new driver option, --UNDEFINTS, allows otherwise unimplemented interrupts sources to trigger certain behaviors, and the default interrupt source can be used to provide a default interrupt function when using __interrupt().
Improved/expanded in-built delay functions (XC8E-106, XC8E-16) The in-built delay routines (_delay(), _delaywdt(), __delay_us(), and __delay_ms(), etc.) have been improved. All devices can now generate a three-deep loop, allowing a maximum delay of 50,463,240 instruction cycles. The watchdog variant of this delay is now available for all devices. Several inaccuracies in the generated delay have been corrected. Delays for enhanced mid-range devices are more efficient and use less temporary variables. The delay times are now no longer affected by the location of temporary variables. The _delay3() in-built function is now implemented for enhanced mid-range devices.
New Assembler Controls New ASMOPT_PUSH and ASMOPT_POP controls allow the state of the assembler optimizer to be saved on to a stack of states and then restored at a later time. They work with the existing ASMOPT_ON/OFF controls and are useful when you need to ensure the optimizers are disabled for a small section of code but you are not aware if the optimizers have previously been disabled. For example:
OPT ASMOPT_PUSH
OPT ASMOPT_OFF
;protected code
OPT ASMOPT_POP
3.2. Version 1.38
New device support Support is now available for the following parts: MCP19126, 16F15354, 16F15355, 16LF15354, and 16LF15355.
Defines for DCI and DIA data (XC8E-105) Macros are now supplied in the relevant device-specific header files for device information that is contained in the published DCI and DIA tables. |
|