Skocz do zawartości

Problem z komunikacją KAmodBTM222 z atmegą8


mazurek266

Pomocna odpowiedź

Witam próbuję stworzyć robota sterowanego z komputera za pomocą adaptera BT (po stronie komputera) i modułu KAmodBTM222 (po stronie atmegi 8). z komputera za pomocą winsocka wysyłam znaki do odbiornika KAmodBTM222 wszystko działa bez zarzutu diodka na module sygnalizuje że docierają do niej dane . Atmega prawdopodobnie odbiera te dane testowałem to takim sposobem nie jestem pewien czy to działa

while(!(UCSRA & (1<<RXC)));
{
	PORTB = 0x04;

}

kod atmegi

/*
* robot.c
*
* Created: 2014-06-08 16:19:44
*  Author: mati
*/ 

#define F_CPU 16000000UL
#include<avr/io.h>
#include<util/delay.h>
#include<inttypes.h>
#include<string.h> 
#include<avr/interrupt.h>
#include<stdint.h>
//#include<KAmodBTM222.c>
//#include"KAmodBTM222.h"
volatile uint8_t dane;

//#define RS_BAUD 19200
//#define RS_UBRR F_CPU / 16 / RS_BAUD - 1


void PWM_Init(void)
{

TCCR1A=(1<<COM1A1)|(1<<COM1B1)|(1<<WGM11);
TCCR1B=(1<<WGM13)|(1<WGM12)|(1<<CS10);
DDRB = (1<<2)|(1<<1);

ICR1  = 3200;
}
void USART_Init(int baud)
{
UBRRH = (unsigned char)(baud>>8);
UBRRL = (unsigned char)baud;

UCSRC = (1<<URSEL)|(1<<UCSZ0)|(1<<UCSZ0);
UCSRB = (1<<RXEN)|(1<<TXEN)|(1<<RXCIE);
}
/*
unsigned char UART_REC(void)
{
while(!(UCSRA & (1<<RXC)));
{
	return UDR;

}

}
int konw(char ch)
{
int i=ch-48;

return i;
}*/

int main(void)
{

//PWM_Init();
USART_Init(51);
DDRB= 0x04;

sei();


while (1)
{ 

};



}

ISR(USART__RXC_vect)
{
 dane= UDR;

if (dane == "n" )
{
	//OCR1A = 3200;
	//OCR1B = 3200;
	PORTB=0x04;

}


}

Nie jestem pewien w czym tkwi problem ale zdaje mi się że jest coś nie tak z sprawdzaniem warunku, lecz nie jestem pewien.

Proszę o rady.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.