سلام دوستان
مشکل من اینه که وقتی دیتای دریافتی از سمت گوشی رو مستقیم روی LCD نمایش میدم کامل نمایش داده میشه؛ تیکه برنامه این قسمت رو به این صورت نوشتم:
ولی وقتی میخوام توی یه ارایه ذخیره کنم و بعد روی LCD نمایش بدم مقداری از اطلاعات رو از دست میدم. تیکه برنامه ش هم بصورت زیر نوشتم:
کلا قصد دارم یه آرایه رو از بلوتوث دریافت کنم و در حافظه ی eepromمیکرو atmega32 ذخیره کنم.
ممنون میشم راهنماییم کنید
مشکل من اینه که وقتی دیتای دریافتی از سمت گوشی رو مستقیم روی LCD نمایش میدم کامل نمایش داده میشه؛ تیکه برنامه این قسمت رو به این صورت نوشتم:
#define XTAL 8000000
#define BAUD 9600
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 9600
UCSRA=0x00;
UCSRB=0x98;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x67;
//----USART interrupt---------------------------------------
interrupt [USART_RXC] void usart_rx_isr(void)
{
sprintf (buffer_lcd,"%c",data);
lcd_puts(buffer_lcd);
};
ولی وقتی میخوام توی یه ارایه ذخیره کنم و بعد روی LCD نمایش بدم مقداری از اطلاعات رو از دست میدم. تیکه برنامه ش هم بصورت زیر نوشتم:
#define XTAL 8000000
#define BAUD 9600
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 9600
UCSRA=0x00;
UCSRB=0x98;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x67;
interrupt [USART_RXC] void usart_rx_isr(void)
{
char time[10];
char data;
int i=0,j=0;
data=UDR;
for (i=0;i<10;i++)
{
time[i]=data;
delay_ms(5);
}
for (j=0;j<10;j++)
{
//lcd_clear();
//lcd_gotoxy (0,0);
sprintf (buffer_lcd,"%c",time[j]);
lcd_puts(buffer_lcd);
delay_ms(5);
}
};
کلا قصد دارم یه آرایه رو از بلوتوث دریافت کنم و در حافظه ی eepromمیکرو atmega32 ذخیره کنم.
ممنون میشم راهنماییم کنید
دیدگاه