e65dabb119
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
70 lines
2.3 KiB
Text
70 lines
2.3 KiB
Text
CONTIKI_TARGET_DIRS = . dev apps net loader
|
|
|
|
CONTIKI_CORE=contiki-main
|
|
CONTIKI_TARGET_MAIN = ${CONTIKI_CORE}.o
|
|
CONTIKI_TARGET_SOURCEFILES += contiki-main.c params.c node-id.c
|
|
#Needed for slip
|
|
CONTIKI_TARGET_SOURCEFILES += temperature-sensor.c adc.c led.c sensors.c slip_uart0.c slip.c leds-arch.c
|
|
#Needed for Button
|
|
CONTIKI_TARGET_SOURCEFILES += button-sensor.c
|
|
# i2c Master
|
|
CONTIKI_TARGET_SOURCEFILES += i2c.c
|
|
#Needed for DHT11 humidity sensor
|
|
CONTIKI_TARGET_SOURCEFILES += dht11.c
|
|
#Needed for DS18S20 temperature sensor
|
|
CONTIKI_TARGET_SOURCEFILES += ds1820.c
|
|
#Needed for Battery test
|
|
CONTIKI_TARGET_SOURCEFILES += battery-sensor.c batmon.c
|
|
#Needed for PIR
|
|
CONTIKI_TARGET_SOURCEFILES += pir-sensor.c
|
|
#Needed for OPTRIAC
|
|
CONTIKI_TARGET_SOURCEFILES += optriac.c optriac-sensor.c
|
|
CONTIKIAVR=$(CONTIKI)/cpu/avr
|
|
#Needed for SERVO
|
|
CONTIKI_TARGET_SOURCEFILES += servo.c servo-sensor.c
|
|
#Needed for Timer4 Servo
|
|
#CONTIKI_TARGET_SOURCEFILES += t4-servo.c t4-servo-sensor.c
|
|
#Needed for Relay 1 to 4
|
|
CONTIKI_TARGET_SOURCEFILES += relay.c relay-sensor.c
|
|
# Arduino
|
|
CONTIKI_TARGET_SOURCEFILES += wiring_digital.c wiring.c wiring_analog.c
|
|
|
|
CONTIKIBOARD=.
|
|
BOOTLOADER_START = 0x1F000
|
|
CONTIKI_PLAT_DEFS = -DF_CPU=16000000UL -DAUTO_CRC_PADDING=2 -DPLAT_TIMER=5
|
|
|
|
MCU=atmega128rfa1
|
|
|
|
AVRDUDE_PROGRAMMER=jtag2
|
|
|
|
# For usb devices, you may either use PORT=usb, or (e.g. if you have more than one
|
|
# programmer connected) you can use the following trick to find out the serial number:
|
|
#
|
|
# The example is for an JTAGICE mkII used to program an ATmega128:
|
|
# avrdude -v -P usb:xxxx -c jtag2 -p atmega128
|
|
AVRDUDE_PORT=usb:00B000000D79
|
|
|
|
|
|
# Additional avrdude options
|
|
# Verify off
|
|
AVRDUDE_OPTIONS=-V
|
|
AVRDUDE_MCU=m128rfa1
|
|
|
|
#debug
|
|
# CFLAGS += -save-temps
|
|
# Bootloader bonsai
|
|
# LDFLAGS += -save-temps
|
|
# For the old bonsai bootloader compiled with squeeze gcc-avr we
|
|
# directly used the address of the bootloader:
|
|
#BOOTLOADER_GET_MAC=0x0001f3a0
|
|
# For newer bonsai we have a jump table at the end of the bootloader
|
|
# section:
|
|
BOOTLOADER_GET_MAC=0x0001ff80
|
|
|
|
LDFLAGS += -Wl,--defsym,bootloader_get_mac=$(BOOTLOADER_GET_MAC)
|
|
|
|
|
|
include $(CONTIKIAVR)/Makefile.avr
|
|
include $(CONTIKIAVR)/radio/Makefile.radio
|
|
|
|
MODULES += core/net/ipv6 core/net/ipv4 core/net/ip core/net/mac core/net core/net/rime core/net/rpl core/net/mac/sicslowmac core/net/mac/contikimac
|