Advertisement
Guest User

Untitled

a guest
May 30th, 2015
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.61 KB | None | 0 0
  1. #include  <avr/io.h>
  2.     #include  <util/delay.h>
  3.     #include "lcd44780.h"
  4.  
  5.     uint16_t pomiar(uint8_t kanal); // deklaracja funkcji pomiaru
  6.  
  7.     int main(void)
  8.     {
  9.             lcd_init();                                                                     // inizjalizacja LCD
  10.  
  11.             ADMUX |= (1<<REFS0);                                // Nap ref = 2,56 V
  12.             ADCSRA |= (1<<ADEN)|(1<<ADPS1)|(1<<ADPS2);              //preskaler 64, ADC ON
  13.  
  14.             uint16_t wynik;
  15.             uint16_t pm;
  16.             uint8_t cz_d;
  17.             uint8_t cz_u;
  18.  
  19.             while(1)
  20.                     {
  21.                     lcd_cls();                                                      // kasowanie zawartości LCD
  22.                     pm = pomiar(5);                                         // odczyt wart ADC
  23.                     wynik = pm * 25;
  24.                     cz_d = wynik/10000;
  25.                     cz_u = (wynik/100) % 100;
  26.                     lcd_int( cz_d);
  27.                     lcd_char('.');
  28.                     lcd_int( cz_u );
  29.                     lcd_str( "V");
  30.                     _delay_ms(1000);
  31.                     }
  32.             }
  33.             uint16_t pomiar(uint8_t kanal) // def. funkcji pomiarowej
  34.             {
  35.                     ADMUX |= (ADMUX & 0xE8) | kanal;        // ustawenie kanału ADC
  36.                     ADCSRA |= (1<<ADSC);                            // start pomiaru
  37.                     while( ADCSRA & (1<<ADSC));                     // gdy pomiar wykonany
  38.                     return ADCW;                                            //zwróć wynik
  39.             }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement