2013-11-25 76 views
0

我花了很多时间试图让UART与蓝牙模块一起工作。我正在使用PICkit 2编程器将代码刻录到PIC16F690。当我使用UART工具时,我可以正确传输和接收数据。我能够回应我输入的任何内容。当我将蓝牙模块连接到面包板时,我可以将从UART工具输入的数据接收到手机。但是,从手机中输入内容并不会回显。Uart PIC16F690和蓝牙问题

因此,这里是总结

  1. 发送和接收由PICkit 2编程器

  2. 我的手机可以从UART工具接收数据所提供的UART工具的作品。但是从我的手机发送 - >蓝牙 - > PIC不起作用。我有BC417蓝牙模块。可能是什么问题呢?

这里是我的代码

void UARTx_Read_Text(char *Output, char *Delimiter, char Attempts); 
void UARTx_Write_Text(char * UART_text); 
char UART_Data_Ready(); 



void main(){ 
unsigned char receive; 

// Set all pins as digital 
ANSEL = 0x00 ; 
ANSELH = 0x00 ; 

// Disable comparators 
C1ON_bit = 0 ; 
C2ON_bit = 0 ; 

UART1_Init(9600); // initialize UART1 module 
Delay_ms(5000); // delay 



UART1_Write_Text("TEST"); 
while (1) { 

    if (UART1_Data_Ready()) 
    { 
    receive = UART1_Read(); 
    UART1_Write(receive); 

    } 

} 
} 
提前

谢谢!

+0

“可能是什么问题?”任何事情都没有足够的信息。你能否确认有蓝牙模块发出串行数据?你是否在其他UART设备上尝试过相同的代码?您是否已验证您的UART可以处理特定于您的MCU和时钟的预分频器设置的选定波特率?你是否有任何错误,如缓冲区溢出或帧错误?什么是UART信号设置,握手? – Lundin

回答

0

“从我的电话 - >蓝牙 - > PIC不起作用”

因此,没有什么是错的任何细节,

我建议你不要将字节重新发送(由于延迟)但只是数它们并定期传输总数,看看是否会产生不同的症状。