当前位置:文档之家› 菜农M0助学板快速入门指南0[1].1.2

菜农M0助学板快速入门指南0[1].1.2

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

网址:https://www.doczj.com/doc/207828383.html,

E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

A :资源介绍

1.1.芯片及资源介绍

芯片及资源介绍1.1关于新唐M0

众所周知,ARM Cortex 内核已经被广泛的设计到不同公司的芯片中,NOVOTON、NXP、ST 等公司近期设计的M0内核芯片也正在被推广。NOVOTON (新唐)-M0以其丰富的资源、全面的固件支持、强大的价格优势将会很快的被市场认可并广泛使用。下图是新唐

M0家族的整体资源图:

从图中右侧不难发现新唐M0基础配置都包括了UATR、SPI 、I2C、I2S、8通道PWM、12位ADC、RTC 在内的丰富资源,而左边部分是针对不同层次设计要求而设计的不同层级的芯片。

网址:https://www.doczj.com/doc/207828383.html, E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

1.2新唐对于M0的支持

上图中是新唐对于M0系列芯片的一些技术上的支持,具体资料可以到NOVOTON (新唐)官网上去查找,其中包含的内容可以参看以下路径表:

而大部分文件夹内都是包含中英文两份资料的。

以下是对一些文件的粗略解释:Application Note Note::即应用笔记,其中包括了非常多常见的问题以及应用实例的使用过程;

Datasheet Datasheet:

:同上面一样,也包含了中英文资料,是芯片参考手册、芯片简介以及寄存器资源的参考资料;

Software Utilities

Utilities::这些是官方提供的烧录监控用的BIN 文件与程序下载工具,之后的ISP 中会用到;

nuvoton 网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

BSP Library Library::官方提供的库函数以及范例代码,包括了几乎所有外设在内的工程文件,而大部分程序都可被移植到助学板上。如下图所示:

几乎所有的资源都被完整的工程化放入以上文件夹,这些程序是最快的入门途径,右下角笔者已经将路径贴出,方便助学板用户有效的查找。

另外请记住以下FTP 资源:

第一个是助学活动FTP 资源

ftp://58.213.153.9用户名:密码:

在这两个FTP 资源站中里面包含了新唐手册及应用笔记,这对于查找资料是个不错的选择(以上提及的资料这里面都有)。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

B:B:菜农助学板资源介绍

菜农助学板资源介绍1硬件资源

菜农新唐M0助学板板载一颗NUC120RE3AN 芯片,包含128K FLASH 空间、16K SRAM 空间、45GPIO 引脚、6路PWM、8*12位ADC、4路32位定时器、以及包括USB 在内的内部的资源,而售价却是极低。

除此之外,板上外部还集成了SD 卡接口、DS18B20单总线温度传感器在内的丰富资源可供用户实验。如果配合着官方提供的库函数,可以有效的学习新唐M0系列芯片。

以下将对资源进行分块的介绍,使助学板的使用者们可以更快的入手。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

