HD8 Reflash Files
*************************** HD8 Revision History ***********************************
*
- V3-00 11/5/2010 Initial release. Derrived from CC18 firmware V3-16. Does not have the high speed counter peripheral.
- V3-10 18/6/2010 Abitrary string communications protocol added. This protocol allows the user to create and send ASCII
and binary strings and receive and parse same. Simple 8 bit addition and subtraction, both with and without carryinstructions have been added. The carry/borrow bit for these instruction is held in the R register. Non destructivefloating bit compare and go instructions have been added. Bug fixed which prevented the BranchM instruction frombeing jindexed.- V3-11 10/5/2011 Bug fixed in arbitary string protocol where the buffer pointers were not re-initialised if there
was a program error and the program re-started. RtoX instruction added. Bug fixed in the COMTX_Space instruction whichwould return the number of bytes in the buffer rather that the number of free bytes. Bug fixed in Xwire slave sequencer,other minor Xwire improvements to improve robustness in the slave mode when there are inadvertantly two Xwire masters onthe bus. Xwire TX and RX state machines now re-initialise themselves immediately that they are disabled. Thishas been done to prevent unwanted beaviour when there are multiple slaves with the same address on the Xwire bus (PKS).A bug has been fixed in the SPI module which may cause expansion I/O to be ignored depending on the power up data contentsof the shift registers. Xwire modified to include a new comms error counter which is incremented to a maximum of 255 onUART errors or parsing errors to allow communications errors, specifically collisions, to be detectable in additionto the existing "no response" error counter (GetXwireErrCount). A new instruction called "GetXwireComErr" returnsthe number of UART and parsing errors in X and clears the counter to zero. The OpCode for this new instruction is$F5 $38. This is different to the existing "XwireGetErrCount" instruction which is incremented only on missed pollsbut provides no information about collisions and corruptions being the reason for the lost poll response.MODBUS/SPLat/String protocol UART RX interrupt routine and UART interrupt vectors modified to recovercorrectly from UART overrun errors. Bug fixed in MODBUS which would cause the 3.5 character delay timer not to beinitialised if the selected baud rate was the same as the current baud rate. Xwire RX interrupt routine and UARTinterrupt vectors also modified to recover from overrun errors. MODBUS code modified to always return idle statuswhen re-initialised.Added 10 new floating point compare instructions which set X either true of false depending on the floating pointcomparison. They are non destructive to W and Q.Added "COMRX_fGetNum" instruction to string comms protocol to allow the extraction of numbers from the ASCIIstring contained in the receive buffer. The routine will parse both signed integer and signed decimal numbers and returnwith the result in W. The SPLat result register R will be zero if a number was successfully parsed or 1 if a valid numbercould not be parsed.Thermistor drive voltage is initialised to ON on the HD8, when the board is powered up or reset. Previously it wasinitialised OFF.Reports dialect 26.- V3-12 23/5/2011 Added COMRX_StrFind and iiPrintNVText instructions. Bugs fixed in iiPrintFill and COMRX_peek instructions.
Changed buffer arrangements for the LCD driver and string comms protocol so that the string comms protocol can sendstrings of up to 255 characters from a single string comms instruction. Previously, a limit of 40 characters appliedto the iiPrintText, iiPrintFill and iiPrintNVText instructions. Also, if the TX buffer was full when any Stringprotocol instruction which resulted in characters being appended to the TX buffer, an error would be generated and theSPLat program reset. The user was expected to use the COMTX_Space instruction to ensure this did not happen. Now, theTX buffer can be written at any time with the caveat that if the buffer becomes full during the execution of the stringcomms instruction, the entire SPLat program will be stalled until the currently executing instruction can deposit all ofits characters into the TX buffer. The TX buffer is 128 characters in length. When the destination is the user RAM, theinstructions still execute atomically providing the string fits within the user RAM. If not, an error is generated andthe SPLat program is reset. Reports dialect 27.- V3-13 19/7/2012 Bug fixed which would cause the HD8 to run SPLat programs slightly slower than it should as it was always trying
to service the LCD hardware driver, which does not exist. New TextXY series of instructions added, board is now dialect 28.Bug fixed in LCD formatter. Latest version of the arbitrary string protocol included with new instructions added. Includedlatest Xwire driver with several bug fixes and the ability to send display data to controllers with an LCD. To allow thelatest features to be included, SPLat program/NVEM space has been reduced from 26,112 bytes down to 22,016 bytes.- V3-14 5/3/2014 Various module upgrades: FixMem instructions now preserve W, OBCBsetup instruction re-instated, LCD can now load
CG RAM from NVEM, MODBUS bug fixed.- V3-15 6/2/2015 Added new instructions BlinkM, InputM and InputKM. Fixed a bug in caused by SPLatPC that would cause the UART profile
to be incorrectly set when changing back to SPLatLink comms. Added COM_flags instruction to user string comms.
If you’re not sure what you want, give us a call: +61 3 9773 5082