2008-06-26 Kevin Rosenberg * BaseTinyFirmwave/IAR: Port Martin's changes from 2008-06-12 to IAR 2008-06-12 Martin Thomas Modifications to test AVR458 (LiIon). Tests done with Varta EasyPack #66590 711 099: the BC100 at least enters the charging-state now. Charging itself not fully monitored so far. No tests done with NiMH (AVR463). * BaseTinyFirmware/GCC/battery.c - NTCLookUp(): type of adcs_rawNTC_tmp to uint16_t - BatteryDataRefresh() avoid unneeded EEPROM writes * BaseTinyFirmware/GCC/statefunc.h - added BATCONN to set number of connectors to scan (1=Battery A only, 2=Battery A and B) * BaseTinyFirmware/GCC/structs.h - Batteries_struct: option do disable bitfield (default: use bitfield) * BaseTinyFirmware/GCC/statefunc.c - sleep(): split if ( ... && ... ) into two ifs for easier debugging * BaseTinyFirmware/GCC/LIIONspecs.h - added comment with technical information on used battery from Varta PoliFlex handbook and battery's datasheet * Project settings: - added -DEASYPACK550 in custom options [all files] - NOT added: settings mentioned in entry "2008-04-21" since they cause wrong code with avr-gcc 4.1.2/avr-binutils 2.17 (interrupt-vector not linked) * BaseTinyFirmware/GCC/battery.h - added DEF_BAT_*-values for the test-battery which are enabled if EASYPACK550 is defined, RID not used, #warning to indicate fixed settings (= 6 warnings on rebuild) - NO warranty for these settings but even if something goes wrong in firmware or BC100-hardware the battery protects itself with it's internal circuits. * BaseMegaFirmware/GCC/bc100_slave.c - bc100_slave_test(): added battery-data readout 2008-04-21 Kevin Rosenberg * BaseTinyFirmware/GCC/*/Makefile: Add GCC optimizations from Eric Weddington 2008-04-07 Kevin Rosenberg * BaseTinyFirmware/IAR: Port Martin's changes from 2008-04-03 to IAR 2008-04-03 Martin Thomas * BaseMegaFirmware/GCC: Experimental Master Code for the ATmega644 with basic "drivers" for - keys incl. power-off with debounceing - 74HC595 low-level "software-SPI" - LEDs though 74HC595 - Power-off and Slave-Reset control though 74HC595 - hardware SPI for comm. with slave - simple test-function for communication with slave * BaseTinyFirmware/GCC/statefunc.c: - prevent unneeded writes to eeprom if init fails - prevent slave from entering sleep-mode standby if "MASTER_INT" is low (so SPI communication with master is possible even during the "8-second watchdog delay") 2008-03-30 Kevin Rosenberg * BaseTinyFirmware/GCC Makefile's improved with more listing output as well as added -Wl,-gc-sections option which stops crashes using linker relaxation [thanks to Eric Weddington] 2008-03-28 Kevin Rosenberg * BaseTinyFirmware/GCC/avr463/Makefile: Added -Wl,-relax to linker flags. On my system this crashes avr-ld.exe, but others have reported a large reduction in firmware size with this option. I added this option for others to try. * BaseTinyFirmware/GCC/avr458/Makefile: Added missing file 2008-03-14 Martin Thomas Improvements to BaseTinyFirmware: * added "volatile" to structure object and array declarations for objects sed in main-thread and ISRs. I'm not sure about the current state of implicitly "guaranteed" accesses in (avr-)gcc but it should be a "better safe than sorry" extension. * enveloped access to timer-values in timer.c to make them "atomic" since they are unsigned long * "atomic" access to signed int and unsigned int members of ADCS * it maybe better to have one place to globally enable interrupts ("sei"). Done in "initialize" now and not several times in the driver init-functions. * changed some space to tab as in the original code * added header files to the AVR-Studio project workspace * added -lm to the linker-options in the AVR Studio gcc-plugin, not important for the basic application but might be good if someone uses the code as a base for own developments 2008-03-12 Kevin Rosenberg * Initial GCC port performed and compiles without error * Warning: Not yet tested on BC100 hardware!