Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. #include <avr/io.h>
  2. #include <avr/interrupt.h>
  3. #include <util/delay.h>
  4.  
  5. #define seg_a ~(1<<PA0)
  6. #define seg_b ~(1<<PA1)
  7. #define seg_c ~(1<<PA2)
  8. #define seg_d ~(1<<PA3)
  9. #define seg_e ~(1<<PA4)
  10. #define seg_f ~(1<<PA5)
  11. #define seg_g ~(1<<PA6)
  12. #define seg_kropka ~(1<<PA7)
  13.  
  14. #define C0 (seg_a & seg_b & seg_c & seg_d & seg_e & seg_f)
  15. #define C1 (seg_b & seg_c)
  16. #define C2 (seg_a & seg_b & seg_d & seg_e & seg_g)
  17. #define C3 (seg_a & seg_b & seg_c & seg_d & seg_g)
  18. #define C4 (seg_b & seg_c & seg_f & seg_g)
  19. #define C5 (seg_a & seg_c & seg_d & seg_f & seg_g)
  20. #define C6 (seg_a & seg_c & seg_d & seg_e & seg_f & seg_g)
  21. #define C7 (seg_a & seg_b & seg_c)
  22. #define C8 (seg_a & seg_b & seg_c & seg_d & seg_e & seg_f & seg_g)
  23. #define C9 (seg_a & seg_b & seg_c & seg_d & seg_f & seg_g)
  24.  
  25.  
  26. #define W1 (1<<PC0)
  27. #define W2 (1<<PC1)
  28. #define W3 (1<<PC2)
  29. #define W4 (1<<PC3)
  30.  
  31.  
  32.  
  33.  
  34. volatile uint8_t setne,sekundy,dziesietne,dziesiatki;
  35. volatile uint8_t a=0,b=1,c=2,d=3;
  36.  
  37. volatile uint8_t tab1[] = {C0,C1,C2,C3,C4,C5,C6,C7,C8,C9};
  38.  
  39.  
  40.  
  41. int main(void) {
  42.  
  43. // USTAWIENIA ADC *****************************************************************
  44. ADMUX |= (1<<REFS0)|(1<<REFS1); // 1,1V VREF
  45. ADCSRA |= (1<<ADEN); // ADC ENABLE
  46. ADCSRA |= (1<<ADPS0)|(1<<ADPS1)|(1<<ADPS2); // preskaler
  47.  
  48. // USTAWIENIA PORTÓW **************************************************************
  49.  
  50. DDRC |= 0xff;
  51. PORTC |= 0xff;
  52.  
  53. DDRA |= 0xff;
  54. PORTA |= 0xff;
  55.  
  56. // USTAWIENIA TIMERA 0 ************************************************************
  57.  
  58. TCCR0 |= (1<<CS00)|(1<<CS02); // preskaler 1024
  59. TCNT0 = 204;
  60. TIMSK |= (1<<TOIE0);
  61.  
  62.  
  63. sei(); // globalne zezwolenie na przerwania
  64.  
  65. while(1) {
  66.  
  67. PORTC &= ~(1<<PC0);
  68. PORTA &= ~(1<<PA0);
  69.  
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement