Subversion Repositories svnkaklik

Compare Revisions

Ignore whitespace Rev 296 → Rev 297

/programy/Atmel_C/RS232toRS485/P232.c
0,0 → 1,55
//----------------------------------------------------------------------------------
// 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 timer
 
PORTB |= (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 );
}