打印
[MM32软件]

【灵动微电子MM32 eMiniBoard】+ MM32测试之MM32eMiniBoard036开发板

[复制链接]
5104|45
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
七毛钱|  楼主 | 2021-11-10 09:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
今天抽时间出来看看mm32的板子。刚拿到板子时,就跑到官网(https://www.mindmotion.com.cn/products/mm32mcu/mm32f/mm32f_mainstream/mm32f3270/),发现使用的和stm32类似的库文件,这点国产32都差不多。因为本人用过AT32,gd32,hk32,n32,stm32等。废话不多说了,直接进入正题。

一、测试情况表

一、测试简况
原理图,使用手册,官方例程都是上手最快的资料。官方例程如下:
1.模拟看门狗测试
调节可变电阻RV1,电压表测试电容C22两端电压1.16V,转换ADC值为1.16/3.3*4096≈1440.
配置如下,则ADC不会进入中断,因为1461在0到2772范围之内。AD值:1461(由于ADC误差以及电源纹波等,通常需要进行滤波)
当调节可变电阻RV1使ADC值不断增大直至>=2722,则进入中断:如下图的断点,ADCVAL接近2772。










使用特权

评论回复
沙发
七毛钱|  楼主 | 2021-11-10 09:46 | 只看该作者
本帖最后由 七毛钱 于 2021-11-10 09:47 编辑

2.ADC+DMA 多通道扫描测试
官方例程:ADC_DMA_MultiChan_Interrupt,每次扫描3个ADC通道后进入DMA1_Channel1_IRQHandler中断。如图:
主要是DMA配置如下图:

实际情况会让ADC不断通过DMA更新数据。比如使用中断,在每次进入中断则刷新整个varADCavarage[AVERAGELEN][ADCNUM]数组,这个处理ADC数值时,会有足够多的数据。可以在中断中就行ADC值处理(滤波等),但实际不推荐,一般更新处理标志。
3.DMA 半传输完成标志测试
初始化如图:
添加代码:




使用特权

评论回复
板凳
七毛钱|  楼主 | 2021-11-10 09:50 | 只看该作者
DMA半传输完成中断调试如下:

DMA传输完成中断:


这里为了测试才在中断中关闭ADC : ADC_SoftwareStartConvCmd(ADC1, DISABLE);
3.ADC+DMA+TIM
根据官方例程:ADC_TIM1Trig_DMA_MultiChan_Interrupt,程序作部分修改结果如图:
使DMA更新整个varADCavarage[AVERAGELEN][ADCSCANNUM]数值,使用宏定义方便修改ADC通道以及每个ADC通道缓存大小。
#define ADCSCANNUM 6
#define AVERAGELEN 20


使用特权

评论回复
地板
七毛钱|  楼主 | 2021-11-10 09:51 | 只看该作者
使用定时器主要是把软件触发变成定时器触发。
CAN+UART
4.CAN 自发自收 + UART 打印
根据官方例程:CAN_Filter_20Groups,做相关修改:
        1. 主函数:
2. CAN 配置:
        CAN_Peli_InitStruct.STM = ENABLE; //开启Pelican的自测模式

使用特权

评论回复
5
七毛钱|  楼主 | 2021-11-10 09:53 | 只看该作者
测试现象如下: CAN发送信息,进入中断后,gRxFlag标志置1,从而到UART打印,这里发现打印信息顺序不正常。另外can发送的信息也要对应,因为设置了过滤器。
左边的输出信息是打断点输出的:CANID:0x188 Data: aa;输出信息是正确的,可能是缓冲问题吧!
5.EXTI
根据官方例程:EXTI_Key 直接测试。按下Key4,进入EXTI0中断.如下图:



使用特权

评论回复
6
七毛钱|  楼主 | 2021-11-10 09:54 | 只看该作者
6.FLASH
根据官方例程:FLASH_Program,结果如下图:
先擦除扇区Bank1的数据:FLASH_ErasePage(BANK1_WRITE_START_ADDR);
重新写入扇区Bank1的数据:gFlashStatus = FLASH_ProgramWord(BANK1_WRITE_START_ADDR, gData);
读出扇区Bank1的数据:data = *(__IO u32*) BANK1_WRITE_START_ADDR;
7.I2C
官方例程:I2C_EEPROM_DMA_Master_Interrupt,一直卡在下图,奇怪!!!

由于项目较忙,后面继续更新!另外,不足请指出,不胜感激!






















使用特权

评论回复
7
yangxiaor520| | 2021-11-11 07:49 | 只看该作者
不错,谢谢楼主分享。

使用特权

评论回复
8
yljon| | 2021-11-12 15:28 | 只看该作者
学习一下

使用特权

评论回复
9
albertaabbot| | 2021-11-12 23:10 | 只看该作者
现在还送板子吗   

使用特权

评论回复
10
yeates333| | 2021-11-12 23:10 | 只看该作者
可以使用iar开发吗      

使用特权

评论回复
11
janewood| | 2021-11-12 23:10 | 只看该作者
MM32 eMiniBoard看着非常不错。   

使用特权

评论回复
12
hilahope| | 2021-11-12 23:11 | 只看该作者
有相关的资料可以下载吗   

使用特权

评论回复
13
rosemoore| | 2021-11-12 23:11 | 只看该作者
AT32,gd32,hk32,n32,stm32用的真多。   

使用特权

评论回复
14
primojones| | 2021-11-12 23:11 | 只看该作者
板载资源真是多呢。   

使用特权

评论回复
15
louliana| | 2021-11-12 23:11 | 只看该作者
有RISC-V的芯片吗?   

使用特权

评论回复
16
burgessmaggie| | 2021-11-12 23:12 | 只看该作者
这个是多大的flash呢?   

使用特权

评论回复
17
jackcat| | 2021-11-12 23:12 | 只看该作者
开发库是怎么建立的?

使用特权

评论回复
18
vivilyly| | 2021-11-12 23:12 | 只看该作者
函数库在哪里下载?   

使用特权

评论回复
19
carpsnow| | 2021-11-16 17:04 | 只看该作者
太厉害了,测试这么多
牛气~~

使用特权

评论回复
20
chenci2013| | 2021-12-31 21:10 | 只看该作者
谢谢lz分享,很有用                                 

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

342

主题

2335

帖子

4

粉丝