Contents
(FIXME) freemcan is stuff.
- We wanted it to be Free Software.
- MCA is the acronym for Multi Channel Analyzer which is the common term for the device.
- "freemca" produced a few hits on Google. "freemcan" did not. Brand name collision wise, an unused word appeared to be the better choice.
(FIXME) No plan.
$ make
Installation is not supported at this time.
- GNU make
- avr-gcc based AVR toolchain
- avr-binutils >= 2.19 (we use INSERT AFTER in linker scripts)
- POSIX/GNU/Linux/Unix host system
- gcc compiler for host system
For building the internal code documentation (mostly of interest to hackers), you additionally need
For creating the source lines of code (SLOC) summary, you additionally need
TBA.
LGPLv2.1+
- firmware/
- The device firmware for Atmel ATmega644 microcontroller
- code-comparison/
- Some common tasks our firmware needs written in portable C and compiled for all platforms we have a cross compiler for. This lets us compare the assembly language generated for those platforms.
- hostware/
- All the software running on the PC host. For lack of a better word, we called it "hostware" to distinguish it from the "firmware".
- emulator/
- Simple attempt at emulating the device connected to a device file by having an Erlang program connected to a Unix domain socket.
cbi/sbi do not modify SREG. That makes it easy to write an ISR without saving any registers, like e.g.:
foo_vector: /* ISR entry: 5 clock cycles */ sbi foo,bar /* 2 clock cycles */ reti /* 5 clock cycles */for doing the reset timing stuff, potentially at ADC trigger, and after timer IRQ counted delay later, or similar stuff.