打印
[技术问答]

新唐NUC1XX开发环境 - Keil uVision4快速上手(cortex-m0)

[复制链接]
2404|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
西门扫雪|  楼主 | 2015-10-13 13:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.  简介
  1.1.  关于  NUC1xx 系列芯片
NUC1xx  系列包括NUC100, NUC120, NUC130  和  NUC140等细分系列。
NUC1xx  系列是 32位微处理器芯片,以 ARM? Cortex?-M0为内核,并搭配有丰富的对外接
口,以工业控制为主要应用方面。Cortex?-M0  是ARM最新的推出的嵌入式处理器内核,具
有 32位芯片之效能,然而成本之低,则与传统的8 位微处理器旗鼓相当。
NUC100  系列内嵌的 Cortex?-M0  核心频率最高可达 50MHz,片内搭配有 32K/64K/128K字节
的 flash 和4K/8K/16K 字节的 SRAM。同时该产品整合的多种辅助设备,例如Timers, Watchdog
Timer, RTC, PDMA, UART, SPI/SSP, I2C, I2S, PWM Timer, GPIO, 12位  ADC, Analog Comparator,
Low Voltage Detector and Brown-out detector等。
NUC120系列内嵌的 Cortex?-M0  核心频率最高可达 50MHz,片内搭配有32K/64K/128K字节
的 flash 和4K/8K/16K 字节的 SRAM。同时该产品整合的多种辅助设备,例如Timers, Watchdog
Timer, RTC, PDMA, UART, SPI/SSP, I2C, I2S, PWM Timer, GPIO, USB 2.0 FS Device, 12-bit ADC,
Analog Comparator, Low Voltage Detector and Brown-out detector 等。
NUC130系列内嵌的Cortex?-M0  核心频率最高可达50MHz,片内搭配有64K/128K字节的flash
和 8K/16K 字节的 SRAM。同时该产品整合的多种辅助设备,例如 Timers, Watchdog Timer, RTC,
PDMA, UART, SPI/SSP, I2C, I2S, PWM Timer, GPIO, LIN, CAN, 12-bit ADC, Analog Comparator,
Low Voltage Detector and Brown-out detector等。
NUC140系列内嵌的Cortex?-M0  核心频率最高可达50MHz,片内搭配有64K/128K字节的flash
和 8K/16K 字节的 SRAM。同时该产品整合的多种辅助设备,例如 Timers, Watchdog Timer, RTC,
PDMA, UART, SPI/SSP, I2C, I2S, PWM Timer, GPIO, LIN, CAN, USB 2.0 FS Device, 12-bit ADC,
Analog Comparator, Low Voltage Detector and Brown-out detector 等。
  1.2.  关于  KeilTM ?Vision4 整合开发环境
The ?Vision4  是一个运行于Windows平台的整合开发环境,包含代码编辑、项目管理、编译调
试等功能。?Vision4  的开发工具整合了C编译器(compiler),宏(macro)编译器,代码链接器
(Linker/Locator),  和HEX文件生成器等构件。使用?Vision4,将显著的提高您的开发效率,加快
您的开发进程。
沙发
西门扫雪|  楼主 | 2015-10-13 13:44 | 只看该作者
?Vision4 之特性包括:

?  --全功能的代码编辑器;
?  --包含设备数据库,方便选择配置不同的开发工具;   
?  --项目管理器为您创建/维护项目提供便利;
?  --整合了编译、汇编、连接等全套工具用于构建项目;
?  --所有开发工具都可通过图形对话框进行设定;
?  --无缝整合的代码级调试器,以及高速CPU和辅助设备仿真器;
?  --搭配有先进的图形界面调试系统,可用KeilTM ULINK 调试器对目标硬件进行调试;
?  --搭配有Flash 编程烧录工具,可以将应用程序写入目标Flash ROM中;,   
?  --提供有关开发工具手册,设备手册,用户向导或其链接。   2.  快速上手
  2.1.  安装Keil
TM 软件您可以到http://www.keil.com/下载KeilTM RealView?  Microcontroller Development Kit Evaluation
软件。这个软件包包含有KeilTM μVision4整合开发环境。评估版本有一定限制,最大只能到 32K
字节的镜像文件,但是它是免授权(license-free)的。   

关于安装KeilTM ?Vision4 的更多信息,可以参考KeilTM中的Read Me First文档。
  2.2.  连接目标设备
目标设备可用PC的USB供电,或者也可以用其它5 伏特的直流电源。The KeilTM ULINK 调试器
通过USB和PC相连,通过SWD端口(Serial Wire Debug)和目标板相连。连好以后,您将可以用它
来向目标设备下载程序和调试。

