



Neste post estamos partindo da ideia que você já tenha conhecimentos sobre Arduino. Caso você seja iniciante, vou te recomendar alguns posts antes de te apresentar este:

Esta é uma placa de baixíssimo custo, que veio para competir com o Arduino Pro Mini, mas é um pouco mais interessante que o Pro Mini original, e veremos o porquê.
Ambas as placas são direcionadas para protótipos funcionais ou projetos finais, por serem bastante compactas, e a proposta é terem o mesmo poder de fogo que as placas maiores, e nisso ambas cumprem muito bem o seu papel, como já discutimos no post do Arduino Pro Mini, ele não deixa nada a desejar em relação a um Arduino Uno. Ambas as placas são muito eficientes no que se propõe a fazer, e tem bastante semelhanças e algumas particularidades
A placa Pro Mini EVB usa um chip que é bastante semelhante ao Atmega328P (que é usado no Pro Mini original), com algumas melhorias.
A primeira e mais clara é a velocidade. O Pro Mini EVB pode funcionar com um clock de 32MHz, que é duas vezes mais rápido que o Pro Mini original, que funciona em 16MHz.
Além do mais, o Pro Mini EVB possui uma porta DAC, que converte um valor de 0 a 255 em tensão na saída. Isso viabiliza vários projetos eletrônicos bem interessante, como gerador de frequência ou um reprodutor de áudio.
Outras diferenças estão na quantidade de pinos e mais alguns detalhes internos, que veremos a seguir.
Abaixo se encontra o diagrama da placa, no qual mostra os pinos e a função deles.
É interessante notar que alguns pinos dessa placa estão ligados a duas GPIOs, como o caso do pino que liga 3 e 4, os pinos 8 e 9 e a que liga o pino 10 e 11.
Observação: Não utilize como saída as GPIOs que estão ligadas em um mesmo pino, porque corre o risco de queimar uma das GPIOs. Por exemplo, se 3 for saída, deixe 4 como entrada.
Outra coisa interessante é que essa placa possui pinos que podem drenar alta corrente, como é o caso dos pinos marcados em laranja, que podem drenar até 80mA.
Como nas demais placas Arduino, o LED embarcado dessa placa fica conectado ao pino 13.
Para programar a placa o primeiro passo é instalar ela na Arduino IDE.
Para isso, vá em "Arquivo>Preferências"
Copie o seguinte endereço até a parte URLs Adicionais para Gerenciadores de Placas:
https://raw.githubusercontent.com/dbuezas/lgt8fx/master/package_lgt8fx_index.json
Dê um "OK" e a tela irá fechar.
Após isso vá até "Ferramentas>Placa>Gerenciador de Placas"
E pesquise por "LGT8fx" e instale.
E as placas do tipo LGT8F328P irão aparecer para você. Escolha o tipo LGT8F328
Na Arduino IDE, deixe a placa configurada da seguinte forma:
E a placa está configurada em sua Arduino IDE.
Para gravar os programas nesta placa você pode utilizar de preferência módulos que tenham a função DTR, como o:
| Pino Pro Mini EVB | Pino Conversor USB - Serial |
| DTR | DTR |
| TXD | RX |
| RXD | TX |
| VCC | 5V |
| GND | GND |
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
E o resultado será este:
E como visto, o Pro Mini EVB é carregado como o Pro Mini comum.
| Pino Pro Mini EVB | Pino Conversor USB - Serial |
| TXD | RX |
| RXD | TX |
| VCC | 5V |
| GND | GND |
Caso você seja mais experiente, você deve estar pensando: "Podemos ligar o Reset do Arduino ao DTR, e funcionará!" Eu testei, e por algum motivo não funciona.
Com essa montagem feita, você poderá carregar seu código de teste.
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Enquanto o código estiver compilando você deve segurar o botão reset. No instante que a mensagem "Carregando..." aparecer, você deve soltar o botão do Reset e o seu código irá começar a caregar.
E o resultado será este:
Foi testado o conversor DAC (Digital para Analógico) da placa, tanto para fazer senóides tanto para rampas. O pino que é responsável pelo DAC da placa é o 4 (suba um pouco e veja a imagem do pinout da placa). Se você possuir um osciloscópio para testar, você pode carregar o código abaixo e ver o resultado ligando a ponta de prova ao pino 4.
#define SAMPLES 255
byte table[SAMPLES];
void setup() {
// put your setup code here, to run once:
for (int i = 0; i < SAMPLES; i++) {
table[i] = sin((float)i * TWO_PI / SAMPLES) * 127;
}
analogReference(DEFAULT); // 5v
// analogReference(EXTERNAL); // REF PIN Voltage
// analogReference(INTERNAL4V096); // 4.096V
// analogReference(INTERNAL2V048); // 2.048v
// analogReference(INTERNAL1V048); // 1.024v
pinMode(DAC0, ANALOG);
}
void loop() {
// put your main code here, to run repeatedly:
for (byte i = 0; i <= SAMPLES; i++) {
analogWrite(DAC0, table[i]+127);
delayMicroseconds(50);
}
}
E no osciloscópio você verá uma senoide perfeita. Mudando o delay, você poderá configurar a frequência da senoide.
nsigned char value = 0;
void setup() {
// put your setup code here, to run once:
analogReference(INTERNAL2V56);
pinMode(4, ANALOG);
analogWrite(4, 255);
}
void loop() {
// put your main code here, to run repeatedly:
analogWrite(4, value);
delay(1);
value += 1;
}
E no osciloscópio você verá uma onda em formato de rampa, ou também conhecida como dente de serra:
Apesar de ser um chip inspirado e bastante similar ao clássico ATMega328P, o LGT8F328p possui uma clara vantagem: ele é bem mais rápido. No Github existe um compilado de resultados de testes para aferir a velocidade do chip, onde contabiliza quantos segundos o chip demorou para realizar uma tarefa, como fazer muitos cálculos consecutivos, e os resultados foram estes:
| Nível de Otimização | LGT8F328p @ 32MHz | LGT8F328p @ 16MHz | ATmega328p @ 16MHz |
|---|---|---|---|
| O3 | 4.651s | 9.301s | 10.894s |
| Ofast | 4.605s | 9.209s | 10.774s |
| MCU | Clock | Benchmark |
|---|---|---|
| ATmega328p | 16MHz | 121 s. |
| ATmega328p | 8MHz | 242 s. |
| LGT8F328p | 16MHz | 118 s. |
| LGT8F328p | 16MHz | 118 s. |
| LGT8F328p | 32MHz | 59 s. |
| Nível de Otimização | LGT8F328p @ 32MHz | LGT8F328p @ 16MHz | ATmega328p @ 16 MHz |
|---|---|---|---|
| O3 | 220 kFLOPS | 109kFLOPS | 90 kFLOPS |
| Ofast | 226 kFLOPS | 112kFLOPS | 92 kFLOPS |
Acredito que você tenha achado a placa com recursos bastante interessante e super recomendamos adquirir ela na Eletrogate. Ela está a um preço bastante acessível e a Eletrogate está com um frete bastante acessível para a sua região. Garanta o seu clicando aqui! Caso você tenha gostado do post e queira mais um post sobre essa placa, ou queira um post do tipo sobre uma outra placa que você tenha interesse, deixe nos comentários. Caso queira deixar um elogio, fazer uma correção ou fazer uma pergunta, use os comentários abaixo. Será um prazer te responder. Nos siga no instagram para saber das nossas novidas, é @eletrogate Muito obrigado por ter lido até aqui, e até uma próxima! Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.
|
Que tal falarmos um pouco sobre uma placa barata, mas que é muito potente e é capaz de rivalizar e muito com os gigantes?
Encontre tudo na Loja Eletrogate com frete grátis para compras acima de R$ 200