Rev 298 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download
//----------------------------------------------------------------------------------// Prevodnik RS232 <--> RS485 s prodlevou pri prevodu smerem do RS485// pri startbitu na RS232 zapne okamzite vysilac pokud nejsou detekovana data z RS485. pak ceka definovanou dobu, nez opet prepne kanal na prijem.//----------------------------------------------------------------------------------#include <avr/io.h>#include <avr/interrupt.h>#include <stdlib.h>#include <ctype.h>#include <avr/eeprom.h>#include <avr/pgmspace.h>#define F_CPU 3686400UL#include <util/delay.h>void delay_ms(unsigned int ms){while(ms){_delay_ms(0.96);ms--;}}// ------------------------------------------------------------------// Main// ------------------------------------------------------------------int main(void){DDRD |= (1<<DDD5);DDRB |= (1<<DDB3);TCCR1B |= ((1 << CS10) | (1 << CS11)); // Set up timerPORTB |= (1<<PB3);while(1){if(!(PIND & (1<<PD1))){TCNT1 = 0;PORTD &= ~(1<<PD5);}if ((TCNT1 >= 1000) && ((PIND & (1<<PD1)))){PORTD |= (1<<PD5);TCNT1 = 0;}}return( 0 );}