使用英飞凌DAVE4软件编写XMC4800 MCU的图形化编程教程
在程序员和工程师中,图形化软件编程一直是一个不懈追求的目标。目前市面上主流的半导体厂商都已经提供了针对自己MCU处理器的图形化编程界面。其中,英飞凌提供的DAVE软件主要针对XMC系列的MCU进行图形化编程,上手简单方便,且拥有丰富的案例资源。
设置代码提示快捷键
DAVE软件基于Eclipse平台,因此具备代码提示功能。为了避免快捷键冲突(通常与输入法冲突),我们需要修改成适合自己的组合键方式。比如,将代码提示的快捷键设置为Ctrl H作为Content Assist功能的快捷键。
创建DAVE CE工程
1. 创建一个名为Blinky的DAVE CE(Code Engine)工程,并选择XMC4800设备。
2. 工程目录包括:DAVE(用于自动生成源码库)、Library(存放CMSIS底层库、XMC标准外设库等)、Startup(存放系统启动源码,包括中断向量表、时钟初始化等)、main.c(用户自行实现的逻辑代码)和linker_script.ld(链接脚本文件)。
了解链接脚本文件
为了大致了解程序上电后的执行顺序,需要查看链接脚本文件。该文件由DAVE软件根据工程配置自动生成。
- ENTRY(Reset_Handler)表示整个可执行程序的入口是Reset_Handler函数,即系统复位向量。
- 如果没有另外定义宏stack_size的大小,默认栈大小为2K字节。
- MEMORY字段定义了MCU的存储空间地址划分,可以根据数据手册的memory map章节进行检查。
- 接下来是对程序中各个段在MCU存储器中的排放位置的安排,包括常见的段如.reset段、.text段、.init段等,还有一些自定义的段。
- SRAM的分配中,栈位于最前面,在栈的结束地址处给变量__initial_sp赋值当前地址,作为栈顶指针。
理解可执行文件的代码段
整个可执行文件的代码段最开始是.reset段,其中包含中断向量表。Reset_Handler函数定义在中断向量表的下面,使用thumb2指令集编译。Reset_Handler函数的主要作用是赋值sp指针,以便后续运行C语言的代码。
接着会调用C语言编写的SystemInit函数,它位于startup_XMC4800.c文件中。SystemInit函数主要完成系统内核相关参数的配置,并进行数据段和.bss段的初始化。最后,跳转到main函数,程序正式完成loader的功能。
添加DAVE APPs并实现闪烁灯
1. 在APP Dependency Tree中选择Add New App。
2. 在Search filter中输入PWM,选择PWM模块,并添加。
3. 同样的方式添加DIGITAL_IO模块和Interrupt模块。
4. 在APP Dependency窗口中查看已添加的APP及其关联。
5. 为了方便记忆,可以修改APP的默认名称,在APP模块上右击选择Rename Instance Label。
配置模块
1. 双击DIGITAL_IO模块,将Pin direction修改为Input/Output。
2. 双击Interrupt模块,选中Enable interrupt at initialization,并设置中断的优先级和处理函数名。
3. 双击PWM模块,在General Settings中选择定时器模块为CCU4,设置PWM频率为1Hz,占空比为50%。在Event Settings中选中Compare Match作为中断信号源。
4. 将PWM的compare match信号连接至中断模块的sr_irq,确保中断信号产生源与信号接收模块之间建立连接关系。
配置硬件引脚信息
在需要连接硬件引脚的APP上右键选择Mannual Pin Allocator,选择具体的Pin Number后保存。
生成代码
完成APP的配置后,点击工具栏的Generate Code按钮。DAVE软件会根据APP的配置信息自动生成相应的源码库。
添加用户代码
在系统初始化后启动PWM模块的工作,并在main.c文件中添加PWM_Event_Handler中断处理函数。
编译和下载程序
1. 编译整个工程,生成二进制文件。
2. 通过USB连接XMC4800 Relax Kit和电脑,点击Debug按钮下载程序到XMC4800芯片中,并启动调试界面。
3. 点击全速运行,观察LED4每秒闪烁一次,而LED2每2秒闪烁一次的现象。这是由PWM的频率和中断程序确定的。
以上就是使用英飞凌DAVE4软件编写XMC4800 MCU图形化编程的教程。通过图形化界面的配置和代码的添加,我们可以方便地实现各种功能,并观察到对应的硬件现象。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。