初级会员

- 积分
- 96
- 金钱
- 96
- 注册时间
- 2020-9-30
- 在线时间
- 22 小时
|
各位大佬好,我在接收中断回调函数里面写了一段存储的函数:
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) //接收完成中断回调函数,这里设置的是每次接收一个就中断一次。
{
if(huart->Instance==USART3)
{
arry[i]=*((huart->pRxBuffPtr)-1); //因为buff只有一个位置,所以我们每次都要让指针退回一格,回到原来的位置好让下次用。
HAL_UART_Transmit(&usart3_handler,&arry[i],1,1000);
if(arry[i]=='\n')
{
res=f_open(&fil,"0:/message.txt",FA_CREATE_ALWAYS|FA_WRITE);//打开文件设置为创建和读模式
for(j=0;j<i;j++)
{
res=f_write(&fil,&arry[j],1,&bww); //写文件
}
f_close(&fil);
i=0;
j=0;
}
}
}
但是程序运行的结果,在sd卡里面并没有存进去数据,打开message文件夹,里面为空。
这是为什么
|
|