feng jiantao / arduino

Fork of arduino by SE HUI PARK

Files at this revision

API Documentation at this revision

Comitter:
gastonfeng
Date:
Tue Oct 23 16:04:36 2018 +0800
Parent:
0:3b83fc30bbdf
Child:
2:f032b07dbff0
Commit message:
pin

Changed in this revision

.library.json Show annotated file Show diff for this revision Revisions of this file
arduino.cpp Show annotated file Show diff for this revision Revisions of this file
arduino.h Show annotated file Show diff for this revision Revisions of this file
library.json Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.library.json	Tue Oct 23 16:04:36 2018 +0800
@@ -0,0 +1,40 @@
+{
+    "authors": [
+        {
+            "email": null, 
+            "url": "https://os.mbed.com/users/aluqard/", 
+            "maintainer": false, 
+            "name": "SE HUI PARK"
+        }
+    ], 
+    "description": "arduino library for mbed", 
+    "examples": [
+        "https://os.mbed.com/users/aluqard/code/Gameduino2/", 
+        "https://os.mbed.com/users/kkc/code/MemoryGame/"
+    ], 
+    "frameworks": [
+        "mbed"
+    ], 
+    "keywords": [
+        "arduino"
+    ], 
+    "name": "arduino", 
+    "platforms": [
+        "atmelsam", 
+        "freescalekinetis", 
+        "maxim32", 
+        "nordicnrf51", 
+        "nordicnrf52", 
+        "nxplpc", 
+        "siliconlabsefm32", 
+        "ststm32", 
+        "teensy", 
+        "wiznet7500"
+    ], 
+    "repository": {
+        "type": "hg", 
+        "url": "https://os.mbed.com/users/aluqard/code/arduino/"
+    }, 
+    "version": "3b83fc30bb", 
+    "id": 2171
+}
\ No newline at end of file
--- a/arduino.cpp	Fri Apr 11 07:21:59 2014 +0000
+++ b/arduino.cpp	Tue Oct 23 16:04:36 2018 +0800
@@ -61,7 +61,14 @@
     digitalRead()- TODO
     
 ******************************************************/
- 
+void *pinMode(PinName pin, uint8_t f)
+{
+    if (f == INPUT)
+        return new DigitalIn(pin);
+    else if (f == OUTPUT)
+        return new DigitalOut(pin);
+}
+
 /*****************************************************  
   Analog I/O
  
--- a/arduino.h	Fri Apr 11 07:21:59 2014 +0000
+++ b/arduino.h	Tue Oct 23 16:04:36 2018 +0800
@@ -4,7 +4,80 @@
 #include "mbed.h"
 #include "math.h"
 // Macros
- 
+//add by gastonfeng begin
+typedef enum WiringPinMode
+{
+        OUTPUT, /**< Basic digital output: when the pin is HIGH, the
+               voltage is held at +3.3v (Vcc) and when it is LOW, it
+               is pulled down to ground. */
+
+        OUTPUT_OPEN_DRAIN, /**< In open drain mode, the pin indicates
+                          "low" by accepting current flow to ground
+                          and "high" by providing increased
+                          impedance. An example use would be to
+                          connect a pin to a bus line (which is pulled
+                          up to a positive voltage by a separate
+                          supply through a large resistor). When the
+                          pin is high, not much current flows through
+                          to ground and the line stays at positive
+                          voltage; when the pin is low, the bus
+                          "drains" to ground with a small amount of
+                          current constantly flowing through the large
+                          resistor from the external supply. In this
+                          mode, no current is ever actually sourced
+                          from the pin. */
+
+        INPUT, /**< Basic digital input. The pin voltage is sampled; when
+              it is closer to 3.3v (Vcc) the pin status is high, and
+              when it is closer to 0v (ground) it is low. If no
+              external circuit is pulling the pin voltage to high or
+              low, it will tend to randomly oscillate and be very
+              sensitive to noise (e.g., a breath of air across the pin
+              might cause the state to flip). */
+
+        INPUT_ANALOG, /**< This is a special mode for when the pin will be
+                     used for analog (not digital) reads.  Enables ADC
+                     conversion to be performed on the voltage at the
+                     pin. */
+
+        INPUT_PULLUP, /**< The state of the pin in this mode is reported
+                     the same way as with INPUT, but the pin voltage
+                     is gently "pulled up" towards +3.3v. This means
+                     the state will be high unless an external device
+                     is specifically pulling the pin down to ground,
+                     in which case the "gentle" pull up will not
+                     affect the state of the input. */
+
+        INPUT_PULLDOWN, /**< The state of the pin in this mode is reported
+                       the same way as with INPUT, but the pin voltage
+                       is gently "pulled down" towards 0v. This means
+                       the state will be low unless an external device
+                       is specifically pulling the pin up to 3.3v, in
+                       which case the "gentle" pull down will not
+                       affect the state of the input. */
+
+        INPUT_FLOATING, /**< Synonym for INPUT. */
+
+        PWM, /**< This is a special mode for when the pin will be used for
+            PWM output (a special case of digital output). */
+
+        PWM_OPEN_DRAIN, /**< Like PWM, except that instead of alternating
+                       cycles of LOW and HIGH, the voltage on the pin
+                       consists of alternating cycles of LOW and
+                       floating (disconnected). */
+} WiringPinMode;
+
+// Roger Clark. Added _BV macro for AVR compatibility. As requested by @sweetlilmre and @stevestrong
+#ifndef _BV
+#define _BV(bit) (1 << (bit))
+#endif
+#define HIGH 1
+#define LOW 0
+#define digitalRead(x) x
+#define digitalWrite(a, b) a->write(b)
+void *pinMode(PinName pin, uint8_t f);
+//gastonfeng end
+
 #define PI 3.1415926535897932384626433832795
 #define HALF_PI 1.5707963267948966192313216916398
 #define TWO_PI 6.283185307179586476925286766559
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/library.json	Tue Oct 23 16:04:36 2018 +0800
@@ -0,0 +1,19 @@
+{
+    "authors": {
+        "name": "SE HUI PARK",
+        "url": "https://os.mbed.com/users/aluqard/"
+    },
+    "description": "arduino library for mbed",
+    "examples": [
+        "https://os.mbed.com/users/aluqard/code/Gameduino2/",
+        "https://os.mbed.com/users/kkc/code/MemoryGame/"
+    ],
+    "frameworks": "mbed",
+    "keywords": "arduino",
+    "name": "arduino",
+    "platforms": "*",
+    "repository": {
+        "type": "hg",
+        "url": "https://os.mbed.com/users/aluqard/code/arduino/"
+    }
+}
\ No newline at end of file