Commit graph

24 commits

Author SHA1 Message Date
Ralf Schlatterbeck abdf6f8c6b Refactor A/D conversion in adc.c
Now the necessary settings are in adc.h. Refactored to allow repeated
ADC reads without reinitialization. Arduino allows setting
analogReference, this is now also implemented.
ADC is now initialized to sane values in apps/arduino/arduino-process.c
dev/arduino/arduino-compat.h now has all hardware independent settings
for arduino (some moved from platform/osd-merkur/dev/hw-arduino.h).
turnOffPWM re-implemented with hw_timer, removed from wiring_digital.c
ADC-specific arduino stuff moved to arduino-compat.h
Arduinos wiring_analog no longer necessary.
arduino-sketch example now reads analog inputs 1 and 5 using analogRead.
2014-11-19 13:53:32 +01:00
Ralf Schlatterbeck c46d6afa39 Make Arduino timer stuff work on Contiki
New discovery: Contiki also uses timer 0. With almost the same interface
as Arduino. So we now completely get rid of wiring.c (only the main
file, the other wiring_xxx stay) and implement Arduino timer, delay, etc
in terms of the corresponding Contiki routines. Verified that now delay
works as expected. The LED in examples/osd/arduino-sketch blinks!

Before this, the arduino_init routine in wiring.c destroyed the timer-0
initialization of contiki, making both, contiki timer implementation
*and* contiki timer implementation fail if the arduino_init routine was
called. Now both work.

Squashed with following bug-fix commit.
2014-11-19 13:50:58 +01:00
Ralf Schlatterbeck b6be226e69 Add Arduino compatibility layer
We can now directly compile arduino sketches (.pde) files.
Arduino compatible analogWrite works now.
But there is still a long way to go, serial I/O and timer stuff (delay,
millis etc) currently don't work (not tested but I don't expect this to
work).
It can be used in an arduino sketch or in a normal contiki program.
We get a PWM frequency of 490.2 Hz (a period of 2.040 ms), that's
Arduino compatible. If you need different frequencies see native timer
usage in examples/osd/pwm-example
In a contiki program you have to call arduino_pwm_timer_init to
initialize the timer before pwm works. The arduino sketch wrapper
already does this.
For running a sketch, see examples/osd/arduino-sketch
2014-11-19 13:48:05 +01:00
Harald Pichler 5077010fc0 add i2c driver from Ingo 2014-11-19 13:46:58 +01:00
Harald Pichler 16fa63ebac bugfix read analog 2014-11-19 13:46:14 +01:00
Harald Pichler 38dbf611e6 add Arduino pin definition and commands 2014-11-19 13:42:57 +01:00
Harald Pichler 1efbe0736a change resources to simple and make climate2 default 2014-11-19 13:42:13 +01:00
Harald Pichler d90e0d622d get s/button ->show button status 0/1 2014-11-19 13:42:05 +01:00
Marcus Priesch 630bd8e9e4 Factored to support configurable amount of pwm's, fixes 2014-11-19 13:38:58 +01:00
Harald Pichler 9906e9736c temp and hum sensors values xxxx -> xx.xx 2014-11-19 13:37:21 +01:00
Harald Pichler 8b323633cd define new tria pins, configurable type ligt or shutter or plug 2014-11-19 13:36:58 +01:00
Harald Pichler dd917c3260 bugfix server client demo 2014-11-19 13:34:37 +01:00
Harald Pichler e2edd006d4 initial upload 2014-11-19 13:34:27 +01:00
Harald Pichler 1093989aef bugfix CS cast to uint8_t 2014-11-19 13:33:59 +01:00
Harald Pichler 29c7297591 bugfix RH03 sensor 2014-11-19 13:33:50 +01:00
Harald Pichler 45ede69308 add dht22 and RHT03 support 2014-11-19 13:33:40 +01:00
Harald Pichler cead1c7ce0 use batmon in battery_sensor 2014-11-19 13:32:41 +01:00
Harald Pichler ae732f4636 initial upload 2014-11-19 13:32:31 +01:00
Harald Pichler 88ae1828f9 remove debug code 2014-11-19 13:12:43 +01:00
Marcus Priesch 42c28e0bf7 timer4 servo pwm 2014-11-19 12:11:19 +01:00
Harald Pichler 54114b0943 many bugfixes, add cputemp 2014-11-19 12:07:31 +01:00
Harald Pichler e645833a99 add light-actor 2014-11-19 12:06:54 +01:00
Harald Pichler 8c08364cad add servo example 2014-11-19 12:06:45 +01:00
Harald Pichler 715cfa3a75 add platform osd-merkur 2014-11-19 12:04:38 +01:00