Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define F_CPU 1000000UL
- #include <avr/io.h>
- #include <stdio.h>
- #include <util/delay.h>
- int naopak(int byte){
- int temp = 0;
- int temp2 = 0;
- int n;
- int c = 1;
- for(n = 0; n <= 7; n++){
- temp = byte &128;
- if(temp){
- temp2 = temp2 | c;
- }
- c = c<<1;
- byte = byte<<1;
- }
- return temp2;
- }
- void vysviet_3x7(int kapacita){
- int sc = kapacita / 100;
- int de = (kapacita%100) / 10;
- int jc = (kapacita%100)%10;
- PORTD = naopak(sc + 48);
- _delay_ms(1);
- PORTD = naopak(de + 80);
- _delay_ms(1);
- PORTD = naopak(jc + 96);
- _delay_ms(1);
- }
- int main(void){
- DDRD = 0xFF;
- DDRC = 0x00;
- int max = 135; int kap = max;
- while(1){
- vysviet_3x7(kap);
- if((bit_is_clear(PINC, 0))& (kap > 0)){
- _delay_ms(250);
- kap = kap -1;
- }
- if((bit_is_clear(PINC, 1))& (kap < max)){
- _delay_ms(250);
- kap = kap + 1;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement