当前位置:网站首页 > 编程语言 > 正文

单片机程序编写步骤(单片机程序怎么写)



1.以参考标准库中GPIO例程为例来,来新建工程。

2.新建“GPIO”文件,在GPIO文件夹内建立user文件夹。

3.制MDK安装目录下的4个文件。

如“C:UsersAdministratorAppDataLocalArmPacksARMCMSIS5.7.0CMSISCoreInclude”目录下的“cmsis_armcc.h”“cmsis_compiler.h”“cmsis_version.h”“core_cm0plus.h”文件。在user文件夹下新建“SYSLIB”文件夹,并将这4个文件复制进去,如图1所示。

4.复制标准库中“CW32F030_StandardPeripheralLib_V1.8Examplesgpiogpio_input_outputUSER”目录下的SRC文件夹与INC文件夹到GPIO文件夹下的USER文件夹里。

5.将标准库中的Libraries、IdeSupport文件夹复制到新建的GPIO工程文件里面,如图2所示。

6.打开MDK开发环境,选择“Project”/“New μVision Project”命令,新建工程,如图3所示。

7.为工程输入名称,并保存在刚才所建立的GPIO文件夹内,之后会弹出选择芯片型号,如图4所示。

8.单击“OK”按钮并进行保存。

9.右键单击“Target 1”,在弹出的菜单中选择“Manage Project items”命令,在工程目录中添加.c文件,如图5所示。

10.在出现的对话框中,增加user和Library文件夹,并添加标准库的.c源文件到Library的Groups,如图6所示。

注意:如果使用硬件调试器+目标板开发调试,请选中“Use”,然后修改调试器为“CMSIS-DAP Debugger”(使用CW-DAPLINK或DAP兼容调试器时选择该选项。如果使用其它调试器,请选择合适的对应选项),如图11所示。

17.单击“Add”按钮,找到“CW32F030”的FLASH烧写算法,单击“Add”按钮添加,如图13所示。

18.在“Project”菜单中选择“Rebuild all target files”以编译项目。如果项目编译成功,将显示以下窗口,如图14所示。

19.根据需要修改源代码。完成编写后,如需要硬件调试,则接入DAPLINK调试器到目标板上,并为目标板供电。然后在MDK IDE中,从调试菜单中选择“开始/停止”调试会话或单击工具栏中的“开始/停止”调试会话按钮,以对FLASH存储器进行编程并开始调试,如图15所示。

20.MDK-ARM中的调试器可用于用C语言和汇编语言调试源代码,设置断点,以及监控各个变量和代码执行过程中发生的事件,如图16所示。

至此,可以使用MDK初步开发CW32的相关应用了。

以CW32F030为例,演示如何快速实现点亮一个LED。

1、软件准备

2、硬件准备

硬件准备实物图,如图17所示。


CW32核心板上面有一个LED2指示灯,其控制端口连接至PC13,如图18所示。从图中不难分析,当PC13端口置为低电平时,LED指示灯亮。

打开2.4.1小节创建的工程模板,修改主程序代码如下。

在MDK环境下修改代码,如图19所示。

4、下载测试

连接CWDAPLINK至目标核心板,并给核心板插入USB线供电,电源指示灯LED1红灯亮起,代表板子电源供电正常。请注意,此时LED2是熄灭状态,如图20所示。

在MDK工程中,配置下载器为DAP类型的调试工具,如图21所示。

5、下载并运行程序

下载程序完成后,按SW1红色复位键先进行复位,以确保程序的可靠运行。复位运行后,可以看到:核心板上面的电源指示灯LED1红灯仍然常亮,下面的LED2蓝灯受程序控制,已经被点亮,如图22所示。

如果要控制LED2灯熄灭,又该如何修改代码呢?

参考代码如下:

如果要控制LED2灯闪烁,又该如何修改代码呢?

参考代码如下:

到此这篇单片机程序编写步骤(单片机程序怎么写)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • linux文件目录重命名命令(linux 文件目录重命名)2025-04-29 10:45:08
  • 程序员快速入门(程序员快速入门方法)2025-04-29 10:45:08
  • 程序员入门技巧有哪些(程序员入门技巧有哪些书籍)2025-04-29 10:45:08
  • windows 虚拟机下载(手机版windows虚拟机下载)2025-04-29 10:45:08
  • bt151怎么接(bta16接线图)2025-04-29 10:45:08
  • 预训练权重(预训练权重是什么)2025-04-29 10:45:08
  • win7u盘启动盘制作工具(win7系统u盘启动盘制作)2025-04-29 10:45:08
  • awvs免费版(awvs免费版现在还敢用吗)2025-04-29 10:45:08
  • ubuntu安装yum源的方法(ubuntu安装thonny)2025-04-29 10:45:08
  • ppp什么意思(sipppppp什么意思)2025-04-29 10:45:08
  • 全屏图片