ATtiny85 RDA5807 Rádio FM com RDS display

ATtiny85 RDA5807 Rádio FM com RDS display oled digital

Rádio FM com RDS, Amplificador de Áudio, Codificador Rotativo e Display OLED. O TinyFMRadio é um rádio FM controlado por ATtiny45/85 com RDS (RDA5807) e um amplificador de áudio integrado (XPT8871 ou TC8871), um display OLED (SSD1306) e um codificador rotativo. Você pode conectar diretamente uma bateria de íon de lítio protegida, um alto-falante de 3W / 4 Ω e uma antena de FM.

Hardware
O RDA5807MP de baixo custo é um sintonizador de rádio FM estéreo de transmissão de um único chip com sintetizador totalmente integrado, seletividade IF, RDS/RBDS e decodificador MPX. O sintonizador utiliza o processo CMOS, suporta múltiplas interfaces e requer o menor número de componentes externos. Tudo isso o torna muito adequado para dispositivos portáteis.

Esquema ATtiny85 RDA5807 TinyFMradio FM Rádio com RDS

Esquema Attiny85 Rda5807 Rádio Fm Com Rds Display Oled
Esquema Attiny85 Rda5807 Rádio Fm Com Rds Display Oled

Receba nossos artigos gratuitamente no seu Email

Software
O firmware é apenas um esboço de demonstração que implementa funcionalidades básicas. Ao pressionar o botão do codificador rotativo, o RDA5807 busca a próxima estação de rádio. Girar o codificador rotativo aumenta/diminui o volume. A frequência selecionada e o volume são armazenados na EEPROM. O nome da estação, frequência, intensidade do sinal, volume e estado de carga da bateria são exibidos em um display OLED.

Implementação I²C
A implementação do protocolo I²C é baseada em um método rudimentar de bitbanging. Foi especificamente projetado para os recursos limitados do ATtiny10 e ATtiny13, mas deve funcionar com alguns outros AVRs também. Devido à baixa frequência de clock da CPU, não requer atrasos para o tempo correto. Para economizar recursos, apenas as funcionalidades básicas necessárias para esta aplicação são implementadas. Para obter informações detalhadas sobre o princípio de funcionamento da implementação I²C, visite TinyOLEDdemo.

Descubra os melhores kits de eletrônica na Loja Toni Eletrônica. ToniEletronica.com Amplificadores e transmissores de FM de alta qualidade. Visite-nos agora! Amplifique o som e transmita suas músicas favoritas com os kits de eletrônica da Loja Toni Eletrônica. ToniEletronica.com Confira nossa seleção de amplificadores e pré-amplificadores.

Controlando o RDA5807
O circuito integrado sintonizador de FM RDA5807MP é controlado via I²C pelo ATtiny. Ele possui seis registradores de 16 bits graváveis (endereços 0×02 – 0×07) e seis registradores de 16 bits legíveis (endereços 0×0A – 0×0F). O RDA5807 possui dois métodos de acesso de escrita, um sequencial no qual os registradores são sempre escritos a partir do endereço 0×02 e um método indexado no qual o endereço do registrador é transferido primeiro e depois o conteúdo. Ambos os métodos são determinados por diferentes endereços I²C. Para transferir o conteúdo do registrador de 16 bits, o byte alto é enviado primeiro. O RDA5807 é controlado definindo ou limpando certos bits nos respectivos registradores. Os detalhes dos significados dos registradores individuais podem ser encontrados na ficha técnica. O conteúdo atual dos registradores é salvo nos arrays RDA_regs. A implementação RDA é baseada no trabalho de Maarten Janssen

Implementação do Codificador Rotativo
A implementação do codificador rotativo utiliza interrupções de mudança de pino apenas em um dos pinos escrita de forma que o efeito de bouncing seja automaticamente suprimido.

Attiny85 Rda5807 Rádio Fm Com Rds Display Oled Pcb
Attiny85 Rda5807 Rádio Fm Com Rds Display Oled Pcb

Veja também:

Compilando e Carregando o Software

