Advertisement
miszczo

Untitled

Feb 28th, 2015
270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.20 KB | None | 0 0
  1. /*
  2.  * main.c
  3.  *
  4.  *  Created on: 28 lut 2015
  5.  *      Author: miszczo
  6.  *
  7.  *; ============================================
  8.  *;   H A R D W A R E   I N F O R M A T I O N
  9.  *; ============================================
  10.  *;
  11.  *;
  12.  *;               ____________
  13.  *;              /  ATtiny13  |
  14.  *;         |             |
  15.  *;    RESET o--|RES       VCC|--o +5V VCC
  16.  *;             |             |
  17.  *;     ADC  o--|PB3       PB2|--o SCK
  18.  *;             |             |
  19.  *;     LED  o--|PB4       PB1|--o MISO
  20.  *;             |             |
  21.  *;      0 V o--|GND       PB0|--o MOSI
  22.  *;             |_____________|
  23.  *;
  24.  */
  25.  
  26. #include <avr/io.h>
  27. #include <util/delay.h>
  28.  
  29. #define LED_OFF PORTB |=(1<<PB4)
  30. #define LED_ON PORTB &= ~(1<<PB4)
  31.  
  32. uint8_t get_random(void);
  33.  
  34.  
  35. int main()
  36. {
  37.     DDRB = (1<<PB4);
  38.     while(1){
  39.         if(get_random()) LED_ON;
  40.         else LED_OFF;
  41.         _delay_ms(400);
  42.  
  43.     }
  44. }
  45.  
  46. // funckaj zwaraca losowa wartosc 1 lub 0
  47. uint8_t get_random(void){
  48.     ADMUX = (1<<MUX0)|(1<<MUX1); // pomiar na PB3
  49.     //ustawienia adc, adc enable , preskaler 128 , start conversion,
  50.     ADCSRA = (1<<ADEN) | (1<<ADPS2) | (1<<ADPS1) | (1<<ADPS0) | (1<<ADSC);
  51.     while(ADCSRA&(1<<ADSC));//wait for end conversion
  52.     return (ADCL&0x01);
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement