Ce pot face acasă pe plăcuța de proiect?

Similar cu placa de laborator, pe placa de etapa I există un buton USER, pe care îl puteți folosi cum doriți. Switch-ul este legat pe PD6 și are o rezistență la masă pentru când butonul este apăsat.

Setup-ul curent are nevoie de activarea rezistențelor de pull-up pentru a funcționa ca în laborator, dar are avantajul că nu deranjează atunci când este nevoie de PD6 în alte scopuri și protejează microcontroller-ul de scurturi (pentru cazul în care setați PD6 ca output pe 0 și apăsați în același timp butonul).

buton.c
#include <avr/io.h>
 
int main()
{
  DDRD &= ~(1 << PD6);  // pinul PD6 va fi input
  PORTD |= (1 << PD6);  // activam rezistenta de pull-up
 
  DDRD |= (1 << PD7);   // pinul corespunzator led-ului USER este output
 
  while (1)
  {
    if (!(PIND & (1 << PD6))) // daca bitul corespunzator PD6 este 0
      PORTD |= (1 << PD7);    // LED ON
    else 
      PORTD &= ~(1 << PD7);   // LED OFF
  }
  return 0;
}

pm/hidden.txt · Last modified: 2020/02/14 00:57 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0