Na Banggood, utilizamos cookies e outras tecnologias semelhantes para lhe fornecer funcionalidades essenciais e para estatísticas agregadas.
Também usamos cookies opcionais para uma melhor experiência com o:
Você pode optar por não permitir alguns tipos de cookies em "Configurações de Cookies". Se quiser saber mais sobre isso, você pode deslizar até o final da página para ver a Política de Privacidade
Quando você visita qualquer site, ele pode armazenar ou recuperar informações em seu navegador, principalmente na forma de cookies. Essas informações podem ser sobre você, suas preferências ou seu dispositivo e são usadas principalmente para fazer o site funcionar como você espera. As informações geralmente não o identificam diretamente, mas podem proporcionar uma experiência na web mais personalizada.
Como respeitamos seu direito à privacidade, você pode optar por não permitir alguns tipos de cookies. No entanto, bloquear alguns tipos de cookies pode afetar sua experiência no site e nos serviços que podemos oferecer.
{{$productInfo.reviewAmount.average}} de 5
Para obter mais informações sobre o produto, clique em https://drive.google.com/file/d/1L8ll-DeAC2SATBZn0-KbSaZsrinbnXkF/view
Clique nos links para mais detalhes: https://eyun.baidu.com/s/3hsiTNgg
Nota: Este produto não inclui a bateria.
Pacote incluído:
2 x ESP32 OLED
2 x Line
4 x pin
2 x Antena de mola 433m
Por exemplo Um:
LoRaSender
#incluir
#incluir
#incluir
// GPIO5 - SCK SX1278
// GPIO19 -- MISO do SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
// GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitação de interrupção) do SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
int counter = 0;
void setup() {
pinMode(25,OUTPUT); //Enviar sucesso, o LED ficará aceso por 1 segundo
Serial.begin(115200);
while (!Serial); //Se apenas a função básica, deve ser conectado a um computador
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
// Serial.println("LoRa Sender");
if (!LoRa.begin(BAND)) {
Serial.println("Falha ao iniciar LoRa!");
enquanto (1);
}
Serial.println("LoRa Inicialização OK!");
}
void loop() {
Serial.print("Enviando pacote: ");
Serial.println(counter);
// enviar pacote
LoRa.beginPacket();
LoRa.print("olá");
LoRa.print(counter);
LoRa.endPacket();
counter++;
digitalWrite(25, HIGH); // ligar o LED (HIGH é o nível de tensão)
pausa(1000); // esperar um segundo
digitalWrite(25, LOW); // desligar o LED tornando a tensão BAIXA
pausa(1000); // esperar um segundo
atraso(3000);
}
Por exemplo, dois
(2)Receptor LoRa
#incluir
#incluir
// GPIO5 - SCK SX1278
// GPIO19 -- MISO do SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
// GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitação de interrupção) do SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
void setup() {
Serial.begin(115200);
// enquanto (!Serial); // se a função básica apenas, deve conectar-se a um computador
atraso(1000);
Serial.println("LoRa Receiver");
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
if (!LoRa.begin(BAND)) {
Serial.println("Falha ao iniciar LoRa!");
enquanto (1);
}
}
void loop() {
// tente fazer a análise do pacote
int packetSize = LoRa.parsePacket();
se (tamanho_do_pacote) {
// recebeu um pacote
Serial.print("Pacote recebido '");
// ler pacote
enquanto (LoRa.available()) {
Serial.print((char)LoRa.read());
}
// imprimir RSSI do pacote
Serial.print("' com RSSI ");
Serial.println(LoRa.packetRssi());
}
}
Por exemplo, três
(3) LoRaReceiverCallback
#incluir
#incluir
// GPIO5 - SCK SX1278
// GPIO19 -- MISO do SX1278
// GPIO27 -- M0SI SX1278
// GPIO18 -- CS SX1278
// GPIO14 -- RESET SX1278
// GPIO26 -- IRQ (Solicitação de interrupção) do SX1278
#define SS 18
#define RST 14
#define DI0 26
#define BAND 433E6
void setup() {
Serial.begin(115200);
// enquanto (!Serial); // se a função básica apenas, deve conectar-se a um computador
SPI.begin(5,19,27,18);
LoRa.setPins(SS, RST, DI0);
Serial.println("Callback do receptor LoRa");
if (!LoRa.begin(BAND)) {
Serial.println("Falha ao iniciar LoRa!");
enquanto (1);
}
// registre a chamada de recebimento
LoRa.onReceive(onReceive);
// colocar o rádio no modo de recepção
LoRa.receive();
}
void loop() {
// não fazer nada
}
void onReceive(int packetSize) {
// recebeu um pacote
Serial.print("Pacote recebido '");
// ler pacote
para (int i = 0; i < packetSize; i++) {
Serial.print((char)LoRa.read());
}
// imprimir RSSI do pacote
Serial.print("' com RSSI ");
Serial.println(LoRa.packetRssi());
}
?
Por exemplo quatro
#incluir
#incluir "SSD1306.h" // alias para `#incluir "SSD1306Wire.h"`
#incluir "images.h
// Pinos OLED para ESP32 0.96 OLEDGPIOs através desta conexão:
//OLED_SDA -- GPIO4
//OLED_SCL -- GPIO15
// OLED_RST - GPIO16
display SSD1306(0x3c, 4, 15);
#definir DEMO_DURATION 3000
typedef void (*Demo)(void);
int demoMode = 0;
int counter = 1;
void setup() {
pinMode(16, OUTPUT);
digitalWrite(16, LOW); // definir GPIO16 como baixo para reiniciar OLED
atraso(50);
digitalWrite(16, HIGH); // enquanto o OLED estiver em execução, é necessário definir o GPIO16 como alto
Serial.begin(115200);
Serial.println();
Serial.println();
// Inicializar a interface do usuário também inicializará o display.
display.init();
display.flipScreenVertically();
display.setFont(ArialMT_Plain_10);
}
void drawFontFaceDemo() {
// Demo de Fonte 1
// crie mais fontes em http://oleddisplay.squix.ch/
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.setFont(ArialMT_Plain_10);
display.drawString(0, 0, "Hello world");
display.setFont(ArialMT_Plain_16);
display.drawString(0, 10, "Olá mundo");
display.setFont(ArialMT_Plain_24);
display.drawString(0, 26, "Olá mundo");
}
void drawTextFlowDemo() {
display.setFont(ArialMT_Plain_10);
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.drawStringMaxWidth(0, 0, 128,
Lorem ipsumn dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore." );
}
void drawTextAlignmentDemo() {
// Demonstração de alinhamento de texto
display.setFont(ArialMT_Plain_10);
// As coordenadas definem o ponto de partida esquerdo do texto
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.drawString(0, 10, "Alinhado à esquerda (0,10)");
// As coordenadas definem o centro do texto
display.setTextAlignment(TEXT_ALIGN_CENTER);
display.drawString(64, 22, "Alinhamento centralizado (64,22)");
// As coordenadas definem o final direito do texto
display.setTextAlignment(TEXT_ALIGN_RIGHT);
display.drawString(128, 33, "Alinhado à direita (128,33)");
}
void drawRectDemo() {
// Desenhe um pixel na posição indicada
para (int i = 0; i < 10; i++) {
display.setPixel(i, i);
display.setPixel(10 - i, i);
}
display.drawRect(12, 12, 20, 20);
// Preencha o retângulo
display.fillRect(14, 14, 17, 17);
// Desenhe uma linha horizontal
display.drawHorizontalLine(0, 40, 20);
// Desenhe uma linha horizontal
display.drawVerticalLine(40, 0, 20);
}
void drawCircleDemo() {
para (int i=1; i < 8; i++) {
display.setColor(BRANCO);
display.drawCircle(32, 32, i*3);
if (i % 2 == 0) {
display.setColor(BLACK);
}
display.fillCircle(96, 32, 32 - i* 3);
}
}
void drawProgressBarDemo() {
int progresso = (contador / 5) % 100;
// desenhe a barra de progresso
display.drawProgressBar(0, 32, 120, 10, progress);
// desenhar a porcentagem como String
display.setTextAlignment(TEXT_ALIGN_CENTER);
display.drawString(64, 15, String(progress) + "%");
}
void drawImageDemo() {
// ver http://blog.squix.org/2015/05/esp8266-nodemcu-how-to-create-xbm.html
// sobre como criar arquivos xbm
display.drawXbm(34, 14, WiFi_Logo_width, WiFi_Logo_height, WiFi_Logo_bits);
}
Demo demos[] = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};
int demoLength = (sizeof(demos) / sizeof(Demo));
tempoDesdeUltimaAlteracaoModo = 0;
void loop() {
// limpar o display
display.clear();
// desenhar o método de demonstração atual
demos[demoMode]();
display.setTextAlignment(TEXT_ALIGN_RIGHT);
display.drawString(10, 128, String(millis()));
// escreva o buffer no display
display.display();
se (millis() - tempoDesdeUltimaTrocaModo > DURACAO_DEMO) {
demoMode = (demoMode + 1) % demoLength;
timeSinceLastModeSwitch = millis();
}
counter++;
atraso(10);
}
Método(s) de envio | Tempo de envio | Informações de rastreamento |
---|