Update examples
This commit is contained in:
parent
e1e89bc044
commit
a45c3b1784
276 changed files with 66091 additions and 48794 deletions
|
|
@ -1,49 +1,48 @@
|
|||
#include <Arduino.h>
|
||||
#include <SPI.h>
|
||||
#include <Wire.h>
|
||||
#include "utilities.h"
|
||||
/**
|
||||
* @file boards.cpp
|
||||
* @author Lewis He (lewishe@outlook.com)
|
||||
* @license MIT
|
||||
* @copyright Copyright (c) 2024 ShenZhen XinYuan Electronic Technology Co., Ltd
|
||||
* @date 2024-04-24
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
#include <SD.h>
|
||||
#include <FS.h>
|
||||
#include "LoRaBoards.h"
|
||||
|
||||
#if defined(HAS_SDCARD)
|
||||
SPIClass SDCardSPI(HSPI);
|
||||
#endif
|
||||
|
||||
#ifdef HAS_DISPLAY
|
||||
#include <U8g2lib.h>
|
||||
|
||||
#ifndef DISPLAY_MODEL
|
||||
#define DISPLAY_MODEL U8G2_SSD1306_128X64_NONAME_F_HW_I2C
|
||||
#if defined(ARDUINO_ARCH_STM32)
|
||||
HardwareSerial SerialGPS(GPS_RX_PIN, GPS_TX_PIN);
|
||||
#endif
|
||||
|
||||
DISPLAY_MODEL *u8g2 = nullptr;
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5,0,0)
|
||||
#include "hal/gpio_hal.h"
|
||||
#endif
|
||||
|
||||
#ifndef OLED_WIRE_PORT
|
||||
#define OLED_WIRE_PORT Wire
|
||||
#endif
|
||||
|
||||
#if defined(HAS_PMU)
|
||||
#include "XPowersLib.h"
|
||||
#include "driver/gpio.h"
|
||||
#endif //ARDUINO_ARCH_ESP32
|
||||
|
||||
|
||||
DISPLAY_MODEL *u8g2 = NULL;
|
||||
static DevInfo_t devInfo;
|
||||
|
||||
|
||||
#ifdef HAS_PMU
|
||||
XPowersLibInterface *PMU = NULL;
|
||||
bool pmuInterrupt;
|
||||
|
||||
#ifndef PMU_WIRE_PORT
|
||||
#define PMU_WIRE_PORT Wire
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
bool pmuInterrupt;
|
||||
|
||||
void setPmuFlag()
|
||||
static void setPmuFlag()
|
||||
{
|
||||
pmuInterrupt = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
bool initPMU()
|
||||
bool beginPower()
|
||||
{
|
||||
#ifdef HAS_PMU
|
||||
if (!PMU) {
|
||||
PMU = new XPowersAXP2101(PMU_WIRE_PORT);
|
||||
if (!PMU->init()) {
|
||||
|
|
@ -146,7 +145,7 @@ bool initPMU()
|
|||
#endif /*CONFIG_IDF_TARGET_ESP32*/
|
||||
|
||||
|
||||
#if defined(LILYGO_TBeamS3_SUPREME_V3_0)
|
||||
#if defined(T_BEAM_S3_SUPREME)
|
||||
|
||||
//t-beam m.2 inface
|
||||
//gps
|
||||
|
|
@ -225,9 +224,6 @@ bool initPMU()
|
|||
PMU->enableSystemVoltageMeasure();
|
||||
PMU->enableVbusVoltageMeasure();
|
||||
PMU->enableBattVoltageMeasure();
|
||||
// It is necessary to disable the detection function of the TS pin on the board
|
||||
// without the battery temperature detection function, otherwise it will cause abnormal charging
|
||||
PMU->disableTSPinMeasure();
|
||||
|
||||
Serial.printf("=========================================\n");
|
||||
if (PMU->isChannelAvailable(XPOWERS_DCDC1)) {
|
||||
|
|
@ -288,41 +284,211 @@ bool initPMU()
|
|||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
void disablePeripherals()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
#else
|
||||
#define initPMU()
|
||||
#define disablePeripherals()
|
||||
|
||||
bool beginDisplay()
|
||||
{
|
||||
Wire.beginTransmission(DISPLAY_ADDR);
|
||||
if (Wire.endTransmission() == 0) {
|
||||
Serial.printf("Find Display model at 0x%X address\n", DISPLAY_ADDR);
|
||||
u8g2 = new DISPLAY_MODEL(U8G2_R0, U8X8_PIN_NONE);
|
||||
u8g2->begin();
|
||||
u8g2->clearBuffer();
|
||||
u8g2->setFont(u8g2_font_inb19_mr);
|
||||
u8g2->drawStr(0, 30, "LilyGo");
|
||||
u8g2->drawHLine(2, 35, 47);
|
||||
u8g2->drawHLine(3, 36, 47);
|
||||
u8g2->drawVLine(45, 32, 12);
|
||||
u8g2->drawVLine(46, 33, 12);
|
||||
u8g2->setFont(u8g2_font_inb19_mf);
|
||||
u8g2->drawStr(58, 60, "LoRa");
|
||||
u8g2->sendBuffer();
|
||||
u8g2->setFont(u8g2_font_fur11_tf);
|
||||
delay(3000);
|
||||
return true;
|
||||
}
|
||||
|
||||
Serial.printf("Warning: Failed to find Display at 0x%0X address\n", DISPLAY_ADDR);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
bool beginSDCard()
|
||||
{
|
||||
#ifdef SDCARD_CS
|
||||
if (SD.begin(SDCARD_CS, SDCardSPI)) {
|
||||
uint32_t cardSize = SD.cardSize() / (1024 * 1024);
|
||||
Serial.print("Sd Card init succeeded, The current available capacity is ");
|
||||
Serial.print(cardSize / 1024.0);
|
||||
Serial.println(" GB");
|
||||
return true;
|
||||
} else {
|
||||
Serial.println("Warning: Failed to init Sd Card");
|
||||
}
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
void beginWiFi()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
void printWakeupReason()
|
||||
{
|
||||
#ifdef ESP32
|
||||
Serial.print("Reset reason:");
|
||||
esp_sleep_wakeup_cause_t wakeup_reason;
|
||||
wakeup_reason = esp_sleep_get_wakeup_cause();
|
||||
switch (wakeup_reason) {
|
||||
case ESP_SLEEP_WAKEUP_UNDEFINED:
|
||||
Serial.println(" In case of deep sleep, reset was not caused by exit from deep sleep");
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_ALL :
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_EXT0 :
|
||||
Serial.println("Wakeup caused by external signal using RTC_IO");
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_EXT1 :
|
||||
Serial.println("Wakeup caused by external signal using RTC_CNTL");
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_TIMER :
|
||||
Serial.println("Wakeup caused by timer");
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_TOUCHPAD :
|
||||
Serial.println("Wakeup caused by touchpad");
|
||||
break;
|
||||
case ESP_SLEEP_WAKEUP_ULP :
|
||||
Serial.println("Wakeup caused by ULP program");
|
||||
break;
|
||||
default :
|
||||
Serial.printf("Wakeup was not caused by deep sleep: %d\n", wakeup_reason);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void getChipInfo()
|
||||
{
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
|
||||
Serial.println("-----------------------------------");
|
||||
|
||||
printWakeupReason();
|
||||
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S3)
|
||||
|
||||
if (psramFound()) {
|
||||
uint32_t psram = ESP.getPsramSize();
|
||||
devInfo.psramSize = psram / 1024.0 / 1024.0;
|
||||
Serial.printf("PSRAM is enable! PSRAM: %.2fMB\n", devInfo.psramSize);
|
||||
} else {
|
||||
Serial.println("PSRAM is disable!");
|
||||
devInfo.psramSize = 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
SPIClass SDSPI(HSPI);
|
||||
Serial.print("Flash:");
|
||||
devInfo.flashSize = ESP.getFlashChipSize() / 1024.0 / 1024.0;
|
||||
devInfo.flashSpeed = ESP.getFlashChipSpeed() / 1000 / 1000;
|
||||
devInfo.chipModel = ESP.getChipModel();
|
||||
devInfo.chipModelRev = ESP.getChipRevision();
|
||||
devInfo.chipFreq = ESP.getCpuFreqMHz();
|
||||
|
||||
Serial.print(devInfo.flashSize);
|
||||
Serial.println(" MB");
|
||||
Serial.print("Flash speed:");
|
||||
Serial.print(devInfo.flashSpeed);
|
||||
Serial.println(" M");
|
||||
Serial.print("Model:");
|
||||
|
||||
Serial.println(devInfo.chipModel);
|
||||
Serial.print("Chip Revision:");
|
||||
Serial.println(devInfo.chipModelRev);
|
||||
Serial.print("Freq:");
|
||||
Serial.print(devInfo.chipFreq);
|
||||
Serial.println(" MHZ");
|
||||
Serial.print("SDK Ver:");
|
||||
Serial.println(ESP.getSdkVersion());
|
||||
Serial.print("DATE:");
|
||||
Serial.println(__DATE__);
|
||||
Serial.print("TIME:");
|
||||
Serial.println(__TIME__);
|
||||
|
||||
Serial.print("EFUSE MAC: ");
|
||||
Serial.print( ESP.getEfuseMac(), HEX);
|
||||
Serial.println();
|
||||
|
||||
Serial.println("-----------------------------------");
|
||||
|
||||
#elif defined(ARDUINO_ARCH_STM32)
|
||||
uint32_t uid[3];
|
||||
|
||||
uid[0] = HAL_GetUIDw0();
|
||||
uid[1] = HAL_GetUIDw1();
|
||||
uid[2] = HAL_GetUIDw2();
|
||||
Serial.print("STM UID: 0X");
|
||||
Serial.print( uid[0], HEX);
|
||||
Serial.print( uid[1], HEX);
|
||||
Serial.print( uid[2], HEX);
|
||||
Serial.println();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void initBoard()
|
||||
|
||||
void setupBoards()
|
||||
{
|
||||
Serial.begin(115200);
|
||||
Serial.println("initBoard");
|
||||
|
||||
Serial.println("setupBoards");
|
||||
|
||||
Serial.begin(115200);
|
||||
|
||||
getChipInfo();
|
||||
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
SPI.begin(RADIO_SCLK_PIN, RADIO_MISO_PIN, RADIO_MOSI_PIN);
|
||||
#elif defined(ARDUINO_ARCH_STM32)
|
||||
SPI.setMISO(RADIO_MISO_PIN);
|
||||
SPI.setMOSI(RADIO_MOSI_PIN);
|
||||
SPI.setSCLK(RADIO_SCLK_PIN);
|
||||
SPI.begin();
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
SDCardSPI.begin(SDCARD_SCLK, SDCARD_MISO, SDCARD_MOSI);
|
||||
#endif
|
||||
|
||||
#ifdef I2C_SDA
|
||||
Wire.begin(I2C_SDA, I2C_SCL);
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef I2C1_SDA
|
||||
Wire1.begin(I2C1_SDA, I2C1_SCL);
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
#ifdef HAS_GPS
|
||||
Serial1.begin(GPS_BAUD_RATE, SERIAL_8N1, GPS_RX_PIN, GPS_TX_PIN);
|
||||
#endif
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
SerialGPS.begin(GPS_BAUD_RATE, SERIAL_8N1, GPS_RX_PIN, GPS_TX_PIN);
|
||||
#elif defined(ARDUINO_ARCH_STM32)
|
||||
SerialGPS.setRx(GPS_RX_PIN);
|
||||
SerialGPS.setTx(GPS_TX_PIN);
|
||||
SerialGPS.begin(GPS_BAUD_RATE);
|
||||
#endif // ARDUINO_ARCH_
|
||||
#endif // HAS_GPS
|
||||
|
||||
#if OLED_RST
|
||||
pinMode(OLED_RST, OUTPUT);
|
||||
|
|
@ -331,92 +497,123 @@ void initBoard()
|
|||
digitalWrite(OLED_RST, HIGH); delay(20);
|
||||
#endif
|
||||
|
||||
initPMU();
|
||||
|
||||
|
||||
#ifdef BOARD_LED
|
||||
/*
|
||||
* T-BeamV1.0, V1.1 LED defaults to low level as trun on,
|
||||
* T-Beam LED defaults to low level as turn on,
|
||||
* so it needs to be forced to pull up
|
||||
* * * * */
|
||||
#if LED_ON == LOW
|
||||
gpio_hold_dis(GPIO_NUM_4);
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
gpio_hold_dis((gpio_num_t)BOARD_LED);
|
||||
#endif //ARDUINO_ARCH_ESP32
|
||||
#endif
|
||||
|
||||
pinMode(BOARD_LED, OUTPUT);
|
||||
digitalWrite(BOARD_LED, LED_ON);
|
||||
#endif
|
||||
|
||||
#ifdef GPS_EN_PIN
|
||||
pinMode(GPS_EN_PIN, OUTPUT);
|
||||
digitalWrite(GPS_EN_PIN, HIGH);
|
||||
#endif
|
||||
|
||||
#ifdef HAS_DISPLAY
|
||||
Wire.beginTransmission(0x3C);
|
||||
if (Wire.endTransmission() == 0) {
|
||||
Serial.println("Started OLED");
|
||||
u8g2 = new DISPLAY_MODEL(U8G2_R0, U8X8_PIN_NONE);
|
||||
u8g2->begin();
|
||||
u8g2->clearBuffer();
|
||||
u8g2->setFlipMode(0);
|
||||
u8g2->setFontMode(1); // Transparent
|
||||
u8g2->setDrawColor(1);
|
||||
u8g2->setFontDirection(0);
|
||||
u8g2->firstPage();
|
||||
do {
|
||||
u8g2->setFont(u8g2_font_inb19_mr);
|
||||
u8g2->drawStr(0, 30, "LilyGo");
|
||||
u8g2->drawHLine(2, 35, 47);
|
||||
u8g2->drawHLine(3, 36, 47);
|
||||
u8g2->drawVLine(45, 32, 12);
|
||||
u8g2->drawVLine(46, 33, 12);
|
||||
u8g2->setFont(u8g2_font_inb19_mf);
|
||||
u8g2->drawStr(58, 60, "LoRa");
|
||||
} while ( u8g2->nextPage() );
|
||||
u8g2->sendBuffer();
|
||||
u8g2->setFont(u8g2_font_fur11_tf);
|
||||
delay(3000);
|
||||
}
|
||||
#ifdef GPS_RST_PIN
|
||||
pinMode(GPS_RST_PIN, OUTPUT);
|
||||
digitalWrite(GPS_RST_PIN, HIGH);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
if (u8g2) {
|
||||
u8g2->setFont(u8g2_font_ncenB08_tr);
|
||||
}
|
||||
pinMode(SDCARD_MISO, INPUT_PULLUP);
|
||||
SDSPI.begin(SDCARD_SCLK, SDCARD_MISO, SDCARD_MOSI, SDCARD_CS);
|
||||
if (u8g2) {
|
||||
u8g2->clearBuffer();
|
||||
}
|
||||
|
||||
if (!SD.begin(SDCARD_CS, SDSPI)) {
|
||||
|
||||
Serial.println("setupSDCard FAIL");
|
||||
if (u8g2) {
|
||||
do {
|
||||
u8g2->setCursor(0, 16);
|
||||
u8g2->println( "SDCard FAILED");;
|
||||
} while ( u8g2->nextPage() );
|
||||
}
|
||||
|
||||
} else {
|
||||
uint32_t cardSize = SD.cardSize() / (1024 * 1024);
|
||||
if (u8g2) {
|
||||
do {
|
||||
u8g2->setCursor(0, 16);
|
||||
u8g2->print( "SDCard:");;
|
||||
u8g2->print(cardSize / 1024.0);;
|
||||
u8g2->println(" GB");;
|
||||
} while ( u8g2->nextPage() );
|
||||
}
|
||||
|
||||
Serial.print("setupSDCard PASS . SIZE = ");
|
||||
Serial.print(cardSize / 1024.0);
|
||||
Serial.println(" GB");
|
||||
}
|
||||
if (u8g2) {
|
||||
u8g2->sendBuffer();
|
||||
}
|
||||
delay(3000);
|
||||
#if defined(ARDUINO_ARCH_STM32)
|
||||
SerialGPS.println("@GSR"); delay(300);
|
||||
SerialGPS.println("@GSR"); delay(300);
|
||||
SerialGPS.println("@GSR"); delay(300);
|
||||
SerialGPS.println("@GSR"); delay(300);
|
||||
SerialGPS.println("@GSR"); delay(300);
|
||||
#endif
|
||||
|
||||
beginPower();
|
||||
|
||||
beginSDCard();
|
||||
|
||||
beginDisplay();
|
||||
|
||||
beginWiFi();
|
||||
|
||||
Serial.println("init done . ");
|
||||
}
|
||||
|
||||
|
||||
void printResult(bool radio_online)
|
||||
{
|
||||
Serial.print("Radio : ");
|
||||
Serial.println((radio_online) ? "+" : "-");
|
||||
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S3)
|
||||
|
||||
Serial.print("PSRAM : ");
|
||||
Serial.println((psramFound()) ? "+" : "-");
|
||||
|
||||
Serial.print("Display : ");
|
||||
Serial.println(( u8g2) ? "+" : "-");
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
Serial.print("Sd Card : ");
|
||||
Serial.println((SD.cardSize() != 0) ? "+" : "-");
|
||||
#endif
|
||||
|
||||
#ifdef HAS_PMU
|
||||
Serial.print("Power : ");
|
||||
Serial.println(( PMU ) ? "+" : "-");
|
||||
#endif
|
||||
|
||||
|
||||
if (u8g2) {
|
||||
|
||||
u8g2->clearBuffer();
|
||||
u8g2->setFont(u8g2_font_NokiaLargeBold_tf );
|
||||
uint16_t str_w = u8g2->getStrWidth(BOARD_VARIANT_NAME);
|
||||
u8g2->drawStr((u8g2->getWidth() - str_w) / 2, 16, BOARD_VARIANT_NAME);
|
||||
u8g2->drawHLine(5, 21, u8g2->getWidth() - 5);
|
||||
|
||||
u8g2->drawStr( 0, 38, "Disp:"); u8g2->drawStr( 45, 38, ( u8g2) ? "+" : "-");
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
u8g2->drawStr( 0, 54, "SD :"); u8g2->drawStr( 45, 54, (SD.cardSize() != 0) ? "+" : "-");
|
||||
#endif
|
||||
|
||||
u8g2->drawStr( 62, 38, "Radio:"); u8g2->drawStr( 120, 38, ( radio_online ) ? "+" : "-");
|
||||
|
||||
#ifdef HAS_PMU
|
||||
u8g2->drawStr( 62, 54, "Power:"); u8g2->drawStr( 120, 54, ( PMU ) ? "+" : "-");
|
||||
#endif
|
||||
|
||||
u8g2->sendBuffer();
|
||||
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
static uint8_t ledState = LOW;
|
||||
static const uint32_t debounceDelay = 50;
|
||||
static uint32_t lastDebounceTime = 0;
|
||||
|
||||
void flashLed()
|
||||
{
|
||||
#ifdef BOARD_LED
|
||||
if ((millis() - lastDebounceTime) > debounceDelay) {
|
||||
ledState = !ledState;
|
||||
if (ledState) {
|
||||
digitalWrite(BOARD_LED, LED_ON);
|
||||
} else {
|
||||
digitalWrite(BOARD_LED, !LED_ON);
|
||||
}
|
||||
lastDebounceTime = millis();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
94
examples/Sensor/QMC6310_GetPolarExample/LoRaBoards.h
Normal file
94
examples/Sensor/QMC6310_GetPolarExample/LoRaBoards.h
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
/**
|
||||
* @file boards.h
|
||||
* @author Lewis He (lewishe@outlook.com)
|
||||
* @license MIT
|
||||
* @copyright Copyright (c) 2024 ShenZhen XinYuan Electronic Technology Co., Ltd
|
||||
* @date 2024-04-25
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
#include "utilities.h"
|
||||
|
||||
#ifdef HAS_SDCARD
|
||||
#include <SD.h>
|
||||
#endif
|
||||
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
#include <FS.h>
|
||||
#include <WiFi.h>
|
||||
#endif
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <SPI.h>
|
||||
#include <Wire.h>
|
||||
#include <U8g2lib.h>
|
||||
#include <XPowersLib.h>
|
||||
|
||||
#ifndef DISPLAY_MODEL
|
||||
#define DISPLAY_MODEL U8G2_SSD1306_128X64_NONAME_F_HW_I2C
|
||||
#endif
|
||||
|
||||
#ifndef OLED_WIRE_PORT
|
||||
#define OLED_WIRE_PORT Wire
|
||||
#endif
|
||||
|
||||
#ifndef PMU_WIRE_PORT
|
||||
#define PMU_WIRE_PORT Wire
|
||||
#endif
|
||||
|
||||
#ifndef DISPLAY_ADDR
|
||||
#define DISPLAY_ADDR 0x3C
|
||||
#endif
|
||||
|
||||
#ifndef LORA_FREQ_CONFIG
|
||||
#define LORA_FREQ_CONFIG 915.0
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
typedef struct {
|
||||
String chipModel;
|
||||
float psramSize;
|
||||
uint8_t chipModelRev;
|
||||
uint8_t chipFreq;
|
||||
uint8_t flashSize;
|
||||
uint8_t flashSpeed;
|
||||
} DevInfo_t;
|
||||
|
||||
|
||||
void setupBoards();
|
||||
|
||||
bool beginSDCard();
|
||||
|
||||
bool beginDisplay();
|
||||
|
||||
void disablePeripherals();
|
||||
|
||||
bool beginPower();
|
||||
|
||||
void printResult(bool radio_online);
|
||||
|
||||
void flashLed();
|
||||
|
||||
extern XPowersLibInterface *PMU;
|
||||
extern DISPLAY_MODEL *u8g2;
|
||||
extern bool pmuInterrupt;
|
||||
|
||||
#define U8G2_HOR_ALIGN_CENTER(t) ((u8g2->getDisplayWidth() - (u8g2->getUTF8Width(t))) / 2)
|
||||
#define U8G2_HOR_ALIGN_RIGHT(t) ( u8g2->getDisplayWidth() - u8g2->getUTF8Width(t))
|
||||
|
||||
|
||||
#if defined(ARDUINO_ARCH_ESP32)
|
||||
|
||||
#if defined(HAS_SDCARD)
|
||||
extern SPIClass SDCardSPI;
|
||||
#endif
|
||||
|
||||
#define SerialGPS Serial1
|
||||
#elif defined(ARDUINO_ARCH_STM32)
|
||||
extern HardwareSerial SerialGPS;
|
||||
#endif
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
#include <SPI.h>
|
||||
#include <Arduino.h>
|
||||
#include "SensorQMC6310.hpp"
|
||||
#include "boards.h"
|
||||
#include "LoRaBoards.h"
|
||||
|
||||
SensorQMC6310 qmc;
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ void setup()
|
|||
Serial.begin(115200);
|
||||
while (!Serial);
|
||||
|
||||
initBoard();
|
||||
setupBoards();
|
||||
|
||||
if (!qmc.begin(Wire, QMC6310_SLAVE_ADDRESS, I2C_SDA, I2C_SCL)) {
|
||||
Serial.println("Failed to find QMC6310 - check your wiring!");
|
||||
|
|
|
|||
|
|
@ -1,54 +1,63 @@
|
|||
|
||||
/**
|
||||
* @file utilities.h
|
||||
* @author Lewis He (lewishe@outlook.com)
|
||||
* @license MIT
|
||||
* @copyright Copyright (c) 2024 ShenZhen XinYuan Electronic Technology Co., Ltd
|
||||
* @date 2024-05-12
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
// #define LILYGO_TBeam_V0_7
|
||||
// #define LILYGO_TBeam_V1_X
|
||||
// #define LILYGO_TBeamS3_SUPREME_V3_0
|
||||
// #define LILYGO_T3_V1_0
|
||||
// #define LILYGO_T3_V1_3
|
||||
// #define LILYGO_T3_V1_6
|
||||
// #define LILYGO_T3_V2_0
|
||||
// #define LILYGO_T3_S3_V1_0
|
||||
/*
|
||||
* The default program uses 868MHz,
|
||||
* if you need to change it,
|
||||
* please open this note and change to the frequency you need to test
|
||||
* */
|
||||
|
||||
#ifndef LoRa_frequency
|
||||
#define LoRa_frequency 868.0
|
||||
// Support board list , Macro definition below, select the board definition to be used
|
||||
|
||||
// #define T3_V1_3_SX1276
|
||||
// #define T3_V1_3_SX1278
|
||||
|
||||
// #define T3_V1_6_SX1276
|
||||
// #define T3_V1_6_SX1278
|
||||
|
||||
// #define T3_V1_6_SX1276_TCXO
|
||||
// #define T3_V3_0_SX1276_TCXO
|
||||
|
||||
// #define T_BEAM_SX1262
|
||||
// #define T_BEAM_SX1276
|
||||
// #define T_BEAM_SX1278
|
||||
|
||||
// #define T_BEAM_S3_SUPREME
|
||||
|
||||
// #define T3_S3_V1_2_SX1262
|
||||
// #define T3_S3_V1_2_SX1276
|
||||
// #define T3_S3_V1_2_SX1278
|
||||
// #define T3_S3_V1_2_SX1280
|
||||
// #define T3_S3_V1_2_SX1280_PA
|
||||
// #define T3_S3_V1_2_LR1121
|
||||
|
||||
// #define T_MOTION
|
||||
|
||||
// #define T3_C6
|
||||
|
||||
|
||||
#define UNUSED_PIN (0)
|
||||
|
||||
#if defined(T_BEAM_SX1262) || defined(T_BEAM_SX1276) || defined(T_BEAM_SX1278)
|
||||
|
||||
|
||||
#if defined(T_BEAM_SX1262)
|
||||
#ifndef USING_SX1262
|
||||
#define USING_SX1262
|
||||
#endif
|
||||
#elif defined(T_BEAM_SX1276)
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
#elif defined(T_BEAM_SX1278)
|
||||
#ifndef USING_SX1278
|
||||
#define USING_SX1278
|
||||
#endif
|
||||
#endif // T_BEAM_SX1262
|
||||
|
||||
|
||||
#define UNUSE_PIN (0)
|
||||
|
||||
#if defined(LILYGO_TBeam_V0_7)
|
||||
#define GPS_RX_PIN 12
|
||||
#define GPS_TX_PIN 15
|
||||
#define BUTTON_PIN 39
|
||||
#define BUTTON_PIN_MASK GPIO_SEL_39
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define BOARD_LED 14
|
||||
#define LED_ON HIGH
|
||||
#define LED_OFF LOW
|
||||
|
||||
#define GPS_BAUD_RATE 9600
|
||||
#define HAS_GPS
|
||||
#define HAS_DISPLAY //Optional, bring your own board, no OLED !!
|
||||
|
||||
#elif defined(LILYGO_TBeam_V1_X)
|
||||
|
||||
#define GPS_RX_PIN 34
|
||||
#define GPS_TX_PIN 12
|
||||
#define BUTTON_PIN 38
|
||||
|
|
@ -61,11 +70,15 @@
|
|||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN 33
|
||||
// SX1276/78
|
||||
#define RADIO_DIO2_PIN 32
|
||||
// SX1262
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
|
||||
#define BOARD_LED 4
|
||||
#define LED_ON LOW
|
||||
#define LED_OFF HIGH
|
||||
|
|
@ -75,20 +88,292 @@
|
|||
#define HAS_DISPLAY //Optional, bring your own board, no OLED !!
|
||||
#define HAS_PMU
|
||||
|
||||
#define BOARD_VARIANT_NAME "T-Beam"
|
||||
|
||||
#elif defined(LILYGO_TBeamS3_SUPREME_V3_0)
|
||||
#elif defined(T3_V1_3_SX1276) || defined(T3_V1_3_SX1278)
|
||||
|
||||
#define I2C_SDA 17
|
||||
#define I2C_SCL 18
|
||||
|
||||
#define I2C1_SDA 42
|
||||
#define I2C1_SCL 41
|
||||
#if defined(T3_V1_3_SX1276)
|
||||
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
|
||||
#elif defined(T3_V1_3_SX1278)
|
||||
|
||||
#ifndef USING_SX1278
|
||||
#define USING_SX1278
|
||||
#endif
|
||||
|
||||
#endif // T3_V1_3_SX1276
|
||||
|
||||
|
||||
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSED_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 14
|
||||
#define RADIO_DIO1_PIN 33
|
||||
|
||||
// SX1276/78
|
||||
#define RADIO_DIO2_PIN 32
|
||||
// SX1262
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
|
||||
#define ADC_PIN 35
|
||||
#define HAS_DISPLAY
|
||||
#define BOARD_VARIANT_NAME "T3 V1.3"
|
||||
|
||||
#elif defined(T3_V1_6_SX1276) || defined(T3_V1_6_SX1278)
|
||||
|
||||
|
||||
#if defined(T3_V1_6_SX1276)
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
#elif defined(T3_V1_6_SX1278)
|
||||
#ifndef USING_SX1278
|
||||
#define USING_SX1278
|
||||
#endif
|
||||
#endif // T3_V1_6_SX1276
|
||||
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSED_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN 33
|
||||
// SX1276/78
|
||||
#define RADIO_DIO2_PIN 32
|
||||
// SX1262
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define SDCARD_MOSI 15
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 25
|
||||
#define LED_ON HIGH
|
||||
|
||||
#define ADC_PIN 35
|
||||
|
||||
#define HAS_SDCARD
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#define BOARD_VARIANT_NAME "T3 V1.6"
|
||||
|
||||
|
||||
#elif defined(T3_V1_6_SX1276_TCXO)
|
||||
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSED_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN -1//33
|
||||
/*
|
||||
* In the T3 V1.6.1 TCXO version, Radio DIO1 is connected to Radio’s
|
||||
* internal temperature-compensated crystal oscillator enable
|
||||
* */
|
||||
// TCXO pin must be set to HIGH before enabling Radio
|
||||
#define RADIO_TCXO_ENABLE 33
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define SDCARD_MOSI 15
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 25
|
||||
#define LED_ON HIGH
|
||||
|
||||
#define ADC_PIN 35
|
||||
|
||||
#define HAS_SDCARD
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#define BOARD_VARIANT_NAME "T3 V1.6 TCXO"
|
||||
|
||||
|
||||
|
||||
#elif defined(T3_V3_0_SX1276_TCXO)
|
||||
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSED_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN 33
|
||||
// TCXO pin must be set to HIGH before enabling Radio
|
||||
#define RADIO_TCXO_ENABLE 12
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define SDCARD_MOSI 15
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 25
|
||||
#define LED_ON HIGH
|
||||
|
||||
#define ADC_PIN 35
|
||||
|
||||
#define HAS_SDCARD
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#define BOARD_VARIANT_NAME "T3 V3.0 TCXO"
|
||||
|
||||
|
||||
#elif defined(T3_S3_V1_2_SX1262) || \
|
||||
defined(T3_S3_V1_2_SX1276) || \
|
||||
defined(T3_S3_V1_2_SX1278) || \
|
||||
defined(T3_S3_V1_2_SX1280) || \
|
||||
defined(T3_S3_V1_2_SX1280_PA) || \
|
||||
defined(T3_S3_V1_2_LR1121)
|
||||
|
||||
|
||||
#if defined(T3_S3_V1_2_SX1262)
|
||||
#ifndef USING_SX1262
|
||||
#define USING_SX1262
|
||||
#endif
|
||||
#elif defined(T3_S3_V1_2_SX1276)
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
#elif defined(T3_S3_V1_2_SX1278)
|
||||
#ifndef USING_SX1278
|
||||
#define USING_SX1278
|
||||
#endif
|
||||
#elif defined(T3_S3_V1_2_SX1280)
|
||||
#ifndef USING_SX1280
|
||||
#define USING_SX1280
|
||||
#endif
|
||||
#elif defined(T3_S3_V1_2_SX1280_PA)
|
||||
#ifndef USING_SX1280
|
||||
#define USING_SX1280
|
||||
#endif
|
||||
#elif defined(T3_S3_V1_2_LR1121)
|
||||
#ifndef USING_LR1121
|
||||
#define USING_LR1121
|
||||
#endif
|
||||
|
||||
#endif // T3_S3_V1_2_SX1262
|
||||
|
||||
|
||||
#define I2C_SDA 18
|
||||
#define I2C_SCL 17
|
||||
#define OLED_RST UNUSED_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 3
|
||||
#define RADIO_MOSI_PIN 6
|
||||
#define RADIO_CS_PIN 7
|
||||
|
||||
#define SDCARD_MOSI 11
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 37
|
||||
#define LED_ON HIGH
|
||||
|
||||
#define BAT_ADC_PIN 1
|
||||
#define BUTTON_PIN 0
|
||||
|
||||
#define RADIO_RST_PIN 8
|
||||
|
||||
#if defined(T3_S3_V1_2_SX1262)
|
||||
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_BUSY_PIN 34
|
||||
|
||||
#elif defined(T3_S3_V1_2_SX1276) || defined(T3_S3_V1_2_SX1278)
|
||||
//!SX1276/78 module only
|
||||
#define RADIO_BUSY_PIN 33 //DIO1
|
||||
|
||||
#define RADIO_DIO0_PIN 9
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_DIO2_PIN 34
|
||||
#define RADIO_DIO3_PIN 21
|
||||
#define RADIO_DIO4_PIN 10
|
||||
#define RADIO_DIO5_PIN 36
|
||||
|
||||
#elif defined(T3_S3_V1_2_SX1280)
|
||||
|
||||
#define RADIO_DIO1_PIN 9 //SX1280 DIO1 = IO9
|
||||
#define RADIO_BUSY_PIN 36 //SX1280 BUSY = IO36
|
||||
|
||||
#elif defined(T3_S3_V1_2_SX1280_PA)
|
||||
|
||||
#define RADIO_DIO1_PIN 9 //SX1280 DIO1 = IO9
|
||||
#define RADIO_BUSY_PIN 36 //SX1280 BUSY = IO36
|
||||
#define RADIO_RX_PIN 21
|
||||
#define RADIO_TX_PIN 10
|
||||
|
||||
|
||||
#elif defined(T3_S3_V1_2_LR1121)
|
||||
|
||||
#define RADIO_DIO9_PIN 36 //LR1121 DIO9 = IO36
|
||||
#define RADIO_BUSY_PIN 34 //LR1121 BUSY = IO33
|
||||
|
||||
#endif
|
||||
|
||||
#define HAS_SDCARD
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#define BOARD_VARIANT_NAME "T3 S3 V1.X"
|
||||
|
||||
|
||||
#elif defined(T_BEAM_S3_SUPREME)
|
||||
|
||||
|
||||
#ifndef USING_SX1262
|
||||
#define USING_SX1262
|
||||
#endif
|
||||
|
||||
|
||||
#define I2C_SDA 17
|
||||
#define I2C_SCL 18
|
||||
|
||||
#define I2C1_SDA 42
|
||||
#define I2C1_SCL 41
|
||||
#define PMU_IRQ 40
|
||||
|
||||
#define GPS_RX_PIN 9
|
||||
#define GPS_TX_PIN 8
|
||||
#define GPS_WAKEUP_PIN 7
|
||||
#define GPS_1PPS_PIN 6
|
||||
#define GPS_PPS_PIN 6
|
||||
|
||||
#define BUTTON_PIN 0
|
||||
#define BUTTON_PIN_MASK GPIO_SEL_0
|
||||
|
|
@ -129,100 +414,85 @@
|
|||
#define __HAS_SPI1__
|
||||
#define __HAS_SENSOR__
|
||||
|
||||
#define PMU_WIRE_PORT Wire1
|
||||
#define DISPLAY_MODEL U8G2_SH1106_128X64_NONAME_F_HW_I2C
|
||||
#define PMU_WIRE_PORT Wire1
|
||||
#define DISPLAY_MODEL U8G2_SH1106_128X64_NONAME_F_HW_I2C
|
||||
#define BOARD_VARIANT_NAME "T-Beam S3"
|
||||
|
||||
#elif defined(LILYGO_T3_V1_0)
|
||||
#define I2C_SDA 4
|
||||
#define I2C_SCL 15
|
||||
#define OLED_RST 16
|
||||
#elif defined(T_MOTION_S76G)
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 14
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#elif defined(LILYGO_T3_V1_3)
|
||||
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSE_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 14
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define ADC_PIN 35
|
||||
|
||||
#define HAS_DISPLAY
|
||||
#elif defined(LILYGO_T3_V1_6)
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSE_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 23
|
||||
#define RADIO_DIO1_PIN 33
|
||||
#define RADIO_BUSY_PIN 32
|
||||
|
||||
#define SDCARD_MOSI 15
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 25
|
||||
#define LED_ON HIGH
|
||||
|
||||
#define ADC_PIN 35
|
||||
|
||||
#define HAS_SDCARD
|
||||
#define HAS_DISPLAY
|
||||
|
||||
#elif defined(LILYGO_T3_V2_0)
|
||||
#define I2C_SDA 21
|
||||
#define I2C_SCL 22
|
||||
#define OLED_RST UNUSE_PIN
|
||||
|
||||
#define RADIO_SCLK_PIN 5
|
||||
#define RADIO_MISO_PIN 19
|
||||
#define RADIO_MOSI_PIN 27
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO0_PIN 26
|
||||
#define RADIO_RST_PIN 14
|
||||
#define RADIO_DIO1_PIN UNUSE_PIN
|
||||
#define RADIO_BUSY_PIN UNUSE_PIN
|
||||
|
||||
#define SDCARD_MOSI 15
|
||||
#define SDCARD_MISO 2
|
||||
#define SDCARD_SCLK 14
|
||||
#define SDCARD_CS 13
|
||||
|
||||
#define BOARD_LED 0
|
||||
#define LED_ON LOW
|
||||
|
||||
#define HAS_DISPLAY
|
||||
#define HAS_SDCARD
|
||||
#ifndef USING_SX1276
|
||||
#define USING_SX1276
|
||||
#endif
|
||||
|
||||
|
||||
#define RADIO_SCLK_PIN PB13
|
||||
#define RADIO_MISO_PIN PB14
|
||||
#define RADIO_MOSI_PIN PB15
|
||||
#define RADIO_CS_PIN PB12
|
||||
#define RADIO_RST_PIN PB10
|
||||
|
||||
#define RADIO_DIO0_PIN PB11
|
||||
#define RADIO_DIO1_PIN PC13
|
||||
#define RADIO_DIO2_PIN PB9
|
||||
#define RADIO_DIO3_PIN PB4
|
||||
#define RADIO_DIO4_PIN PB3
|
||||
#define RADIO_DIO5_PIN PA15
|
||||
|
||||
#undef RADIO_BUSY_PIN
|
||||
#undef RADIO_DIO1_PIN
|
||||
#define RADIO_BUSY_PIN PC13 //DIO1
|
||||
#define RADIO_DIO1_PIN PB11 //DIO0
|
||||
|
||||
#define RADIO_SWITCH_PIN PA1 //1:Rx, 0:Tx
|
||||
|
||||
#define GPS_EN_PIN PC6
|
||||
#define GPS_RST_PIN PB2
|
||||
#define GPS_RX_PIN PC11
|
||||
#define GPS_TX_PIN PC10
|
||||
#define GPS_ENABLE_PIN PC6
|
||||
#define GPS_BAUD_RATE 115200
|
||||
#define GPS_PPS_PIN PB5
|
||||
|
||||
#define UART_RX_PIN PA10
|
||||
#define UART_TX_PIN PA9
|
||||
|
||||
#define I2C_SCL PB6
|
||||
#define I2C_SDA PB7
|
||||
|
||||
#define BOARD_VARIANT_NAME "T-Motion S76G"
|
||||
|
||||
#define HAS_GPS
|
||||
|
||||
#elif defined(T3_C6)
|
||||
|
||||
|
||||
#ifndef USING_SX1262
|
||||
#define USING_SX1262
|
||||
#endif
|
||||
|
||||
|
||||
#define RADIO_SCLK_PIN 6
|
||||
#define RADIO_MISO_PIN 1
|
||||
#define RADIO_MOSI_PIN 0
|
||||
#define RADIO_CS_PIN 18
|
||||
#define RADIO_DIO1_PIN 23
|
||||
#define RADIO_BUSY_PIN 22
|
||||
#define RADIO_RST_PIN 21
|
||||
|
||||
#define I2C_SDA 8
|
||||
#define I2C_SCL 9
|
||||
|
||||
#define BOARD_LED 7
|
||||
#define LED_ON HIGH
|
||||
#define RADIO_RX_PIN 15
|
||||
#define RADIO_TX_PIN 14
|
||||
|
||||
|
||||
#define BOARD_VARIANT_NAME "T3-C6"
|
||||
|
||||
#define USING_DIO2_AS_RF_SWITCH
|
||||
#else
|
||||
#error "For the first use, please define the board version and model in <utilities. h>"
|
||||
#error "When using it for the first time, please define the board model in <utilities.h>"
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue