ARM开发工具MDK开发环境的熟悉
- 格式:doc
- 大小:662.00 KB
- 文档页数:17
stm32实训报告经验总结STM32实训报告经验总结一、引言在这次STM32实训中,我深入了解了微控制器的基本原理和操作,学会了使用Keil MDK-ARM软件进行编程,掌握了STM32的GPIO、串口、定时器等基本外设的使用。
通过实际操作,我对于嵌入式系统设计和开发有了更深刻的理解。
二、实训过程1. 基础知识学习:首先,我通过阅读教材和网上资料,学习了微控制器的基本概念、STM32的体系结构和外设特性。
我了解到,STM32是一款功能强大的32位ARM Cortex-M核微控制器,具有丰富的外设接口和强大的处理能力。
2. 开发环境搭建:我按照教程安装了Keil MDK-ARM软件,配置了开发环境。
Keil软件提供了完整的开发工具链,包括代码编辑、编译链接、调试和仿真等功能。
3. 硬件平台搭建:我使用STM32开发板搭建了硬件平台。
我熟悉了开发板的电路原理图和引脚配置,了解了各个外设接口的使用方法。
4. 编程实践:在理解了基本概念和操作方法后,我开始进行编程实践。
我编写了GPIO输入输出、串口通信、定时器中断等程序,通过实际操作掌握了STM32的基本外设使用。
5. 调试与优化:在编程过程中,我遇到了许多问题,通过查阅资料和反复调试,最终解决了问题。
我还对程序进行了优化,提高了程序的效率和稳定性。
三、实训收获通过这次实训,我掌握了STM32微控制器的开发流程和基本外设的使用方法。
我学会了使用Keil MDK-ARM软件进行编程和调试,了解了嵌入式系统设计和开发的实际操作过程。
同时,我在实践中遇到了许多问题,通过解决问题,我提高了解决问题的能力。
四、展望未来这次实训让我对嵌入式系统设计和开发有了更深刻的理解。
在未来的学习和工作中,我将继续深入学习嵌入式系统的相关知识,掌握更多的技能和方法。
同时,我将尝试将所学知识应用到实际项目中,提高自己的实践能力和工程经验。
MDK简介MDK即RealView MDK(Microcontroller Development kit),是ARM 公司目前最新推出的针对各种嵌入式处理器的软件开发工具。
RealView MDK 集成了业内最领先的技术,包括uVision4 集成开发环境与RealView 编译器。
支持ARM7、ARM9 和最新的Cortex-M3/M1/M0 核处理器,自动配置启动代码,集成Flash 烧写模块,强大的Simulation 设备模拟,性能分析等功能,与ARM 之前的工具包ADS 等相比,RealView 编译器的最新版本可将性能改善超过20%。
Keil公司开发的ARM开发工具MDK,是用来开发基于ARM核的系列微控制器的嵌入式应用程序。
它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。
MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。
功能特点完美支持Cortex-M、Cortex-R4、ARM7谡ARM9系列器件。
业行领先的ARM C/C++编译工具链IDE集成开发环境,调试器和仿真环境确定的Keil RTX ,小封装实时操作系统(带源码)TCP/IP网络套件提供多种的协议和各种应用提供带标准驱动类的USB 设备和USB 主机栈为带图形用户接口的嵌入式系统提供了完善的GUI库支持ULINKpro可实时分析运行中的应用程序,且能记录Cortex-M指令的每一次执行关于程序运行的完整代码覆盖率信息执行分析工具和性能分析器可使程序得到最优化大量的项目例程帮助你快速熟悉MDK-ARM强大的内置特征符合CMSIS (Cortex微控制器软件接口标准)ARM编译工具ARM编译工具链(之前被称为ARM RealView编译工具)包含:ARM C/C++ 编译器(armcc)MicrolibARM Macro汇编器(armasm)ARM链接器(armLink)ARM工具(Librarian and FromELF)基于以上专门针对ARM架构的微控制器编译器,工程师可以使用C或者C++编写应用程序。
单片机的软件开发工具与环境介绍单片机是指集成在单个芯片上的微型计算机系统。
它具备较小的体积、低功耗、低成本以及较强的功能等特点,被广泛应用于各个领域。
在单片机的开发过程中,选择合适的软件开发工具和环境非常关键。
本文将介绍几种常用的单片机软件开发工具与环境。
一、Keil μVisionKeil μVision是一款由Keil Software公司推出的嵌入式系统开发工具。
它是一套集成开发环境(IDE),包含了编译器、调试器、仿真器等功能模块,可以实现单片机程序的编写、编译以及调试。
KeilμVision支持多种芯片系列,如STMicroelectronics的STM32系列、NXP的LPC系列等。
其可视化界面友好,功能强大,被广泛应用于单片机软件开发领域。
二、IAR Embedded WorkbenchIAR Embedded Workbench是由IAR Systems推出的单片机开发工具。
它提供了完整的软件开发流程,包括编写、编译、调试和优化等环节。
IAR Embedded Workbench支持多种单片机系列,如Texas Instruments的MSP430系列、Renesas的RL78系列等。
该工具具有较高的代码生成效率和卓越的调试功能,可以帮助开发者提高开发效率和代码质量。
三、MPLAB X IDEMPLAB X IDE是由Microchip公司开发的一款集成开发环境。
它主要用于开发与Microchip单片机相关的应用程序。
MPLAB X IDE支持多种编程语言,如C、C++以及汇编语言。
该工具提供了丰富的调试功能和模拟器功能,并能够与硬件调试器(如PICkit)结合使用,使得开发者可以更加方便地进行单片机程序的开发和调试。
四、Arduino IDEArduino IDE是一款面向Arduino单片机的开发工具。
Arduino是一种开源的电子原型平台,广泛应用于各个领域的快速原型开发。
实验二 ARM开发工具MDK开发环境的熟悉一、实验目的:1、掌握MDK建立工程、设置工程的方法;2、掌握MDK编译工程、链接工程的方法;3、掌握MDK仿真调试的方法;二、实验内容1、参考本次实验的实验步骤,完成本次实验,以及实验步骤中的几个思考题2、参考教材117页有关MDK工具的配置回答以下几个问题(1)MDK提供的两种调试模式(2)如何在工程中打开存储单元观察窗口(3)如何在工程中设置断点三、实验原理:Keil公司(该公司已被ARM公司收购!!)开发的ARM开发工具MDK(Microcontroller Development Kit),是用来开发基于ARM核的系列微控制器的嵌入式应用程序。
它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。
MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。
注意:下面所描述的s3c2410 GPIO口的工作原理大家能看懂多少就懂多少,本次实验课的重点不是GPIO工作原理,重点在MDK开发环境的熟悉!!嵌入式系统在控制领域的应用非常广泛,嵌入式芯片是通过外部管脚来和所控制的设备进行通信的。
嵌入式芯片S3C2410和外部设备最简单的通信方式就是通过GPIO(通用IO 管脚)来通信的。
S3C2410通过读写与GPIO相关联的一组寄存器以实现读写GPIO管脚电平信号(大家可以回想以下在单片机中是怎么通过P0端口寄存器来控制P0.0------P0.7八个管脚的?)。
当然,S3C2410的GPIO的操作比51单片机要些许复杂一点。
本实验的电路图如下:图中的GPF4表示这个管脚是与S3C2410的通用端口F组的第4根管脚,其余类推。
实验相关寄存器说明(以后一定要学会看下面的几个表格):GPFCON――端口配置寄存器。
GPFCON为通用端口F组的管脚工作状态配置寄存器。
一、概述单片机是一种集成了微处理器、存储器和输入/输出功能的集成电路,它在嵌入式系统中扮演着重要角色。
为了进行单片机的开发和编程,开发环境的选择和配置至关重要。
其中,Keil是一款专业的单片机开发环境,本文将对其进行描述和详细介绍。
二、Keil开发环境概述1. Keil开发环境简介Keil是一款由Keil Software公司开发的嵌入式系统开发工具,主要用于单片机的软件开发、调试和编程。
它提供了一整套完整的软件开发工具,包括C编译器、调试器、仿真器等,能够帮助开发者轻松进行单片机的开发工作。
2. Keil支持的单片机类型Keil支持包括STC、ATMEL、TI、NXP、Renesas等多种常见的单片机型号,覆盖了市面上绝大部分主流的单片机芯片。
3. Keil的特点Keil具有良好的易用性和稳定性,它可以在Windows操作系统下运行,并支持多种编程语言,包括C、C++、汇编语言等。
它还提供了丰富的编程和调试工具,能够帮助开发者高效地进行单片机程序的开发和调试工作。
三、Keil开发环境的安装和配置1. Keil软件的下载和安装开发者可以从Keil冠方全球信息站上下载Keil软件的安装包,然后按照安装向导逐步进行安装。
安装过程相对简单,一般不会遇到太大的问题。
2. Keil开发环境的配置安装完成后,开发者需要对Keil开发环境进行一些基本的配置,以确保其能够正常运行。
需要对工程文件、编译器设置、仿真器设置等进行配置,以满足具体的项目需求。
四、Keil开发环境的基本使用1. 新建项目在Keil中,开发者可以通过简单的操作新建一个项目,然后将需要的源码文件或者库文件添加到项目中。
2. 编写程序开发者可以在Keil中使用C、C++或者汇编语言编写单片机程序,支持的语言种类丰富,为开发者提供了更多的选择。
3. 编译和调试Keil提供了强大的编译器和调试工具,开发者可以利用这些工具对程序进行编译和调试,并对程序的运行状态进行实时监控和分析。
1.1.RVMDK简介RVMDK源自德国的KEIL公司,是RealView MDK的简称,RealView MDK集成了业内最领先的技术,包括μVision4集成开发环境与 RealView编译器。
支持ARM7、ARM9和最新的Cortex-M3核处理器,自动配置启动代码,集成Flash烧写模块,强大的Simulation设备模拟,性能分析等功能,与ARM之前的工具包ADS等相比,RealView编译器的最新版本可将性能改善超过20%。
1.2.MDK 4.12集成开发环境的组成MDK又称叫RVMDK,源自德国的KEIL公司,是RealView MDK的简称,RealView MDK 集成了业内最领先的技术,包括μVision4集成开发环境与 RealView编译器。
支持ARM7、ARM9和最新的Cortex-M3核处理器,自动配置启动代码,集成Flash烧写模块,强大的Simulation设备模拟,性能分析等功能,与ARM之前的工具包ADS等相比,RealView编译器的最新版本可将性能改善超过20%。
1.3.MDK工程的编辑1.3.1.新建RVMDK工程1)点击WINDOWS操作系统的【开始】Æ【程序】Æ【Keil uVision4】启动Keil uVision 或在桌面双击【Keil uVision4】快捷方式启动。
启动MDK4.12如图所示:2)点击之后,出现启动画面:1)点击“project---New uVision Project”新建一个工程2)在对话框,选择放在刚才建立的“新建文件夹”下,给这个工程取个名后保存,不需要填后缀:3)弹出一个框,在CPU类型下我们找到并选中“STMicroelectronics”下的STM32F103RB:4)出现一个提示框,是否复制STM32启动代码到工程文件夹,我们选择【是】,就可以看到STM32的启动代码自动添加进来了:5)到这里工程全部建立完毕1.3.2.建立文件建立一个文本文件,以便输入用户程序。
ARM开发工具MDK开发环境的熟悉
一、实验目的:
1、掌握MDK建立工程、设置工程的方法;
2、掌握MDK编译工程、链接工程的方法;
3、掌握MDK仿真调试的方法;
二、实验原理:
Keil公司(该公司已被ARM公司收购!!)开发的ARM开发工具MDK(Microcontroller Development Kit),是用来开发基于ARM核的系列微控制器的嵌入式应用程序。
它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。
MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。
注意:下面所描述的s3c2410 GPIO口的工作原理大家能看懂多少就懂多少,本次实验课的重点不是GPIO工作原理,重点在MDK开发环境的熟悉!!
嵌入式系统在控制领域的应用非常广泛,嵌入式芯片是通过外部管脚来和所控制的设备进行通信的。
嵌入式芯片S3C2410和外部设备最简单的通信方式就是通过GPIO(通用IO 管脚)来通信的。
S3C2410通过读写与GPIO相关联的一组寄存器以实现读写GPIO管脚电平信号(大家可以回想以下在单片机中是怎么通过P0端口寄存器来控制P0.0------P0.7八个管脚的?)。
当然,S3C2410的GPIO的操作比51单片机要些许复杂一点。
本实验的电路图如下:
图中的GPF4表示这个管脚是与S3C2410的通用端口F组的第4根管脚,其余类推。
实验相关寄存器说明(以后一定要学会看下面的几个表格):
GPFCON――端口配置寄存器。
GPFCON为通用端口F组的管脚工作状态配置寄存器。
表示GPFCON的第0、1位决定GPF组的第0跟管脚,例如为00时,该管脚用于输入,01时表示该管脚用于输出,10时表示外部中断0输入,11则为保留。
GPFDAT――端口数据寄存器
GPFDAT寄存中的每一位的值代表管脚上的信号,如GPF0管脚为低电平,则GPFDAT[0]为0。
GPFUP――端口上拉电阻使能寄存器
管脚内部上拉电阻使能!!
要求编程实现4只发光二极管一闪一灭!(编程语言不限,汇编、c、c++均可,建议用c)
三、实验步骤:
1、启动MDK:
2、建立工程:
新建文件夹并命名为led:
双击led进入led目录:
此处填写工程名字
led
单击保存,我们弹出如下对话框,并选中Samsung->S3C2410A:
单击ok,弹出如下对话框:
单击“否”按钮,到此一个空的工程建立完毕,如果此时没有建立工程试图窗口,则可通过如下操作调出工程视图窗口:
3、设置工程:
单击linker选项卡,并照下图设置链接起始地址:
单击OK按钮,工程设置完毕。
4、建立文件并将文件添加到工程:
注意是0x!不是ox,3后面7个0
这个时候不要急着输入代码,先保存文件:
讨厌混编,所以
扩展名为c
保存,这个时候还不要输入代码,将文件添加到工程:
选中led.c,再点击add,最后close按钮;
我们可以看到led.c已经添加到工程;
5、输入代码:
//*********************************************************
//广州大学华软软件学院电子系08嵌软
//文件名:led.c
//功能:实现试验箱上的四只放光二级管的闪烁
//作者:Jiabing Luo
//*********************************************************
//volatile的用法可参照:/user1/4805/archives/2008/47893.html
#define rGPFCON (*(volatile unsigned *)0x56000050)//定义了GPF的控制寄存器
#define rGPFDAT (*(volatile unsigned *)0x56000054)//定义了GPF的数据寄存器
#define rGPFUP (*(volatile unsigned *)0x56000058)//定义了GPF的上拉电阻寄存器void delay(int time)
{
for(;time>0;time--)
;
}
void Main()//注意不要写成了main!!
{
rGPFCON=0x5500;
//0x5500的二进制为:
//0 1 0 1 0 0 0 0 0 0 0 0,自己可以参照GPF控制寄存器的的描述来分析其位设置的含义为:
//GPF7:输出,GPF6:输出,GPF5:输出,GPF4:输出,GPF3:输入,GPF2:输入,GPF1:输入,GPF0输入
rGPFUP=0xf0;
rGPFDAT=0xf0;
while(1)
{
delay(0x2ffff);
rGPFDAT=~rGPFDAT;
}
}
6、编译、链接:
7、在开发工具所提供的软件仿真环境下运行:
仿真环境设置:
选中DEBUG选项卡:
选上
不选
单击该按钮
C:\keil\
选中Ext_RAM.ini,打开:
注意你们的是c而
非d
点击Edit按钮,编辑初始化文件,再点击ok按钮。
编辑初始化文件:
启动调试:
监控我们程序中所操作的GPF端口:
右键单击代码空白处,弹出环境菜单:
切换到c语言源代码:
按F10,单步运行,同时观察GPF监控串口中的变化!
总结:
建立工程、设置工程、建立文件、把文件添加到工程,仿真调试!。