سلام
دوستان من می خوام با میکرو ATMEGA8 یک رشته را از طریق HC05 بفرستم روی گوشی (BT simple terminal) تا نمایش بده .
مشکل اینه که از طریق ترمینال کامپیوتر به راحتی میتونم ارسال و دریافت اطلاعات با HC05 و برنامه گوشی داشته باشم ؛ اما اگه به جای ترمینال ، ماژول را به میکرو وصل کنم هیچی ارسال نمیشه
ممنون میشم راهنمایی کنید
فرکانس میکرو 8MH داخلی
CKSEL3..0 = 0100
CKOPT=1
بادریت ماژول :AT+ UART=9600,0,0
دوستان من می خوام با میکرو ATMEGA8 یک رشته را از طریق HC05 بفرستم روی گوشی (BT simple terminal) تا نمایش بده .
مشکل اینه که از طریق ترمینال کامپیوتر به راحتی میتونم ارسال و دریافت اطلاعات با HC05 و برنامه گوشی داشته باشم ؛ اما اگه به جای ترمینال ، ماژول را به میکرو وصل کنم هیچی ارسال نمیشه
ممنون میشم راهنمایی کنید
فرکانس میکرو 8MH داخلی
CKSEL3..0 = 0100
CKOPT=1
بادریت ماژول :AT+ UART=9600,0,0
کد:
#include <mega8.h> #include <stdio.h> #include <delay.h> void main(void) { // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM); UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8); UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL); UBRRH=0x00; UBRRL=0x33; while (1) { printf("SALAM"); delay_ms(5000); } }
دیدگاه