simimeie [Sun, 8 Aug 2010 18:09:40 +0000 (18:09 +0000)]
completely redid PWM: Now calculate 'microprograms', i.e. pairs of
at-this-count set-this-bitmask. This makes the actual IRQs do
significantly less work. We will now stay in the interrupt handler
if less than 30 CPU cycles remain until the next change, and do
active waiting.
preliminary support for 16 bit pwm. The 16 bit counter ist still used for
precise timing info as well (e.g. for ir decoding). pwm support still is
a little buggy - e.g. when values are too close together.
- redesigned because we will have to use software PWM (HW PWM does not
have high enough resolution). Therefore we now connect the LEDs to
the nearest pins instead of routing them to the HW PWM pins. This
actually saves on wire jumper.
- add (optional!) oscillator to allow running at more than 8 MHz.
13.3 MHz would be the official limit at our 3.3 volts.
- add eepromdata.h
- add rfm12 module to makefile
- preliminary initialization for rfm12
- console command 'rfstatus'
- display of last reset reason moved to console (so it displays
properly now).
made more room in critical places:
- On the left of the microcontroller (for the power connector)
- between infrared receiver and the ISP.
Turned around the infrared receiver so it faces to the outside and not the inside of the board.
- change bit definitions to avoid problems for users of broken avr-libc
versions: just _BV(n) instead of _BV(PXn).
- link to nice NEC protocol description webpage.
- add new mini function ledpwm_set that sets all LEDs at once (including
correct brightness) (-sijuhamm)
- change bit definitions to avoid problems for users of broken avr-libc
versions: just _BV(n) instead of _BV(PXn).
simimeie [Sun, 27 Jun 2010 22:18:26 +0000 (22:18 +0000)]
timing functions - offering low res 'tick' counts, and high res timestamp counts (exact to one cpu cyle, except you can never use that precision because a few hundred cycles are probably neede for processing it)
desperately needed for the IR decoding code.
simimeie [Sat, 26 Jun 2010 19:08:18 +0000 (19:08 +0000)]
- add LED control with PWM
- add infrared control - just displaying when the IR receiver pin toggles
for now.
- some minor text corrections to the console and support for setting LED
brightness from there.
- add new files to Makefile