CasaBlogGuia abrangente para o microcontrolador ATMEGA328P AVR
Guia abrangente para o microcontrolador ATMEGA328P AVR
O ATMEGA328P é um microcontrolador amplamente utilizado, com sua pinagem referente à descrição do layout e da função dos pinos do microcontrolador.O significado da pinalização do ATMEGA328P está na especificação das interfaces de entrada/saída do microcontrolador, energia e pinos de terra, servindo como uma base crucial para o projeto e a programação do circuito.Este artigo explorará o conhecimento relevante do ATMEGA328P, incluindo configuração de pinos, características funcionais, especificações, áreas de aplicação e as diferenças entre o ATMEGA328P e o ATMEGA328PU.
O ATMEGA328P é um microcontrolador CMOS de 8 bits de baixa potência com base na arquitetura AVR RISC aprimorada, apresentando muitos pinos e funções.Desenvolvido pela Atmel Corporation (agora parte da Microchip Technology), utiliza a tecnologia CMOS de 8 bits e o design da CPU RISC, aprimorando seu desempenho e eficiência de energia com recursos como sono automático e um sensor de temperatura interno.
O chip AtMEGA328P oferece proteção interna e vários métodos de programação, permitindo a priorização desse controlador em diferentes circunstâncias.Este IC permite métodos modernos de comunicação com outros módulos e o próprio microcontrolador.Graças a esses detalhes, o uso do microcontrolador ATMEGA328P está aumentando rapidamente diariamente.
O chip AtMEGA328P possui 28 pinos de entrada/saída de uso geral (GPIO), com a configuração de diagrama de uso e pino de cada pino detalhado no diagrama a seguir.
- Microcontrolador de 8 bits de alto desempenho e baixa potência:
-
- Arquitetura RISC avançada;
-
- segmentos de memória não volátil de alta resistência;
-
-Redefinição de energia e detecção programável de marrom-out;
-
- oscilador calibrado interno;
-
- fontes de interrupção externa e interna;
-
-Seis modos de sono: ocioso, redução de ruído ADC, economia de energia, despensa, espera e espera estendida.
- - memória flash: 32k
-
- SRAM: 2KB
-
- Memória da EEPROM: 1KB
-
- Velocidade da CPU: 20MHz
-
- Tipo de interface: I2C, SPI, USART
-
- Tensão da fonte de alimentação Min: 1,8V máx. 5.5V
-
- Fonte de alimentação para dispositivos de montagem na superfície: montagem de superfície
-
- Tipo de pacote: PDIP/TQFP
-
-Contagem de pinos: 28-PDIP, 32-TQFP
-
- Faixa de temperatura operacional: -40 ° C a +85 ° C
-
- Linhas de entrada/saída: 23
-
- Número de entradas ADC: 8
-
- Timer/contador de 8 bits: 2
-
- Timer/contador de 16 bits: 1
-
- PWM: 6
-
- Modos de programação: ISP, IAP, H/PV
-
- Modo de simulação: Debugwire
A maioria dos sistemas incorporados, como os baseados na tecnologia de sistemas incorporados, usa o ATMEGA328 para executar várias operações devido a seus extensos exemplos e ajudar o material disponível on -line.
É utilizado em Arduino, tornando -o um dos controladores mais populares.
O uso do ATMEGA328p é semelhante a qualquer outro controlador, fundamentalmente centrado na programação.Inicialmente, o controlador é programado escrevendo os arquivos de programas relevantes para sua memória flash.Depois que esse código é despejado, o controlador executa esse código e fornece respostas apropriadas.
Todo o processo de uso do ATMEGA328 inclui:
- 1. Listando as funções que o controlador deve executar.
-
2. Escrever essas funções em uma linguagem de programação dentro de um programa de ambiente de desenvolvimento integrado (IDE).
-
3. A programação ATMEGA328P também pode ser feita no Arduino IDE.
-
4. Depois de escrever o programa, o próximo estágio envolve a compilação do código para identificar e corrigir erros.
-
5. Peça ao IDE gerar um arquivo hexadecimal para o programa escrito após a compilação.
-
6. Este arquivo hexadecimal contém o código da máquina que deve ser gravado na memória flash do controlador.
-
7. Escolha um dispositivo de programação para estabelecer a comunicação entre o PC e o ATMEGA328P (geralmente um programador SPI feito para controladores AVR).Você também pode usar a placa Arduino UNO para programação ATMEGA328P.
-
8. Execute o software do programador e selecione o arquivo hexadecimal apropriado.
-
9. Use este programa para queimar o arquivo hexadecimal na memória flash atmaga328p.
-
10. Desconecte o programador, conecte os periféricos relevantes do controlador e, em seguida, liga o sistema.
Para usuários comuns, é difícil entender por que existem diferentes marcas nos cristais e qual escolher.Vamos tentar esclarecer:
1. A diferença entre os dois primeiros modelos de cristal é mínima nos cenários de aplicação tradicionais, tornando -os essencialmente intercambiáveis.
2. Comparado ao ATMEGA328, o ATMEGA328P reduz significativamente o consumo de energia, conforme refletido nas especificações técnicas.Portanto, o ATMEGA328P adotou um processo de tecnologia mais refinado nos estágios iniciais do desenvolvimento.Isso geralmente significa que esses chips são mais caros.Os microcontroladores AVR de baixa potência classificados com a tecnologia Picopower tornam o ATMEGA328P mais adequado para dispositivos movidos a bateria, onde são necessárias medidas de controle de consumo de energia.
3. As assinaturas de chip de diferentes opções variam e, ao lê -las com programas como o Avrdude, você poderá encontrar mensagens de erro para AtMEGA328P se o tipo de microcontrolador for especificado incorretamente.
4. Somente o ATMEGA328P suporta o pacote TQFP32, enquanto o pacote TQFP328 é incompatível, relacionado ao tamanho do cristal.Para o último, a espessura do cristal é um fator limitante.
5. O ATMEGA328 não possui um fusível de detector de baixa potência que possa reduzir ainda mais o consumo de energia e desativar o BOD (detecção marrom out).Esse fusível existe no segundo modelo, um recurso apenas visível nas versões da série Picopower que terminou com 48Pa, 88Pa, 168Pa, 328p, etc., e também se aplica aos BODs e fusíveis de bodse.
6. Existem diferenças sutis no sistema de comando envolvendo instruções de navegação, embora, a esse respeito, os chips de ambas as variantes possam executar programas compilados.
7. As letras "PU" representam o tipo de pacote do cristal, ou seja, um pacote de plástico DIP28.O ATMEGA328 é facilmente instalado nessa embalagem, portanto, a adição desse sufixo.Além disso, outras variantes de pacotes são indicadas por combinações de cartas como Au, Mu, etc.
O Arduino baseado no Mini ATMEGA328P é uma escolha simplificada, pois omite o USB para a parte em série.O ATMEGA328P PRO MINI é comumente conhecido por ser uma forma da AU ATMEGA328P.No entanto, para alguns dispositivos, esse tamanho pode ser muito pequeno e o modelo PU é mais apropriado.
Os microcontroladores são amplamente utilizados em vários dispositivos, incluindo o transistor de teste ATMEGA328P e o controlador ATMEGA328P NANO 3.0.
ATMEGA8535, ATMEGA16, ATMEGA32,
Faça o download da folha de dados da tecnologia Microchip ATMEGA328P-PN.
1. Qual é a arquitetura AVR do ATMEGA328P?
As instruções na memória do programa são executadas com uma pipeline de nível único.Enquanto uma instrução é executada, a próxima instrução é pré-buscada a partir da memória do programa.Esse conceito permite que as instruções sejam executadas em todos os ciclos do relógio.
2. Qual é a desvantagem do ATMEGA328P?
Um grande golpe para uso comercial é que é uma fonte única, arquitetura proprietária.Prós: Estes podem ser como o ATMEGA328 é um chip versátil.Possui ADC, I2C, suporte PWM, 40 pinos, etc.Contras: ATMEGA328 é caro ao considerar pequenas tarefas.
3. O ATMEGA328P é analógico ou digital?
O microcontrolador atmel atmga328p usado no Arduino Uno possui um módulo de conversão analógica-digital (ADC) capaz de converter uma tensão analógica em um número de 10 bits de 0 a 1023 ou um número de 8 bits de 0 a 255. A entradaPara o módulo pode ser selecionado para vir de qualquer uma das seis entradas no chip.
4. ATMEGA328P tem EEPROM?
Os microcontroladores suportados nas várias placas Arduino e Genuino têm diferentes quantidades de EEPROM: 1024 bytes nos atmaGA328p, 512 bytes nos atmga168 e atatega8, 4 kb (4096 bytes) nos atatega1280 e atmega260.As placas Arduino e Genuino 101 têm um espaço EEPROM emulado de 1024 bytes.