使用特权

评论回复
板凳
西门扫雪|  楼主 | 2015-10-13 14:00 | 只看该作者
ULINK2  使用一根20 脚的带状电缆和NUC1xx相连接。   
  2.3.  ?Vision4 概要
  ?Vision4  有两种操作模式:
?  构建模式:  用于编辑和编译所有的程序文件,并生成最终的可执行程序。在创建程序相关
章节中,我们将详细描述此构建模式。
?  调试模式:  提供一个强大的调试环境,帮助您跟踪调试程序。在调试程序相关章节中,我
们将详细描述此调试模式。
   
  2.3.1.  构建过程
  在菜单或工具条上点击 “Build Target”  命令之后,将开始编译代码。系统将自动检测文件依
赖和关联性,因此只有修改过的文件才会被重新编译,这样可以显著的加快编译过程。您或许
可以设定全局优化选项,对C或其它模块执行增量式重编译。通过Project菜单,您可以进入项目
文件和项目管理设定的对话框。
   

使用特权

评论回复
地板
西门扫雪|  楼主 | 2015-10-13 14:03 | 只看该作者

  2.3.2.  调试器
  μVision4  集成的开发环境、仿真器、调试器等,将为您提供一个单纯统一的环境,使您得以快
速的编辑、仿真和调试您的程序。通过μVision4 的工具条,就可以实现绝大多数调试和编辑的
功能。

您可以在代码编辑区域的右键菜单中设定断点。如果您还没调试,在编辑状态就设定这些断点,
调试开始后,这些断点会自动生效。μVision4 标记了编辑窗口中每一行的属性,所以您可以快
速的查看当前的所有断点和执行状态。
   
            
2.4.  使用步骤
  本章详细描述了如何使用KeilTM μVision4 开发环境,通过SWD调试代理接口,从开始到下载程
序调试的各个步骤。
  2.4.1.  开始使用软件   
  点击Keil ?Vision4 图标打开?Vision应用程序后,将下面下面这个窗口。在这个窗口里,您将可
以创建项目、编辑文件、配置开发工具、执行编译连接,以及进行项目调试。
     

使用特权

评论回复
5
西门扫雪|  楼主 | 2015-10-13 14:06 | 只看该作者
2.4.2.  创建项目
  在开始写C代码之前,首先需要创建一个项目。您可以在要保存项目的位置先建立一个新的文
件夹,然后执行Keil ?Vision4 程序在其中建立项目。通常需要以下几个步骤:

? 1. 在您设定的路径上建立名为  “CodeTemplate”  的文件夹
? 2. 执行Keil ?Vision4 程序,Start -> Programs -> Keil μVision4
? 3. 创建一个新的项目。从主窗口中,选择?Project?菜单,选择条目New project . 然后会显示
如下一个文件对话框。
?  4.在文件对话框中,切换到之前的文件夹( CodeTemplate ) ;在底部的文件名输入框中,打
入您的项目的名字,例如CodeTemplate,然后点击“保存”。
   
  2.4.3.  设备支持
  接下来将显示一个新的窗口,在这个窗口里,您需要选择您将使用的目标  ARM设备类型和编
译输出的文件格式。(在这个例子中,我们使用Cortex-M0 作为目标设备类型)。这个设定通
常需要如下几个步骤。

使用特权

评论回复
6
西门扫雪|  楼主 | 2015-10-13 14:08 | 只看该作者
?  1.打开ARM目录
? 2. 选择您要开发的设备条目。在这篇文档里,作为例子我们将使用Cortex-M0.   
  
  2.4.4.  项目管理
  Keil uVision4 确保了简易并且一致性的项目管理风格。通过一个单独的文件保存源代码的文件
名和各种配置信息,这些配置信息包括编译、连接、调试、Flash的其他工具的配置。通过项目
的相关菜单项,可以方便的访问到项目文件和项目管理对话框。

选择下图中的图标打开 项目组件设定(Management Project Component Setting)
   
  项目组件设定  窗口如下图所示。您可以在其中建立新的项目目标、分组、选择分组中的不同的
文件。
   
  最终,项目工作区域将如下图所示:
   

使用特权

评论回复
7
西门扫雪|  楼主 | 2015-10-13 14:09 | 只看该作者
2.4.5.  创建一个C程序
现在您可以开始写C程序了!在主窗口中,选择下拉菜单File->New,  然后看到出现一个新的标
题为<text1> 的窗口,您可以在窗口  <text1>中开始写您的代码。

