打印
[MM32硬件]

【MM32 eMiniBoard测评报告】开箱及前期准备

[复制链接]
971|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
     开发板是周五收到的,灵动MM32从申请到收到板卡只花了十天时间,收到板卡都是很兴奋的,特别上第一次申请到灵动的开发板。其实资料包早通过http://www.mm32mcu.com/官网下载到本地了。

     将“MiniBoardStartKit_Release_Ver2.1.9.zip”文件解压,在“1-Document”文件夹下有快速指引手册,这里的《QS_MM32_MiniBoard_Quick_Start_Guide_Ver1.4》适合灵动的多个MiniBoard型号的开发板,如下图所示:

     引脚的分布如下:

     关于MM32型号命名的规则如下:

      文档有注意事项,针对各个型号的灵动MCU都有注明。由于JTAG下载方式的引脚用来控制LED,所以MiniBoard下载只能采用SWD下载方式。此次使用的开发板是采用MM32L073PF 做为MCU,因此将压缩文件“MM32_KEIL_Pack_Ver1.37.zip”解压,只需要要安装“MindMotion.MM32L0xx_DFP.1.0.9.pack”。
      拿到开发板时,外包装与ST公司的相似,都是一个硬透明胶盒封装,硬纸上介绍产品特点,产品系列。正反两面,中英文印制。虽然开发板上采用双Micro USB接口,但灵动微电子并无发放Micro USB数据线,不过这种接口应用太普遍了,因此基本上不影响开发板的使用。

      然后取出封装中开发板,来一张正面照

      由此可以看到板上资源丰富,按键和拨码开关采用精小的封装,带有3个VR调节接口,支持CAN总线,按键、无源蜂鸣器、LED灯等常用外设都集成。背面没有任何电子元器件,灵动微电子的**丝印在边缘,建议中间可以来张官方技术论坛二维码。
      然后连接PC端的USB,四盏不同颜色的灯映入眼帘,其中LED1是红色,为电源指示灯,程序运行起来与其他三盏灯的闪烁频率不一致。LED2为绿色,LED3为蓝色,LED4为橙色。然后K1~K4随便按下某个按键,无源蜂鸣器会常响,灯一直狂闪。

      然后我们了解一下该开发板支持烧录方式,该开发板支持JLink、ULINK2、MLink、MM32 Debugger调试工具下载,来看看这块板子所对应的原理图

     然后可以按照上面的引脚来连接我们的JLink调试工具,打开MM32L073PF\MiniBoardStartKit_Release_Ver2.1.9\3-Sample_Code\MiniBoard\MM32L073PF_MiniBoard_libReg\MBL073PF_n_lib\BLINK\IOKey\KEIL_PRJ下的工程,全编译一下,没有错误,没有警告。

      然后根据原理图来接线,尝试了多种接线方式,在Keil中均无识别到Jlink调试器

     原理图是通过下载“eMiniBoard.zip”文件解压得到的,《ug_mm32_emb_v0.9_cn.pdf》文档中管脚的标号与实物PCB上的不大一致,方向有所疑惑。整个板子以“e MiniBoard MB-023”丝印为正视图,那CN9的管脚标号应该是从1开始,而不是以25开始,所以说对不上原理图。将JLink设置对应的MCU型号也无法读取到。

       此次分享暂且告一段落,整体感觉上海灵动微电子的板卡集成度比较高,虽然MM32L073PF使用的32位ARM Cortex-M0处理器内核,但其实能够胜任一般的智能设备需求,最高工作频率可达48MHz。后续再对JLink调试下载进行研究,可能是设置的拨码开发不对,由于官方给出的参考文档都是汇总在一起,然后再分包说明,很多参考说明都是针对F1系列的,因此还需深入探讨探讨,如有网友有好的见解,欢迎来访留言,谢谢!

使用特权

评论回复
沙发
一路向北lm| | 2020-4-19 20:52 | 只看该作者
MMLink 不可以用吗?

使用特权

评论回复
板凳
yinwuqing110|  楼主 | 2020-4-20 09:22 | 只看该作者

MMLink需要怎么设置拨码开关呀,用官方的ISP下载软件也是行不通。

使用特权

评论回复
地板
一路向北lm| | 2020-4-20 13:21 | 只看该作者
yinwuqing110 发表于 2020-4-20 09:22
MMLink需要怎么设置拨码开关呀,用官方的ISP下载软件也是行不通。

感觉跟拨码开关没什么关系,需要装好那个驱动

使用特权

