打印
[MM32软件]

【MM32 eMiniBoard试用连载】第一个程序

[复制链接]
447|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2021-2-3 17:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【MM32 eMiniBoard试用连载】+开箱+软件中配置完成后,
给板cn2连接电脑,看到板子上的4个LED闪烁。蜂鸣器响了下。
查下eMiniBoard开发板用户手册,  内嵌 MM32-LINK-OB 在线仿真器,支持 SWD 调试接口以及智能连接的 CDC 虚拟串口
http://www.mindmotion.com.cn/download.aspx?cid=2542
下载MM32L3xx(n) 库函数和例程
准备按手册编辑一小程序。


在Boards_MM32L3xx_n\MBL373PF_n_lib\UART\UART_Print_NVIC\KEIL_PRJ路径下加载UART_Print_NVIC.UVprojx文件。
原main程序
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "uart_nvic.h"         
/********************************************************************************************************
**º¯ÊýÐÅÏ¢ £ºint main (void)                          
**¹¦ÄÜÃèÊö £º¿ª»úºó£¬´®¿Ú·¢ËÍÊý¾Ý£¬²¢µÈ´ýÉÏλ»ú·¢ËÍÐÅÏ¢£¬È»ºóÔÙ´òÓ¡³öÀ´
**ÊäÈë²ÎÊý £º
**Êä³ö²ÎÊý £º
********************************************************************************************************/
int main(void)
{      
    u8 t;
    u8 len;      
                u8 mData;
    u16 times=0;
    delay_init();                     //ÑÓʱº¯Êý³õʼ»¯      
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// ÉèÖÃÖжÏÓÅÏȼ¶·Ö×é2
    uart_nvic_init(115200);         //´®¿Ú³õʼ»¯Îª115200
    LED_Init();                           //³õʼ»¯ÓëLEDÁ¬½ÓµÄÓ²¼þ½Ó¿Ú
    while(1)
    {
        IF(UART_RX_STA&0x8000)
        {                                          
            len=UART_RX_STA&0x3fff;//µÃµ½´Ë´Î½ÓÊÕµ½µÄÊý¾Ý³¤¶È
            printf("\r\nÄú·¢Ë͵ÄÏûϢΪ:\r\n");
            for(t=0;t<len;t++)
            {
                while (UART_GetFlagStatus(UART1, UART_IT_TXIEN) == RESET);
                UART_SendData(UART1, (u8)UART_RX_BUF[t]);
                                                                mData=(u8)UART_RX_BUF[t];
      
            }
            printf("\r\n\r\n");//²åÈë»»ÐÐ
            UART_RX_STA=0;
        }else
        {
            times++;
            if(times%5000==0)
            {
                printf("\r\nMini Board ´®¿ÚʵÑé\r\n");
            }
            if(times%200==0)printf("ÇëÊäÈëÊý¾Ý,ÒԻسµ¼ü½áÊø\r\n");  
            if(times%30==0)LED1=!LED1;//ÉÁ˸LED,ÌáʾϵͳÕýÔÚÔËÐÐ.
            delay_ms(10);   
        }
    }         
}


在原程序        mData=(u8)UART_RX_BUF[t];后增加根据包含字符控制led2开关
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "uart_nvic.h"         
/********************************************************************************************************
**º¯ÊýÐÅÏ¢ £ºint main (void)                          
**¹¦ÄÜÃèÊö £º¿ª»úºó£¬´®¿Ú·¢ËÍÊý¾Ý£¬²¢µÈ´ýÉÏλ»ú·¢ËÍÐÅÏ¢£¬È»ºóÔÙ´òÓ¡³öÀ´
**ÊäÈë²ÎÊý £º
**Êä³ö²ÎÊý £º
********************************************************************************************************/
int main(void)
{      
    u8 t;
    u8 len;      
                u8 mData;
    u16 times=0;
    delay_init();                     //ÑÓʱº¯Êý³õʼ»¯      
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// ÉèÖÃÖжÏÓÅÏȼ¶·Ö×é2
    uart_nvic_init(115200);         //´®¿Ú³õʼ»¯Îª115200
    LED_Init();                           //³õʼ»¯ÓëLEDÁ¬½ÓµÄÓ²¼þ½Ó¿Ú
    while(1)
    {
        if(UART_RX_STA&0x8000)
        {                                          
            len=UART_RX_STA&0x3fff;//µÃµ½´Ë´Î½ÓÊÕµ½µÄÊý¾Ý³¤¶È
            printf("\r\nÄú·¢Ë͵ÄÏûϢΪ:\r\n");
            for(t=0;t<len;t++)
            {
                while (UART_GetFlagStatus(UART1, UART_IT_TXIEN) == RESET);
                UART_SendData(UART1, (u8)UART_RX_BUF[t]);
                                                                mData=(u8)UART_RX_BUF[t];
                                                                if(mData==81)LED2=0;
                                                               
                                                                if(mData==88)LED2=1;
                                                               
            }
            printf("\r\n\r\n");//²åÈë»»ÐÐ
            UART_RX_STA=0;
        }else
        {
            times++;
            if(times%5000==0)
            {
                printf("\r\nMini Board ´®¿ÚʵÑé\r\n");
            }
            if(times%200==0)printf("ÇëÊäÈëÊý¾Ý,ÒԻسµ¼ü½áÊø\r\n");  
            if(times%30==0)LED1=!LED1;//ÉÁ˸LED,ÌáʾϵͳÕýÔÚÔËÐÐ.
            delay_ms(10);   
        }
    }         
}

build后


设breakpoint,打开串口调试软件sscom32.exe,F5运行



不知为什么没有收只是发。

使用特权

评论回复
沙发
里面有晴雨| | 2021-2-5 09:23 | 只看该作者
期待楼主有更好的作品,不错的,很棒。

使用特权

评论回复
板凳
weifeng90| | 2021-2-8 08:27 | 只看该作者
是哪一期的开发版?

使用特权

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

本版积分规则

1881

主题

6428

帖子

8

粉丝