原创 【MC3172】+开发环境构建及基本测试

2022-10-24 18:42 1930 14 4 分类: MCU/ 嵌入式

面对这块MC3172多线程开发板,它真的是体型小巧,以至于即使你上电也不会发现它有任何的变化,因为它就是一个带下载调试工具的最小系统,是不带任何外设,即使是电源指示灯和复位键。

那么我们就唯有自力更生来解决问题,首先要解决的就是完成开发环境的构建。

MC3172所用的开发工具为国产的MounRiver Studio ,它是一款集成开发 工作环境,可在下载地址:http://www.mounriver.com/download获取。

由于以前曾使用该软件设计过CH32V307的程序,所用的版本是Version: v1.82,故省去了软件的安装过程。

此外,在开发过程中还要涉及线程配置器、下载软件及例程,这些可通过下载资料合集来获得,其下载地址为:http://www.gxchip.cn/down/show-70.html

在安装好MounRiver Studio 的情况下,打开例程MC3172,则其界面如图1所示。

1 工作界面

此时,可左侧的项目栏中找到线程配置器,并将其打开。

为点亮一个外部连接再PA0上的LED灯,可按图3所示来进行配置,并点击“生成代码”按键来生成。

2 引脚分配

3 线程配置

依照上面的配置,需对线程0的程序加以修改,即去掉原来的注消语句,见图4所示。

修改线程

然后保存修改,并进行编译,则编译结果如图5所示。

5 完成编译

要进行程序下载,需使用图6所示的下载软件,在连接开发板的情况下,点击“连接设备”。然后选取生成的目标文件*.hex,并点击“烧录固件”即可。

6 完成下载

此时,可以发现LED模块被点亮,见图7所示。

熄灭状态:

点亮状态:

7 测试效果

也许有人会说这并不能说明问题,那不妨将线程0的程序按如下的内容加以修改。

void thread0_main(void)
  • {
  • //使能了GPIOA的时钟
  • INTDEV_SET_CLK_RST(GPIOA_BASE_ADDR,(INTDEV_RUN|INTDEV_IS_GROUP0|INTDEV_CLK_IS_CORECLK_DIV2));
  • //将PA0设置为输出模式
  • GPIO_SET_OUTPUT_EN_VALUE(GPIOA_BASE_ADDR,(GPIO_PIN0),GPIO_SET_ENABLE);
  • //配置默认输出为高电平
  • GPIO_SET_OUTPUT_PIN_TO_1(GPIOA_BASE_ADDR,GPIO_PIN0);
  • //GPIO_SET_OUTPUT_PIN_TO_0(GPIOA_BASE_ADDR,GPIO_PIN0);
  • while(1) {
  • //引脚取反
  • GPIO_SET_OUTPUT_PIN_INV(GPIOA_BASE_ADDR,GPIO_PIN0);
  • for (u32 i = 0; i < 500; ++i) {
  • for (u32var = 0; var< 5000; ++var) {
  • NOP();
  • }
  • }
  • }
  • thread_end();
  • }
  • 复制代码

    在编译和下载后,我们就可见到LED灯呈现出闪烁的状态,说明程序及下载是有效的。

    有了这个基础,后面就可以放手地进行设计了!
    PARTNER CONTENT

    文章评论0条评论)

    登录后参与讨论
    我要评论
    0
    14
    关闭 站长推荐上一条 /1 下一条