天线|RF射频
直播中

何元

7年用户 240经验值
私信 关注
[问答]

请问gsm模块中的u2_printf 函数原理是什么?

gsm模块发送AT字符串命令的时候用了 u2_printf 函数,但是不理解函数里面的原理。比如为啥要调用va_start  va_end
//串口2,printf 函数
//确保一次发送数据不超过USART2_MAX_SEND_LEN字节
void u2_printf(char* fmt,...)  
{  
va_list ap;
va_start(ap,fmt);
vsprintf((char*)USART2_TX_BUF,fmt,ap);
va_end(ap);
while(DMA1_Channel7->CNDTR!=0); //等待通道7传输完成   
UART_DMA_Enable(DMA1_Channel7,strlen((const char*)USART2_TX_BUF));  //通过dma发送出去
}

回帖(1)

颜小玲

2019-4-4 10:19:46
这个你百度下就知道了。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分