hii ....
根据UART_SYNC示例,我刚刚在BLE_APP_BAREBONE示例中实现了UART,但传输(使用函数UART2_WRITE)工作正常。在接收的情况下,它不起作用(使用函数UART2_READ)。你能帮助我为什么UART没有收到数据?
在配置和启用UART时钟后,我只需保留GPIO(P0.4和P0.5)。并在核开某些数据之后传输一些数据(正常工作)但未接收到数据不触发回调UART2_READ_COMPLETION_CB之后。
GPIO保留: -
保留_GPIO(UART2_TX,GPIO_PORT_0,GPIO_PIN_4,PID_UART2_TX);
保留_GPIO(UART2_RX,GPIO_PORT_0,GPIO_PIN_5,PID_UART2_RX);
配置GPIO: -
gpio_configurepin(gpio_port_0,gpio_pin_4,输出,pid_uart2_tx,false);
gpio_configurepin(gpio_port_0,gpio_pin_5,输入,pid_uart2_rx,false);
时钟使能: -
setBits16(CLK_PER_REG,UART2_ENABLE,1);//为UART 2启用时钟
UART2_INIT(UART_BAUDRATE_115K2,UART_CHARFORMAT_8);
之后:-
UART2_WRITE((UINT8_T *)“测试数据\ n \ r”,strlen(“数据\ n \ r”测试),UART2_WRITE_COMPLETION_CB);// 工作良好
UART2_READ(RXBUF,1,UART2_READ_COMPLETION_CB);//不触发UART2_READ_COMPLETION_CB
嗨alan.a,
如果您正在使用任何睡眠模式,请澄清您是否可以澄清?如果是,则由于UART块无法通过UART I接收数据的最可能原因是在睡眠模式下供电。这意味着设备不会收到任何数据,因为它是睡眠模式。我建议您在活动模式下运行代码(没有任何睡眠配置)并尝试将数据发送到DA14580。此外,探测UART信号是非常有帮助的。
谢谢,PM_DIALOG.