完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
问题一:HC05蓝牙模块,将例程看了一遍。进行HC05初始化HC05_Init()的时候,因为我们在usart.h中有#define USART2_RX_EN 1 所以,使能了串口接收,那么我们在使用DMA进行AT指令传送之前以及之后需要先禁止接收然后再开接收使能么?
问题二://确保一次发送数据不超过USART2_MAX_SEND_LEN字节 void u2_printf(char* fmt,...) { va_list ap;//初始化指向可变参数列表的指针,可变参数列表指针是因为这个列表的长度是不定的。 va_start(ap,fmt);//va_start有个对应的va_end.这个函数是将fmt数组的第一个参数的地址赋给ap,ap指向参数列表开始。 vsprintf((char*)USART2_TX_BUF,fmt,ap);//将fmt进行转化形成格式化字符串,即可以显示的的字符串,放入数组USART2_TX_BUF数组中 va_end(ap); while(DMA_GetCurrDataCounter(DMA1_Channel7)!=0); //等待通道7传输完成 UART_DMA_Enable(DMA1_Channel7,strlen((const char*)USART2_TX_BUF)); //通过dma发送数组USART2_TX_BUF中的可显示字符。 } 这个函数理解得不怎么好,后面的注释是我自己改的,不知道合理不 |
|
相关推荐
2个回答
|
|
|
|
|
|
谢谢原子哥
|
|
|
|
只有小组成员才能发言,加入小组>>
327浏览 1评论
443浏览 1评论
572浏览 1评论
用PSOC6 BLE当外围设备,两者传输数据时,psoc6概率性出现蓝牙挂死的原因?
455浏览 1评论
是否有办法通过CYW20835板的固件发送BLE HCI命令?
426浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 23:47 , Processed in 0.577613 second(s), Total 70, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号