在写完最初的代码后,再次选择下拉菜单File->Save, 然后将看到一个新的文件保存对话框。请
将此文件保存到之前创建的CodeTemplate文件夹中,名字可取为main.c。  然后在真正开始编译
之前,我们还需要将main.c加入到项目文件里。您需要右键点击?Source files ?,选择Add Files to
Group ?Source files?,  然后选择文件夹CodeTemplate  中的main.c,  点击Add加入后关闭对话框。
   
  2.4.6.  编译C程序
选择Project菜单上的  Rebuild all target files, 或者点击工具条按钮Rebuild all 开始编译。
   
  然后您将看到所有的代码都将被编译和连接。μVision4底部的Build窗口中会显示构建过程中的
输出信息。  (这个例子显示了成功构建出文件名为CodeTemplate.axf 和  CodeTemplate.bin 的过
程,整个过程没有错误(errors),  没有警告(warnings).)
      
2.4.7.  连接和配置硬件
请按照如下步骤进行:
1.  点击菜单  Project => Options for Target =>  您的项目目标名.  或者点击工具条按钮
Options for Target
   

使用特权

评论回复
8
西门扫雪|  楼主 | 2015-10-13 14:11 | 只看该作者
2.  在Target  标签上,您还可以设定CPU  和内存的配置。另外一些设定包括基本的工具链,包
括编译、连接器、调试器和仿真器等。
   
   
3.  在中间的设定窗口上,点击Debug  标签,选择设定ULINK Cortex Debugger.  如果您没有
发现ULINK Cortex Debugger,您可能需要到下图中的下拉框中寻找。如果您想在开始调
试模式之前装入应用程序,通常需要选上Load Application at Startup.
   
  
2.4.8.  仿真您的代码
uVision4 IDE的一个非常强有力的功能就是,它可以直接运行您的代码。要开始仿真您的代码,
在Debug下拉菜单上,简单点击Start/Stop Debug Session  条目即可。另外可选的办法就是按快
捷键<Ctrl+F7>  ,或者点击工具条上的  ?Debug?  图标。如下图所示:
   
  下面的图中,uVision4 IDE 切换到了调试模式,左边的窗口显示处理器的寄存器,下面的窗口
显示调试信息,主窗口显示正在调试的程序源代码。   
   
从现在开始,您可以检查和修改内存,程序变量,CPU寄存器,设定断点,单步运行,以及进
行其他各种典型的调试动作。要继续运行程序,请点击Debug菜单上的Run条目,或者工具条的
Run按钮。
   

使用特权

评论回复
9
西门扫雪|  楼主 | 2015-10-13 14:12 | 只看该作者
2.4.9.  Flash 工具
通过仿真器接口,Keil  工具链可以向NUC1xx  开发板中下载程序。下载过程通常需要一个特别
的flash  工具程序来辅助完成。NUC1xx 系列芯片的flash辅助程序的名称为NUC1XX_128、FLM
NUC1XX_64kB、FLM NUC1XX_328kB.FLM,用户可以根据实际配置选择其一。   
在使用NUC1xx_128kB.FLM这样的程序之前,我们可能需要先将其复制到Keil安装目录下的
ARM\Flash目录中。如果已经在这个目录下面了,我们再回到Keil集成开发环境, 打开Options for
Targets对话框,  选择Utilities  标签,然后打开设定(Settings )对话框。     
  
   
Settings  按钮点击后弹出的对话框如上图所示。在这个对话框上,我们可以设定内存启始地址
(Start)为0x20000000,  内存大小(size)为0x4000。最后,点击按键Add开始加入flash辅助工具程
序。如果NUC1xx_128kB.FLM  已经复制到了  \Keil\ARM\Flash,新弹出的对话框上将可以看到
这个文件:

  
  
  
   现在,请点击OK, 所有设定动作已经完成!

请注意: 因为flash 启示隐射基地址是0x00000000,  我们需要根据flash基地址设定好程序连接时
的RO base的值。

使用特权

评论回复
10
风的样子| | 2015-10-14 07:42 | 只看该作者
keil MDK当中可以找到新唐的芯片了吗?

使用特权

评论回复
11
Roderman_z| | 2015-10-14 16:36 | 只看该作者
西门扫雪 发表于 2015-10-13 13:44
?Vision4 之特性包括:

?  --全功能的代码编辑器;

讲的确实不错啊

使用特权

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

本版积分规则

33

主题

286

帖子

1

粉丝