Commit graph

18 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
Ralf Schlatterbeck
4ceffb090d Make HW timer for contiki rtimer configurable
... and configure osd platform to use timer 5. With the new
configuration we can use timer 3 for generating hardware PWM.
2014-11-19 13:44:55 +01:00
Harald Pichler
38dbf611e6 add Arduino pin definition and commands 2014-11-19 13:42:57 +01:00
Ralf Schlatterbeck
56f6f87c94 Allow changing bootloader_get_mac address
Current default in the Makefile is the *new* bootloader address.
But for backward compatibility we've modified the run*.sh files
to use the old address. The run*.sh also now explain how to change
the default.
2014-11-19 13:42:35 +01:00
Harald Pichler
a16849120f adapt new names and api 2014-11-19 13:40:09 +01:00
Harald Pichler
964164b157 remove t4 driver at the moment, config problem 2014-11-19 13:39:11 +01:00
Harald Pichler
e2edd006d4 initial upload 2014-11-19 13:34:27 +01:00
Harald Pichler
cead1c7ce0 use batmon in battery_sensor 2014-11-19 13:32:41 +01:00
Harald Pichler
48fff35bd9 update for new contiki fetch 2014-11-19 13:22:20 +01:00
Harald Pichler
1fc136d379 add BOOTLOADER_GET_MAC
Conflicts:
	platform/osd-merkur/params.h
2014-11-19 13:19:44 +01:00
Harald Pichler
245d801862 add merkurboard coap client demo 2014-11-19 12:14:24 +01:00
Marcus Priesch
277f63d76a timer4 servo pwm 2014-11-19 12:10:09 +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
81e6734626 add climate example 2014-11-19 12:04:53 +01:00
Renamed from platform/osd-merkur/Makefile.merkur (Browse further)