GeoffSmith wrote:Al,
Since it's been too cold to work on the car/fine tune the rev limit warning unit, I've been thinking about the datalogger again. The
PIC selector tool has thrown up a new enhanced mid-range part, the
PIC16F1827 which seems to fit the bill and has:
4096 Program words
256 bytes of non-volatile memory
384 bytes of volatile memory
1 UART to talk to the
Vinculum USB interface - a POP to interface to >1G USB memory sticks
2 serial (SPI or I²C) for the ALDL interface, a
DS1302ZN+ RTC, a couple of
16Mbit flash memories (for buffering ~1hour of data in the absence of memory stick), GPS module (TBC), Bluetooth module (TBC) etc.
Additional I/O for e.g. emergency record/save data button, lap counter etc. etc.
Any thoughts?
That sounds good, I must admit I've wandered from the OneTruePath(tm) recently, and been tempted by Atmel parts for the last project or two, the
ATMega128 in particular, mainly because it doesn't do the tiresome register bank paging that the PICs do, and you can just write in C (gcc toolchain, it's free, or there's the Atmel IDE thing for windows) for all but the most timing critical sections.
4K SRAM
4K EEPROM
128K Flash
16 MIPS
TwoWire serial I/O
2 UARTS
SPI Master (or slave)
53 I/Os
JTAG debugging luxury

I used the handy modules developed by this guy in .de:
Siphec ATMega modules (mainly 'cos I can't etch finely enough at home to do SMT), they were a bit cheaper when €1 ≠ £1…
BTW, I seem to recall that SD cards speak SPI, so we could avoid the cost of the USB Host controller [some searching later:
http://www.avrrepository.com/samplecode ... /main.html ]
GeoffSmith wrote:To avoid the need to go into the garage to test things out, I've done some reverse engineering and made an inverse ElanScan (Nacsnale??) application with LabView so, with a slightly modified interface, I can play back a previously recorded ElanScan log and re-record it in ElanScan!

Nice one

So you've decoded the ElanScan log format then ?
I did knock up a fakeecu thing when I was writing the
N770 "port" of elanscan, but it mainly just threw back results of the form A*sin(t*B) for a handful of params, not particularly useful, but made for pretty plots
