串口和DMA是一般单片机开发最常用的模块,之前在ARM芯片上开发过的很多产品都是通过串口空闲中断+DMA实现的数据收发。 CH32X035EVT中的串口DMA测试是串口2与串口3进行数据相互收发兵进行数据对比。先将两个串口收发互接:
由于之前没用过WCH-Link,准备用这个demo进行第一次MounRiver Studio下的WCH-Link调试。
我一般在MDK下调试用的比较多的就是打打断电,看看变量和内存数据。因为对MounRiver Studio不是特别熟悉,也算是搞明白了基本的用法,如图: 通过杜邦线将PA2与PB4相连,将PA3与PB3相连,就实现了两个串口的相互收发,通过调试可以看到数据正确之后会变量会显示PASSED,否则显示FAILED。 而且缓存的buf中也可以看到收发的数据内容。
刚刚开始接触这个IDE可能又点不习惯,因为用MDK用多了,多用几次发现顺手很多。 不知道这个芯片对于串口不定长完整帧的判断是不是也是采用串口空闲中断与DMA来协助实现的,或者是有什么更方便的办法,后续有时间再研究研究。 不定长帧的接收大家可以相互交流一下。
|