Shield WT588D-16P

Ultimo aggiornamento 4 novembre  2018


 

Indice

Descrizione

Per un più facile utilizzo del modulo WT588-D con Arduino si è pensato di realizzare un apposito Shield, questo permette di testare il modulo sia collegato ad Arduino sia in modalità stand alone in quanto sono presenti anche i tasto da K1 a K4. E' inoltre presente un connettore per il collegamento diretto di un altoparlante e un connettore per il collegamento di un amplificatore esterno.
Per la programmazione della memoria interna del modulo WT588 è presente il connettore per l'interfaccia SPI. esiste anche la possibilità di utilizzare il modulo in modalità stand alone in quanto è presente un connettore per l'alimentazione esterna. Due led segnalano la presenza dell'alimentazione e la funzione busy del modulo.

Schema elettrico e PCB

Lo schema è lo stampato sono stati realizzati con il programma free EasyEDA, il progetto può essere visionato a questo link, per la realizzazione si è utilizzato il servizio di realizzazione fornito da JLCPCB.
Lo schema è formato da 6 sezioni: Sezione alimentazione, sezione Arduino, sezione controllo, sezione modulo audio, sezione uscita amplificatore, sezione interfaccia SPI

Vista del PCB lato TOP

Vista del PCB lato BOTTOM

Vista 3D del PCB lato TOP

Foto del PCB realizzato da  JLCPCB

Il modulo WT588-D

Il modulo WT588D è un potente circuito integrato di voce riprogrammabile a microcontrollore.
Il suo modo di controllo può essere modificato e i dati  scaricati tramite un'interfaccia Flash SPI dal nostro software per PC.
Il software è di facile utilizzo e supporta lo scaricamento online, anche con il chip alimentato, i dati possono essere scaricati alla relativa Flash SPI quindi reimpostare il circuito, la modalità di controllo verrà aggiornata.
I possono essere acquistati presso il sito www.plexishop.it questo link
Sono prodotti due tipi diversi di modulo uno a 28 PIN che possiede a bordo l'interfaccia di programmazione e un modulo a 16 Pin che necessita di un modulo di programmazione.
Per atre informazioni vedere questa pagina.

homotix

PCBA

I componenti necessari

 

ID

Sigla Descrizione   Quantità
1 P1,P4 Header-Male-2.54_1x2 2
2 R1 470Ω 1/4W 1
3 BUSY,PWR Led 3mm (1 rosso e uno verde) 2
4 U3 Regolatore di tensione LP2950-3.3 1
5 R2 330Ω 1/4W 1
6 PR1 500Ω 1/4W 1
7 P3 Header-Female-2.54_1x4 1
8 D1 Diodo 1N4004 1
9 U1 Modulo WT588D-16P 1
10 R3 510Ω 1/4W 1
11 C4 Condensatore poliestere 0,1uF 1
12 C3 Condensatore elettrolitico 1uF 100V 1
13 P2 Header-Male-2.54_1x3 1
14 P5 Header-Male-2.54_1x7 1
15 SW2,SW1,SW3,SW4,SW5 SWITCH-6x6x5_TH 5
16 C1 Condensatore poliestere 0.33uF 1
17 C2 Condensatore poliestere 0.1uF 1
18 U2 Arduino UNO R3 1

 

LP2950-X Voltage Regulator

 
Piedinatura Datasheet Foto dell'integrato

 1N4004 - Diodo general purpose 400V - 1A

Piedinatura Datasheet Foto

Fasi di montaggio

Foto del montaggio

Test base dello shield

Passiamo ora ad effettuare il test per verificare lo shield, si dovrà a questo punto montare lo shield sulla scheda Arduino, si monterà poi il modulo WT588D-16P precedentemente programmato sul relativo connettore , e si collegherà un altoparlante sui pin SPK.

Per semplificare questa possibilità è disponibile una libreria (che può essere scaricata da questo link) che vi dà il pieno controllo del modulo

Pin WT588D-16P

Pin shield Arduino

Reset

D2

Busy

D8

P01 (Data)

D5

P02 (CS)

D4

P03 (CLK)

D3

Per esempio il programma mostrato pronuncia i numeri da 1 a 10 e da 10 a 1.

Programma  di test

I file audio utilizzati per il test

/*
  Test_SHIELD_WT588D.ino
  Il programma pronuncia i numeri da 1 a 10 e da 10 a 1
  Basato su libreria di Norbert Danneberg,  https://github.com/ACDCLabs/WT588D

  Creato il 4/11/2017 da Adriano Gandolfo
  Sito web https://www.adrirobot.it
  Blog https://it.emcelettronica.com/author/adrirobot
  Pagina Facebook https://www.facebook.com/Adrirobot-318949048122955
  Istagram https://www.instagram.com/adrirobot/
  This example code is in the public domain.
*/

#include "WT588D.h"
// impostare i corretti contatti per il chip WT588D
#define WT588D_RST 2  // Pin RST Module "REST" o pin # 1
#define WT588D_CS 4   // Pin CS Module "P02" o pin # 11
#define WT588D_SCL 3  // Pin CLK Module "P03" o pin # 10
#define WT588D_SDA 5  // Pin DATA  Module "P01" o pin # 12
#define WT588D_BUSY 8 // Pin Module "LED/BUSY" o pin # 15

//Assegnazione dei pin
WT588D myWT588D(WT588D_RST, WT588D_CS, WT588D_SCL, WT588D_SDA, WT588D_BUSY);

void setup() {
  // Inizializzazione del modulo
  myWT588D.begin();
  speakPhrase(12); // Test_modulo_seriale
  speakPhrase(11); // citazione_adrirobot
}

void loop()
{
  //Riproduzione dei numeri da 0 a 10
  for (int playListNumber = 0; playListNumber < 11; playListNumber ++) {
    speakPhrase(playListNumber);
  }
  //Riproduzione dei numeri da 10 a 0
  for (int playListNumber = 10; playListNumber > 0; -- playListNumber) {
    speakPhrase(playListNumber);
  }
}

// Attende che il WT588D abbia terminato di riprodurre il file wav
void busy(int pause) {
  delay(100);
  while (myWT588D.isBusy() ) {
  }
  delay(pause);
}
// Riproduzione del file wav indicato
void speakPhrase(int phrase) {
  myWT588D.playSound(phrase);
  busy(0);
}

 

Elenco revisioni

30/09/2018

Emissione preliminare

Private Policy Cookie Policy