From f0b0954a09cf5808fa87abf8052a088f5ee5e5bd Mon Sep 17 00:00:00 2001 From: davids Date: Wed, 3 Jun 2015 17:42:21 +0100 Subject: [PATCH 1/5] implement wiring_shift() --- cores/arduino/wiring_shift.c | 50 ++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100755 cores/arduino/wiring_shift.c diff --git a/cores/arduino/wiring_shift.c b/cores/arduino/wiring_shift.c new file mode 100755 index 00000000..182875cb --- /dev/null +++ b/cores/arduino/wiring_shift.c @@ -0,0 +1,50 @@ +#include "Arduino.h" +#include "portable.h" +//At the moment copy paste +#ifdef __cplusplus + extern "C" { +#endif + + +uint32_t shiftIn( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder ) { + + uint32_t value = 0; + uint32_t i; + + for (i = 0; i < 32 ; i++) { + + digitalWrite(ulClockPin, HIGH); + if (ulBitOrder == LSBFIRST) + value |= digitalRead(ulDataPin) << i; + else + value |= digitalRead(ulDataPin) << (32-i); + + digitalWrite(ulClockPin,LOW); + } + + return value; + +} + + +void shiftOut( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder, uint32_t ulVal ) { + + int i; + for(i = 0; i < 32; i++) { + + if(ulBitOrder == LSBFIRST) + digitalWrite(ulDataPin, !!(ulVal & (1 << i))); + else + digitalWrite(ulDataPin, !!(ulVal & (1 << (32-i)))); + + digitalWrite(ulClockPin, HIGH); + digitalWrite(ulClockPin, LOW); + } +} + + +#ifdef __cplusplus +} +#endif + + From cdf2107957c9c8d17ee0667cb754a31d242c75a5 Mon Sep 17 00:00:00 2001 From: davids Date: Thu, 4 Jun 2015 11:35:13 +0100 Subject: [PATCH 2/5] implement wiring_shift() --- cores/arduino/wiring_shift.c | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/cores/arduino/wiring_shift.c b/cores/arduino/wiring_shift.c index 182875cb..431ec606 100755 --- a/cores/arduino/wiring_shift.c +++ b/cores/arduino/wiring_shift.c @@ -1,6 +1,24 @@ +/* + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + Copyright (c) 2005-2006 David A. Mellis + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + #include "Arduino.h" #include "portable.h" -//At the moment copy paste #ifdef __cplusplus extern "C" { #endif @@ -10,7 +28,6 @@ uint32_t shiftIn( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder ) uint32_t value = 0; uint32_t i; - for (i = 0; i < 32 ; i++) { digitalWrite(ulClockPin, HIGH); From da2e44848abcb12f4f6c9a891a55425b330fdb25 Mon Sep 17 00:00:00 2001 From: davids Date: Thu, 4 Jun 2015 15:20:53 +0100 Subject: [PATCH 3/5] implement wiring_shift() --- cores/arduino/wiring_shift.c | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/cores/arduino/wiring_shift.c b/cores/arduino/wiring_shift.c index 431ec606..4451909b 100755 --- a/cores/arduino/wiring_shift.c +++ b/cores/arduino/wiring_shift.c @@ -1,24 +1,23 @@ /* - wiring_shift.c - shiftOut() function - Part of Arduino - http://www.arduino.cc/ - Copyright (c) 2005-2006 David A. Mellis + Arduino.h - Main include file for the Arduino SDK + Copyright (c) 2005-2013 Arduino Team. All right reserved. + This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. + This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include "Arduino.h" -#include "portable.h" #ifdef __cplusplus extern "C" { #endif @@ -28,13 +27,12 @@ uint32_t shiftIn( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder ) uint32_t value = 0; uint32_t i; - for (i = 0; i < 32 ; i++) { - + for (i = 0; i < 8 ; i++) { digitalWrite(ulClockPin, HIGH); if (ulBitOrder == LSBFIRST) value |= digitalRead(ulDataPin) << i; else - value |= digitalRead(ulDataPin) << (32-i); + value |= digitalRead(ulDataPin) << (8-i); digitalWrite(ulClockPin,LOW); } @@ -47,12 +45,11 @@ uint32_t shiftIn( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder ) void shiftOut( uint32_t ulDataPin, uint32_t ulClockPin, uint32_t ulBitOrder, uint32_t ulVal ) { int i; - for(i = 0; i < 32; i++) { - + for(i = 0; i < 8; i++) { if(ulBitOrder == LSBFIRST) digitalWrite(ulDataPin, !!(ulVal & (1 << i))); else - digitalWrite(ulDataPin, !!(ulVal & (1 << (32-i)))); + digitalWrite(ulDataPin, !!(ulVal & (1 << (8-i)))); digitalWrite(ulClockPin, HIGH); digitalWrite(ulClockPin, LOW); From d7cbbf4f4bb3abee46f887ee8adbcb9e851594c9 Mon Sep 17 00:00:00 2001 From: davids Date: Fri, 5 Jun 2015 09:23:44 +0100 Subject: [PATCH 4/5] implement wiring_shift.c() --- cores/arduino/wiring_shift.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cores/arduino/wiring_shift.c b/cores/arduino/wiring_shift.c index 4451909b..41ad9f94 100755 --- a/cores/arduino/wiring_shift.c +++ b/cores/arduino/wiring_shift.c @@ -1,6 +1,7 @@ /* - Arduino.h - Main include file for the Arduino SDK - Copyright (c) 2005-2013 Arduino Team. All right reserved. + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + Copyright (c) 2005-2006 David A. Mellis" This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public From d45290e31df7def5c65e1951bd8d3e69347b3843 Mon Sep 17 00:00:00 2001 From: David Hunt Date: Fri, 5 Jun 2015 13:49:06 +0100 Subject: [PATCH 5/5] Update of precompiled driver library Signed-off-by: David Hunt --- variants/intel_edu_x/libarc32drv_edu.a | Bin 235596 -> 245414 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/variants/intel_edu_x/libarc32drv_edu.a b/variants/intel_edu_x/libarc32drv_edu.a index cc45370a74e77d276db2065f65bc033985c89b04..3328c742615f512437fc62fa436f2aaf0b24fac9 100644 GIT binary patch delta 29047 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 delta 22622 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 E130*LApigX