From 324c5ba9098c1010d0aa8c1e26b95509878ce9f2 Mon Sep 17 00:00:00 2001 From: Yves Fischer Date: Tue, 11 Oct 2011 21:50:49 +0200 Subject: Mini-Octopus build from r@171 --- liboctopus/python/.gitignore | 2 + liboctopus/python/Makefile | 19 ++++++++++ liboctopus/python/demos/adc.py | 19 ++++++++++ liboctopus/python/demos/blink.py | 22 +++++++++++ liboctopus/python/demos/blink_all.py | 58 ++++++++++++++++++++++++++++ liboctopus/python/demos/blink_i2c.py | 29 ++++++++++++++ liboctopus/python/demos/blink_lauf.py | 67 +++++++++++++++++++++++++++++++++ liboctopus/python/demos/blink_status.py | 26 +++++++++++++ liboctopus/python/demos/eeprom_i2c.py | 36 ++++++++++++++++++ liboctopus/python/octopus.i | 5 +++ 10 files changed, 283 insertions(+) create mode 100644 liboctopus/python/.gitignore create mode 100644 liboctopus/python/Makefile create mode 100644 liboctopus/python/demos/adc.py create mode 100644 liboctopus/python/demos/blink.py create mode 100644 liboctopus/python/demos/blink_all.py create mode 100644 liboctopus/python/demos/blink_i2c.py create mode 100644 liboctopus/python/demos/blink_lauf.py create mode 100644 liboctopus/python/demos/blink_status.py create mode 100644 liboctopus/python/demos/eeprom_i2c.py create mode 100644 liboctopus/python/octopus.i (limited to 'liboctopus/python') diff --git a/liboctopus/python/.gitignore b/liboctopus/python/.gitignore new file mode 100644 index 0000000..5b2c896 --- /dev/null +++ b/liboctopus/python/.gitignore @@ -0,0 +1,2 @@ +octopus.py +octopus_wrap.c diff --git a/liboctopus/python/Makefile b/liboctopus/python/Makefile new file mode 100644 index 0000000..e0e6f29 --- /dev/null +++ b/liboctopus/python/Makefile @@ -0,0 +1,19 @@ +CC=gcc +CFLAGS= -fPIC +CFLAGS+=-I.. +CFLAGS+=`python-config --cflags` +LDFLAGS=`pkg-config --libs libusb` + +all: octopus.o octopus_wrap.o + gcc -fPIC -shared octopus_wrap.o octopus.o $(LDFLAGS) -o _octopus.so + +octopus_wrap.o: + swig -python octopus.i + $(CC) -c -o octopus_wrap.o octopus_wrap.c $(CFLAGS) + +octopus.o: + $(CC) -c -o octopus.o ../octopus.c $(CFLAGS) + +.PHONY: clean +clean: + rm -vf octopus.o octopus.py _octopus.so octopus_wrap.o octopus.pyc octopus_wrap.c diff --git a/liboctopus/python/demos/adc.py b/liboctopus/python/demos/adc.py new file mode 100644 index 0000000..5e55ab7 --- /dev/null +++ b/liboctopus/python/demos/adc.py @@ -0,0 +1,19 @@ + + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_adc_init(op, 33) +octopus_adc_ref(op, 2) + +while 1: + value = octopus_adc_get(op, 33) + callin = "Value %i" % value + print callin + time.sleep(1) + + diff --git a/liboctopus/python/demos/blink.py b/liboctopus/python/demos/blink.py new file mode 100644 index 0000000..3e454af --- /dev/null +++ b/liboctopus/python/demos/blink.py @@ -0,0 +1,22 @@ +#blink.py +#laesst die led1 (26) blinken + + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_io_init(op,26) + +octopus_io_set_pin_direction_out(op,26) + +while 1: + octopus_io_set_pin(op,26,1) + time.sleep(1) + octopus_io_set_pin(op,26,0) + time.sleep(1) + + diff --git a/liboctopus/python/demos/blink_all.py b/liboctopus/python/demos/blink_all.py new file mode 100644 index 0000000..32c963b --- /dev/null +++ b/liboctopus/python/demos/blink_all.py @@ -0,0 +1,58 @@ +#blink_all.py +#laesst die led1 - led6 auf einmal blinken + +import sys + +sys.path.append("../../libs/python") + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_io_init(op,26) +octopus_io_init(op,27) +octopus_io_init(op,28) +octopus_io_init(op,29) +octopus_io_init(op,30) +octopus_io_init(op,31) +octopus_io_init(op,32) + +octopus_io_set_pin_direction_out(op,26) +octopus_io_set_pin_direction_out(op,27) +octopus_io_set_pin_direction_out(op,28) +octopus_io_set_pin_direction_out(op,29) +octopus_io_set_pin_direction_out(op,30) +octopus_io_set_pin_direction_out(op,31) +octopus_io_set_pin_direction_out(op,32) + +octopus_io_set_pin(op,26,0) +octopus_io_set_pin(op,27,0) +octopus_io_set_pin(op,28,0) +octopus_io_set_pin(op,29,0) +octopus_io_set_pin(op,30,0) +octopus_io_set_pin(op,31,0) +octopus_io_set_pin(op,32,0) + + + + +while 1: + octopus_io_set_pin(op,26,1) + octopus_io_set_pin(op,27,1) + octopus_io_set_pin(op,28,1) + octopus_io_set_pin(op,29,1) + octopus_io_set_pin(op,30,1) + octopus_io_set_pin(op,31,1) + octopus_io_set_pin(op,32,1) + time.sleep(1) + octopus_io_set_pin(op,26,0) + octopus_io_set_pin(op,27,0) + octopus_io_set_pin(op,28,0) + octopus_io_set_pin(op,29,0) + octopus_io_set_pin(op,30,0) + octopus_io_set_pin(op,31,0) + octopus_io_set_pin(op,32,0) + time.sleep(1) diff --git a/liboctopus/python/demos/blink_i2c.py b/liboctopus/python/demos/blink_i2c.py new file mode 100644 index 0000000..5fd4cb9 --- /dev/null +++ b/liboctopus/python/demos/blink_i2c.py @@ -0,0 +1,29 @@ +# blink_i2c.py +# laesst die led des i2c (0x10) blinken + +import sys +sys.path.append("..\\..\\libs\\python") + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_i2c_init(op) +octopus_i2c_set_bitrate(op,3) # 100khz + + +octopus_i2c_send_start(op) + +while 1: + #octopus_i2c_receive_byte(op,0x10,1) + octopus_i2c_send_byte(op,0x20,1) + octopus_i2c_send_byte(op,1,1) + time.sleep(1) + octopus_i2c_send_byte(op,0x20,1) + octopus_i2c_send_byte(op,0,1) + time.sleep(1) + + diff --git a/liboctopus/python/demos/blink_lauf.py b/liboctopus/python/demos/blink_lauf.py new file mode 100644 index 0000000..00f73e7 --- /dev/null +++ b/liboctopus/python/demos/blink_lauf.py @@ -0,0 +1,67 @@ +#blink_lauf.py +#laesst alle leds nacheinander blinken + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_io_init(op,26) +octopus_io_init(op,27) +octopus_io_init(op,28) +octopus_io_init(op,29) +octopus_io_init(op,30) +octopus_io_init(op,31) +octopus_io_init(op,32) + +octopus_io_set_pin_direction_out(op,26) +octopus_io_set_pin_direction_out(op,27) +octopus_io_set_pin_direction_out(op,28) +octopus_io_set_pin_direction_out(op,29) +octopus_io_set_pin_direction_out(op,30) +octopus_io_set_pin_direction_out(op,31) +octopus_io_set_pin_direction_out(op,32) + +octopus_io_set_pin(op,26,0) +octopus_io_set_pin(op,27,0) +octopus_io_set_pin(op,28,0) +octopus_io_set_pin(op,29,0) +octopus_io_set_pin(op,30,0) +octopus_io_set_pin(op,31,0) +octopus_io_set_pin(op,32,0) + + + + +while 1: + octopus_io_set_pin(op,26,1) + time.sleep(1) + octopus_io_set_pin(op,26,0) + time.sleep(0.5) + octopus_io_set_pin(op,27,1) + time.sleep(1) + octopus_io_set_pin(op,27,0) + time.sleep(0.5) + octopus_io_set_pin(op,28,1) + time.sleep(1) + octopus_io_set_pin(op,28,0) + time.sleep(0.5) + octopus_io_set_pin(op,29,1) + time.sleep(1) + octopus_io_set_pin(op,29,0) + time.sleep(0.5) + octopus_io_set_pin(op,30,1) + time.sleep(1) + octopus_io_set_pin(op,30,0) + time.sleep(0.5) + octopus_io_set_pin(op,31,1) + time.sleep(1) + octopus_io_set_pin(op,31,0) + time.sleep(0.5) + octopus_io_set_pin(op,32,1) + time.sleep(1) + octopus_io_set_pin(op,32,0) + time.sleep(0.5) + diff --git a/liboctopus/python/demos/blink_status.py b/liboctopus/python/demos/blink_status.py new file mode 100644 index 0000000..c4b0945 --- /dev/null +++ b/liboctopus/python/demos/blink_status.py @@ -0,0 +1,26 @@ +# blink_status.py +# laesst die status led (11) blinken + +import sys +sys.path.append("..\\..\\libs\\python") + + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_io_init(op,11) + +octopus_io_set_pin_direction_out(op,11) + +octopus_io_set_pin(op,11,0) + + +while 1: + octopus_io_set_pin(op,11,1) + time.sleep(1) + octopus_io_set_pin(op,11,0) + time.sleep(1) diff --git a/liboctopus/python/demos/eeprom_i2c.py b/liboctopus/python/demos/eeprom_i2c.py new file mode 100644 index 0000000..17707a4 --- /dev/null +++ b/liboctopus/python/demos/eeprom_i2c.py @@ -0,0 +1,36 @@ +# blink_i2c.py +# laesst die led des i2c (0x10) blinken + +from octopus import * +import time + + +op=octopus_context() +octopus_init(op) +octopus_open(op) +octopus_i2c_init(op) +octopus_i2c_set_bitrate(op,3) # 100khz + + +octopus_i2c_send_start(op) +octopus_i2c_send_byte(op,0xae,1) +octopus_i2c_send_byte(op,1,1) +octopus_i2c_send_byte(op,0,1) +octopus_i2c_send_byte(op,0x77,1) +octopus_i2c_send_stop(op) + + + +octopus_i2c_send_start(op) +octopus_i2c_send_byte(op,0xae,1) +octopus_i2c_send_byte(op,1,1) +octopus_i2c_send_byte(op,0,1) +octopus_i2c_send_start(op) + +octopus_i2c_send_byte(op,0xaf,1) + +print octopus_i2c_receive_byte(op,1,1) + +octopus_i2c_send_stop(op) + + diff --git a/liboctopus/python/octopus.i b/liboctopus/python/octopus.i new file mode 100644 index 0000000..4999a19 --- /dev/null +++ b/liboctopus/python/octopus.i @@ -0,0 +1,5 @@ +%module octopus +%{ +#include "../octopus.h" +%} +%include "../octopus.h" -- cgit v1.2.1