From 5516cee544f2424deb8c6e39ef7a219c3ae7bf4e Mon Sep 17 00:00:00 2001 From: tokiedokie Date: Wed, 6 Dec 2023 15:25:30 +0900 Subject: [PATCH] add ARDUINO_ARCH_MBED macro --- ArduCAM/ArduCAM.cpp | 2 +- ArduCAM/ArduCAM.h | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/ArduCAM/ArduCAM.cpp b/ArduCAM/ArduCAM.cpp index c88c33d1..6c060f4b 100644 --- a/ArduCAM/ArduCAM.cpp +++ b/ArduCAM/ArduCAM.cpp @@ -130,7 +130,7 @@ ArduCAM::ArduCAM(byte model ,int CS) B_CS = CS; } #else - #if (defined(ESP8266)||defined(ESP32)||defined(TEENSYDUINO) ||defined(NRF52840_XXAA)) + #if (defined(ESP8266) || defined(ESP32) || defined(TEENSYDUINO) || defined(NRF52840_XXAA) || defined(ARDUINO_ARCH_MBED)) B_CS = CS; #else P_CS = portOutputRegister(digitalPinToPort(CS)); diff --git a/ArduCAM/ArduCAM.h b/ArduCAM/ArduCAM.h index 0c6059d8..7a935137 100644 --- a/ArduCAM/ArduCAM.h +++ b/ArduCAM/ArduCAM.h @@ -306,6 +306,28 @@ #define regsize uint32_t #endif +#if defined(ARDUINO_ARCH_MBED) +#define cbi(reg, bitmask) digitalWrite(bitmask, LOW) +#define sbi(reg, bitmask) digitalWrite(bitmask, HIGH) +#define pulse_high(reg, bitmask) \ + sbi(reg, bitmask); \ + cbi(reg, bitmask); +#define pulse_low(reg, bitmask) \ + cbi(reg, bitmask); \ + sbi(reg, bitmask); + +#define cport(port, data) port &= data +#define sport(port, data) port |= data + +// Avoid conflicts with what is defined in STL. +// Not used in this library anyway +// #define swap(type, i, j) {type t = i; i = j; j = t;} + +#define fontbyte(x) cfont.font[x] + +#define regtype volatile uint32_t +#define regsize uint32_t +#endif /****************************************************/ /* Sensor related definition */