1.1NUC120RE3A 最小系统最小系统(()最小系统部分连接了USB 接口以及复位与自动ISP 接口,并ISP JTAG/ICE 接口也与新唐研讨会赠送的Nu Link Me 接口相对应,故可将研讨会板架空于助学板与其连接,起到仿真调试的作用。另外助学板还将CPU 所有引脚引出,方便用户以后独立的实验测试。

1.2GPIO实验部分

板上GPIO实验可通过两个轻触按键以及蜂鸣器LED灯等外围实现,另外,中断接口也预留在了按键上,可以结合此按键完成外部中断实验。(最小系统中预留一个LED连接至PWM0接口,既可以完成GPIO输出实验也可以做PWM实验)

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

1.3串行接口实验部分

板上众多外设皆为串行接口控制,自动ISP/串口、SPI FLASH、EEPROM、SD card、以及读取单总线数字温度传感器DS18B20的模式都是基于串行接口的。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

1.4其他外设部分

AD接口,可用于模拟测温以及电位测量

I2S接口,可用于音频输出

注意:供电部分特别说明

电源/可以USB或是外接电源供电。Nu Link上的VCC也可。但切记不要同时两路供电,否则意外情况可能损坏您的学习板。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

2软件资源

软件资源除了刚才提到的官方例程以及库函数之外,请在您的PC机上准备开发环境以及正确安装新唐提供的驱动。以下是截图于新唐官网中M0板块

建议需要准备的资源有:

0.HotISP

1.KEIL MDK X.xx

2.NUC100SeriesBSP

3.Nu-Link_Keil_Driver.exe

4.NUC1xx Driver Reference Guide SC V1.00.pdf

5.NUC1xx Preliminary TRM SC V1.00.pdf

6.NuMicro NUC100Series Driver Reference Guide.pdf

7.NUC120Preliminary Datasheet_V17_SC1.pdf

8.NUC100Series Driver Reference Guide.chm

**:以上资源都可在官网找到下载链接。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

网址:https://www.doczj.com/doc/207828383.html, E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

第一步:先安装网站“NuMicro Development Tools”中

(前提是你电脑中有MDK),这样之后你就可以建立新唐的M0工程了。

第二步:在网站“Device Driver and Software Library”中下载

解压缩后你就拥有了库

函数软件包和对应的手册资料。

利用以上环境你已经可以实现新唐M0的编程。仅仅是编程,程序的下载有几种途径:官方ICP、官方ISP 以及HOTISP。HOTISP 是雁塔菜农精心打造的M0系列芯片的程序下载工具,其中包含了ICP、ISP 以及串口调试功能,并且不仅仅支持新唐一家M0芯片,还支持NXP 的M0。并且操作简单,易于学习使用(未来还有可能将添加ST M0的部分)。

如果你是一个初学者,觉得以上的资源如果还不够,那么这个一定帮得了你:

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

这是新唐M0的视频教程,经测试,不是台语方言,只是语言比较生硬,如同用微软的语音软件一样生硬,但是应该听得懂。

除此之外,建议中的

pdf 也需要准备方便日后查找学习使用。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

C :快速入门

1.1.建立自己的新唐

建立自己的新唐M0工程简单的步骤描述:

在安装好新唐M0的MDK 支持后打开KEIL

MDK 环境

1.点击新建工程

2.点击新唐选型

3.选择芯片型号

网址:https://www.doczj.com/doc/207828383.html,

E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

4.添加启动文件

5.加入用户文件及inc 链接(很关键!!)

笔者虽利用原本库函数中范例程序,但却已重构了整个M0的程序文件目录树,原始的inc 目录太过繁琐不适应查找。

网址:https://www.doczj.com/doc/207828383.html, E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

2.2.补充概念:

补充概念:1.KEIL 环境下在工程中添加的C

文件,必须告知其正确的头文件位置。

步骤如下:

1.如上图所示点击Include Paths 后的“…”

2.新建头文件包含路径

网址:https://www.doczj.com/doc/207828383.html,

E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

2.GPIO 实验具体需要的文件可以参看路径

NUC100SeriesBSP\NuvotonPlatform_Keil\Sample\Driver 下的例程:

以GPIO 实验为例:以下是包含的.C 文件与.S 启动文件这些可自行添加入工程:

说明:1是添加组,作程序分层。2是在组中添加文件。3是管理文件,可以添加文件、组等。

添加完文件之后我们发现:这些C 语言文件需要匹配的.H 文件才可以被编译。于是我们打开设置中的C/C++里面观察一下“Include Paths”

这也是笔者为什么说其路径深不便于查找的原因。这些文件夹都可以在BSP中找到。大多数工程文件都是基于这些文件夹建立的。

如果建立自己的工程,请按照以下步骤会方便许多:

1.复制必要的BSP库文件(.h&.c)

2.新建KEIL工程添加必要的.C文件

3.链接.h文件路径,并编译

4.编译有错,请查看是否还是路径问题以下问题可能被忽略:

a.若有ERROR输出,请从最上端开始检查是否有文件未被打

开,若有可以从原版BSP LIB中搜索后添加;

b.若依旧有ERROR输出,请注意#include中是否包含路径行

"\XXX\xxx.h",若有请删除路径行再编译。

5.编译完成

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

网址:https://www.doczj.com/doc/207828383.html,

E-mail:

hotwc3@https://www.doczj.com/doc/207828383.html,

笔者移植的工程设置如下:

以上多数命令行皆为原始工程复制,而仅是INC 路径改变,切记不要缺文件,多对比原版工程即可发现错误。

网址:https://www.doczj.com/doc/207828383.html, E-mail:hotwc3@https://www.doczj.com/doc/207828383.html,

3.3.关于程序文件的解释

关于程序文件的解释对于一些工程内必备文件的解释:启动层

*core_cm0.c/.h ——ARM 公司对于M0内核的支持*system_NUC1xx.c/.h ——NUC1xx 系统文件*startup_NUC1xx.s

——NUC1xx 启动文件

-------------------------------------------------------驱动层*nuc1xx.h

——NUC1XX 系列标准头文件具体寄存器组、外设配置的结构体的定义。

SysInfra.h ——新唐公司对于M0设备ID 的声明ModuleID.h ——新唐M0设备ID 号声明Stdint.h

——数据类型等的声明

*DrvXXX.c/.h

——外设库函数及外设基本头文件Retarget.c

——一些串口附属函数

-------------------------------------------------------用户层Main.c

——客户应用文件

相关主题
文本预览
相关文档 最新文档