Tutorial de Desarrollo
Antes de comenzar el desarrollo, por favor revisa Configurar tu cadena de herramientas para configurar las herramientas primero.
Descripción general del hardware
Descripción general del firmware
Grove
Hay 6 interfaces Grove en la Placa de Desarrollo Wio Tracker 1110, que pueden conectarse a más de 300 módulos Grove. Haz clic aquí para conocer más sobre el módulo Grove.
Grove I2C
Hay un puerto Grove I2C en el DK, con SDA
en el pin 27 y SCL
en el pin 26.
Grove UART
La Placa de Desarrollo Wio Tracker 1110 tiene dos periféricos UART, llamados uart0
y uart1
. Los pines de uart0
están conectados al CH340C para propósitos de depuración, mientras que uart1
sirve como Puerto UART Grove.
Refiriéndose al esquemático, TXD está ubicado en el pin 8 y RXD está en el pin 6.
#define LED1 13
#define LED2 14
#define TXD 8
#define RXD 6
#define UART_TX_RX_BUF_SIZE 256
Grove Digital
#include <Adafruit_TinyUSB.h>
#include <Wire.h>
#include <Ultrasonic.h>
// Define el pin al cual está conectado el sensor ultrasónico
constexpr int ULTRASONIC_PIN = D0;
Ultrasonic ultrasonic(ULTRASONIC_PIN);
void setup()
{
delay(100);
Serial.begin(115200); // Iniciar comunicación Serial a una velocidad de baudios de 115200
while (!Serial) delay(100);
void loop()
{
long RangeInInches; // Variable para almacenar distancia en pulgadas
long RangeInCentimeters; // Variable para almacenar distancia en centímetros
Serial.println("La distancia a los obstáculos al frente es: ");
RangeInInches = ultrasonic.MeasureInInches(); // Medir distancia en pulgadas usando el sensor Ultrasónico
Serial.print(RangeInInches);
Serial.println(" pulgada");
delay(250);
RangeInCentimeters = ultrasonic.MeasureInCentimeters();
Serial.print(RangeInCentimeters);
Serial.println(" cm");
delay(2500);
}
Grove Analógico
Código de Ejemplo:
#include <Adafruit_TinyUSB.h> // for Serial
constexpr int ADCIN = A0;
constexpr float MV_PER_LSB = 3600.0f / 1024.0f; // 10-bit ADC with 3.6V input range
void setup()
{
delay(100);
Serial.begin(115200);
while (!Serial) delay(100);
}
void loop()
{
// Get a fresh ADC value
long sum = 0;
for (int i = 0; i < 32; i++)
{
sum += analogRead(ADCIN);
}
int adcvalue = sum / 32;
// Display the results
Serial.print(adcvalue);
Serial.print(" [");
Serial.print((float)adcvalue * MV_PER_LSB);
Serial.println(" mV]");
delay(1000);
}