Se estiver usando a IDE Arduino

  • certifique-se de ter instalado o ATtinyCore.
  • Vá em Tools ⇾ Board ⇾ ATtinyCore e selecione ATtiny25/45/85 (Sem bootloader).
  • Vá em Tools e escolha as seguintes opções de placa:
      • Chip: ATtiny45 ou ATtiny85
      • Clock: 1 MHz (interno)
    • B.O.D.: desabilitado
  • Deixe o restante nas configurações padrão
  • Conecte o programador ao seu PC e ao conector ICSP do dispositivo.
  • Vá em ToolsProgramador e selecione o seu programador ISP (por exemplo, USBasp).
  • Vá em ToolsBurn Bootloader para gravar os fuses.
  • Abra o sketch TinyFMRadio e clique em Carregar.

Se estiver usando o arquivo hex pré-compilado,

  • certifique-se de ter instalado o avrdude.
  • Conecte o programador ao seu PC e ao cabeçalho ICSP do dispositivo.
  • Abra um terminal.
  • Navegue até a pasta com o arquivo hex.
  • Execute o seguinte comando (se necessário, substitua “t85” pelo seu chip e “usbasp” pelo programador que você usa):
avrdude -c usbasp -p t85 -U lfuse:w:0x62:m -U hfuse:w:0xd7:m -U efuse:w:0xff:m -U flash:w:tinyfmradio.hex

Se estiver utilizando o makefile (Linux/Mac),

  • Certifique-se de ter instalado a cadeia de avr-gcc toolchain e avrdude.
  • Conecte o seu programador ao PC e ao cabeçalho ICSP do dispositivo.
  • Abra o makefile e altere o chip, caso não esteja utilizando o ATtiny85, e o programador, caso não esteja utilizando o usbasp.
  • Abra o terminal.
  • Navegue até a pasta com o makefile e o sketch do Arduino.
  • Execute “make install” para compilar, gravar os fusíveis e carregar o firmware.

Lista de material

QuantidadeValorNomeDescrição
Resistores 1/4W
410k (103)R1,R7,R8,R90603
31k (102)R2,R5,R60603
24k7 (472)R3,R40603
Capacitores
7100nC1,C5,C6,C8,C14,C15,C160603 — Capacitor cerâmico
147uC21206 — Capacitor cerâmico
1470uFC3CAP-SMD_D10.0-L10.3 — Capacitor eletrolítico
210uC4,C70603 — Capacitor cerâmico
21uC9,C110603 — Capacitor cerâmico
11nC100603 — Capacitor cerâmico
2390nC12,C130603 — Capacitor cerâmico
Semicondutores
1LED-BlueLED1LED-0603 — Led azul
1RDA5807MPU2SOP-8_150MIL — Receptor FM
1XPT8871ESU3HSOP-8 – Amplificador de áudio
1XC6206P332PRU4SOT-89 — 3.3V — Regulador de tensão
1ATTINY85-20SUU1SOIC-8_208MIL — Microcontrolador
Diversos
1Slide SwitchPOWERSLIDE SWITCH DPDT 1P2T JB
2HeaderSPK,VINHDR-1 × 2/2.54
1Rotary EncoderSW1BOURNS_PEC11R-4XXXF-SXXXX
1HeaderANTHDR-1 × 1/2.54
1I2CI2CHDR-4 × 1/2.54
1ICSP-6ICSPICSP-6 – Conector de programação
132.768 khzY1XTAL-32KHZ — Cristal
Attiny85 Rda5807 Rádio Fm Com Rds Display Oled
Attiny85 Rda5807 Rádio Fm Com Rds Display Oled
Download Arquivos para esta montagem, PCB em PDF, Gerber

Download

Mirror

Firmware

Referências
  1. ATtiny25/45/85 Datasheet
  2. RDA5807MP Datasheet
  3. SSD1306 Datasheet
  4. TC8871 Datasheet

Fonte: https://oshwlab.com/wagiminator/attiny85-tinyfmradio

O que achou deste artigo?

Clique em uma estrela para avaliá-lo!

Classificação média / 5. Total de votos

Sem votos até agora! Seja o primeiro a avaliar este post.

Como você achou este post útil...

Compartilhe nas redes sociais!

Lamentamos que este post não foi útil para você!

Ajude-nos a melhorar este post!

Conte-nos como podemos melhorar este post?

Foto do autor
Sobre o Autor
Autor do blog Te1.com.br. Técnico em Eletrônica Industrial pela Escola Técnica de Brasília, Tecnólogo em Sistemas para Internet pela Unianhanguera. Interessado em eletrônica, montagens, pesquisas, informática e tecnologia em geral.
Compartilhe:
Comentar via Facebook

Deixe um comentário