luanpcs

Relatório 03

Jul 24th, 2021 (edited)
714
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. int main(void)
  2. {
  3.   /* Configurando os pinos PD7 e PD5 como saída (sem mascaramento).
  4.     Todos os bits, representantes dos pinos, que tiverem nível lógico:
  5.     1 (HIGH) - serão saída
  6.     0 (LOW) - serão entrada
  7.     Exemplo:
  8.     PINOS Px. = 7 6 5 4 3 2 1 0
  9.     BINARIO = 1 0 1 0 0 0 0 0
  10.     HEX = 0x A | 0 => 0XA0
  11.   */
  12.   DDRD = 0xA0; // PD5 e PD7 agora são saída
  13.   while (1)
  14.   {
  15.     /*
  16.       P1OUT serve para atribuir um nível lógico alto (1) ou baixo (0) ao pino. Exemplo:
  17.       1-) Quero atribuir nível lógico alto (1) para o pino PD5
  18.       PINOS Px. = 7 6 5 4 3 2 1 0
  19.       BINARIO = 0 0 1 0 0 0 0 0
  20.       HEX = 0x 2 | 0 => 0x20.
  21.       2-) Quero atribuir nível lógico alto (1) para o pino PD7
  22.       PINOS Px. = 7 6 5 4 3 2 1 0
  23.       BINARIO = 1 0 0 0 0 0 0 0
  24.       HEX = 0x 8 | 0 => 0x80.
  25.       3-) Quero desligar todos os pinos
  26.       PINOS = 7 6 5 4 3 2 1 0
  27.       BINARIO = 0 0 0 0 0 0 0 0
  28.       HEX = 0x 0 | 0 => 0x00.
  29.       No exemplo abaixo ficará piscando os leds VERDE(PD5) e VERMELHO (PD7), de acordo
  30.       com a montagem no thinkercad.
  31.     */
  32.     PORTD = 0xA0;    // ligando os pino PD5 e PD7.
  33.     _delay_ms(1000); // delay_ms contabiliza em ms, então 1000 * 1ms = 1s.
  34.     PORTD = 0x00;    // desligando todos pinos.
  35.     _delay_ms(1000); // delay de 1s.
  36.   }
  37. }
  38.  
RAW Paste Data