评论回复
5
yinwuqing110|  楼主 | 2020-4-21 10:52 | 只看该作者
一路向北lm 发表于 2020-4-20 13:21
感觉跟拨码开关没什么关系,需要装好那个驱动

     昨晚花了点时间,重新安装了一下MM32-Link的驱动,原来是没有使用管理员身份安装。此次使用管理员身份安装好后能正常烧录了。无需JLink调试下载器。

       设备管理器中的列表信息如下:

     打开串口测试工程,全编译通过,无错误无报警,点击下载按钮。

    设置相对应的驱动调试下载器

     打开SecureCRT,并设置串口参数

     此次的SecureCRT没有任何信息输出,按照工程的源码,实时打印”UART OK!“才对。

    部分源码如下:
void uart_initwBaudRate(u32 bound){
    //GPIO端口设置
    GPIO_InitTypeDef GPIO_InitStructure;
    UART_InitTypeDef UART_InitStructure;
   
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_UART1, ENABLE);        //使能UART1,GPIOA时钟
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);  //开启GPIOA,GPIOB时钟
    //UART 初始化设置
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_1);
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_1);
   
    UART_InitStructure.UART_BaudRate = bound;//串口波特率
    UART_InitStructure.UART_WordLength = UART_WordLength_8b;//字长为8位数据格式
    UART_InitStructure.UART_StopBits = UART_StopBits_1;//一个停止位
    UART_InitStructure.UART_Parity = UART_Parity_No;//无奇偶校验位
    UART_InitStructure.UART_HardwareFlowControl = UART_HardwareFlowControl_None;//无硬件数据流控制
    UART_InitStructure.UART_Mode = UART_Mode_Rx | UART_Mode_Tx;        //收发模式
   
    UART_Init(UART1, &UART_InitStructure); //初始化串口1
    UART_Cmd(UART1, ENABLE);                    //使能串口1
   
    //UART1_TX   GPIOA.9
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //PA.9
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;        //复用推挽输出
    GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIOA.9
   
    //UART1_RX          GPIOA.10初始化
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;//PA10
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入
    GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIOA.10  
   
}
/********************************************************************************************************
**函数信息 :UartInit_Loop(void)                     
**功能描述 :初始化串口
**输入参数 :无
**输出参数 :无
********************************************************************************************************/
void UartInit_Loop(void)
{
   
    //GPIO端口设置
    GPIO_InitTypeDef GPIO_InitStructure;
    UART_InitTypeDef UART_InitStructure;
   
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_UART1, ENABLE);        //使能UART1
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);  //开启GPIOA时钟
   
    //UART1 NVIC 配置
   
    //UART 初始化设置
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_1);
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_1);
   
   
    UART_InitStructure.UART_BaudRate = 115200;//串口波特率
    UART_InitStructure.UART_WordLength = UART_WordLength_8b;//字长为8位数据格式
    UART_InitStructure.UART_StopBits = UART_StopBits_1;//一个停止位
    UART_InitStructure.UART_Parity = UART_Parity_No;//无奇偶校验位
    UART_InitStructure.UART_HardwareFlowControl = UART_HardwareFlowControl_None;//无硬件数据流控制
    UART_InitStructure.UART_Mode = UART_Mode_Rx | UART_Mode_Tx;        //收发模式
   
    UART_Init(UART1, &UART_InitStructure); //初始化串口1
    UART_Cmd(UART1, ENABLE);                    //使能串口1
   
    //UART1_TX   GPIOA.9
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //PA.9
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;        //复用推挽输出
    GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIOA.9
   
    //UART1_RX          GPIOA.10初始化
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;//PA10
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入
    GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIOA.10  
   
    printf("UART OK!\r\n");
}
   具体的实物连接如下:

使用特权

评论回复
6
一路向北lm| | 2020-4-21 14:53 | 只看该作者
yinwuqing110 发表于 2020-4-21 10:52
昨晚花了点时间,重新安装了一下MM32-Link的驱动,原来是没有使用管理员身份安装。此次使用管理员身 ...

厉害啦,楼主什么系统?win7?

使用特权

评论回复
7
yinwuqing110|  楼主 | 2020-4-21 16:38 | 只看该作者
一路向北lm 发表于 2020-4-21 14:53
厉害啦,楼主什么系统?win7?

是win10系统哦,不带网孔的超薄型笔记本

使用特权

评论回复
8
一路向北lm| | 2020-4-21 16:59 | 只看该作者
yinwuqing110 发表于 2020-4-21 16:38
是win10系统哦,不带网孔的超薄型笔记本

哈哈,这么认真,我的win7也可以

使用特权

评论回复
9
天灵灵地灵灵| | 2020-4-22 13:13 | 只看该作者
NICE,非常赞。

使用特权

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

本版积分规则

99

主题

1023

帖子

7

粉丝