新唐M0MDK工程建立参考手册重点_第1页
新唐M0MDK工程建立参考手册重点_第2页
新唐M0MDK工程建立参考手册重点_第3页
新唐M0MDK工程建立参考手册重点_第4页
新唐M0MDK工程建立参考手册重点_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MOKE:程韋立参考手册脅*杲定电孑乐宙歳孑月甘CXtt纟2念远古的尢学生结Cubo电孑圧阂A : MDK工程建立1. 1建立自己的新唐建立自己的新唐M0工程简单的步骤描述:在安装好新唐M0的MDK支持后打开KEILMDK环境1点击新建工程jfll IVMew Multi-Project Workspace.Open Project.Close ProjectProject选择芯片型号NUC1301D2ANNUC130LE3ANNUC130RD2hl»ll in lT;r a二打亡7'=:r歸J H1 " i i"LU -2"ix2'UA

2、RT 2"SPt/SSP-?" Comoadfw3 ICan?«L今菜眾电孑压国3. 添加启动文件E也 retargets13 ProjectBooks Furicti. (JTempL.严鼻菜难电孑$闺加入用户文件及inc链接(很关键!)jj cft_cmO.c 因 f/st«n_hUClxxC* J.c-'.lu_L-_:xxSource也 Snd_DrvGPO,c J stdio.h J nuclxx.h 占 core_cmD.h 期 ftdimt.h . 5v?tenri_r*JcLxx.h sy?mfra,h j nwduled.h e

3、wgthh 易扒uaeh (ivfys.h library Fike?国 DrvGPEO.CDrvUART.c自 DrvSV5,cstdrit.hQ system_nudxx.h sysinFrahmoduleid.hCl drvgpio.h drvuartihJ drvsys.hH Project Functi . (LTenfi.*Lbr33圍a Bs-sS-S-DrvPIO.cDrvUART.cDrvSY5.cretarget,c13 Project 館Books Functi, <.孑乐谢1笔者虽利用原本库函数中范例程序,但却已重构了整个M0的程序文件目录树,原始的inc目录太过

4、繁琐不适应查找。2. 2补充概念:补充概念:1. KEIL环境下在工程中添加的C文件,必须告知其正确的头文件位置。1DELCWSrSCMft. SCHSISWUCIffl; BSP_LbMfcSDwer: B5P_LblndJiX1xfclB_002; .'BSP.LIndudsPithsCvCel整新铠堆买交眸 怖在交件箕I:SIkIMISI Cr<*hC?ntfliri 丛恂* E广 Flam Char is SirredRf-d£iPr:nor. IRtjJ'v.'iiie Fiikjfi. IndjeiKharlCkbcil步骤如下:吠诃目 VM

5、SISSCMOj.ACMSIS'llUClstjABSP LtMncDr(¥ef;_BSP L±MncNUC1i»L£ 皿 PlhsMiscLoritrfjlsCoitpd 已COtMtoJ strng-c -cpu Co«e<M0 o BO -apc4=*tteiwioik -spit_secliort$ - «m -*teriwe <ACMSISCMO I ACMSISNUOxk 丄 BSPLfcMncDcivaESPjdb讪(AMU口mt-LRJWC CatTCiltf cortrol MfrijJ1.如上图

6、所示点击In elude Paths后的“”2新建头文件包含路径OpiitKQiion lewl 0 OOj耳Optimc* Jor TmsSjJit Load and 百幻w w,jlhpieP One ELF Sccticn pe( Furcbcric -epu CaiBitMO 申 OO -4pCHn*Bhwtk -t(dt seebont -Asm 旺tev* 4.£MSKCM0 - |r/Ol£lSNUClxx J A6$P_UAlncDiF¥« 1 BSP_LkAkicMU Cl »LB_002工电孑庄他Opiknization |

7、l_e¥d000|耳Optimize lor JuneSplit Load and Store Mulhpe" One ELF Stciion per FunclionEnun Contjinei dw聊 mtV Phin Char is SnedHead-Onl Ptjriipn I ndepernfenf'RuodW卅uFxitiordndepcrKkjrtt| <uispecifed>蚕新链痘 所在文Prepoc«!torDdmU$E,£TDPERIPH_DRIVEAUnddmLan冲匪- L'» Owerar

8、cri程: 2 Add Files to Group TMSI5 files'.|Remove Group tM5I5 files' and its FilesX Manage Components, “d 5how Include File DependenciesFnpLGPigst3rtyp_NUCl)0c.s-口 Source files+ 國 5mpl_DrvGPIO.c-屮 Library files+ 盘| DrvGPlO.c+ 團 DrvUART.c+ 厨 DrvSYS.c+ 蛊retargets-已-臼 CM515 Ries+ 園 corejcmCnC+ 圍

9、system_NUClxx.c 蛊| startupNUClxx.s -8 Source Files+ 圍 5mpl_Dr¥GPIO,.c- i Library files+1 旦 DrvGPIO.c + 盂| DrvUART.c 由囱DrvSYS.c + 圍 retarget.c2. GPI0实验具体需要的文件可以参看路径NUC100SeriesBSPNuvoto nPlatform_KeilSampleDriver 下的例程:以GPIO实验为例:以下是包含的.C文件与.S启动文件这些可自行添加入工僧* 菜惡电严* #菜定电孑压曲说明:1是添加组,作程序分层。2是在组中添加文件。3

10、是管理文件,可以添加文件、组等。添加完文件之后我们发现:这些 C语言文件需要匹配的.H文件才可以被编译。于是我们打开设置中的 C/C+里面观察一下“ In cludePathsDrvGPIO.c?| DrvUART.cDrvSYS.匚圍| retarget.cL;E-、Source Files+ 園 Smpl_DrvGPIO.c -臼 Library Files±1+电孑序側+这也是笔者为什么说其路径深不便于查找的原因。这些文件夹都可以在BSP中找到。大多数工程文件都是基于这些文件夹建立的。如果建立自己的工程,请按照以下步骤会方便许多:1复制必要的BSP库文件(.h&c2新建

11、KEIL工程添加必要的.C文件3. 链接.h文件路径,并编译4. 编译有错,请查看是否还是路径冋题以下冋题可能被忽略:a若有ERROR输出,请从最上端开始检查是否有文件未被打开,若有可以从原版 BSP LIB中搜 索后添加;b若依旧有ERROR输出,请注意#inelude中是否包含路径行"XXXxxx.h",若有请删除路径行再编译。编译完成d艸10ffl-Z008TL3nM1qn"dS8 b 列i68IWTd58 t L3(1NSISHJ I OHOSI5H3 F叭®00- & OHIO3-puuoo egI PI r<JSqV7WMxi:

12、KNVU|vrrd$9 ym68AQTdS6Fl:nfA$ISHJV0W:ASFHJV>M*d" pnpui蛭霜魏垂<pagi»dMjn> Ijuop38pu| gpco乙 omMpwU luepuMfepuiuoiHO MQ-pwy pwfr$M»M3v»?Jd M 血吓unu3 3ISNV Wuoounj iM uoipas 313 0 CRTK owisjxx p«q 回F 8)011 Awauino倒歹£军济老&wririOptMtMirttfL | Level 0<M| J£ run

13、 Coni am aUays ml| -.Ln4pecM>二 |厂 Optima tor 1 ire厂 Plain Ch« 4 Signedplil Lod anc ?tote MullipeReidOrJ> Pwticn IndependwiW One ELF SeCkn per Fundbcr厂 Rwdrla Roiibon Indeptndert所在交侔箕ACMS4SCM0 CwilSWC 1 x< ®PJjfeQG范血谕LlCl*18302;曲叮 |IncludeCntiah''"Wh 9 -GA,丨宀 W : J .1

14、apCh"吋丹汕 V 叭普匚 h:.厂 m:.Y r-.l|A3,e i -":,* I.HlCflrirol I. CMSI5MIM:1m I. aSP.UbMnenw J .fcP_Uj4ncNUCl>a<B_flO2 st«TgC *j. 11笔者移植的工程设置如下:以上多数命令行皆为原始工程复制,而仅是INC路径改变,切记不要缺文件,多对比原版工程即可发现错误。3. 3.关于程序文件的解释关于程序文件的解释对于一些工程内必备文件的解释:启动层*core_cm0.c/.hARM公司对于 M0内核的支持*system_NUC1xx.c/.hNUCI

15、xx 系统文件 *startup_NUC1xx.sNUCIxx 启动文件 驱动层nuclxx.h NUC1XX系列标准头文件具体寄存器组、外设配置的结构体的定义。Sysl nfra.h新唐公司对于M0设备ID的声明ModulelD.h 新唐M0设备ID号声明Stdint.h数据类型等的声明*DrvXXX.c/.h一些串口附属函数外设库函数及外设基本头文件 Retarget.c 用户层Mai n.c 客户应用文件4. 4设计设计LED点亮实验1.参考原始新唐BSP GPIO 程序士 I 匕.忧帰 Smplio* Xs A JDrvGflD.t:J 5mpl_GPJO、CMSiSHw+ 勺 twe

16、.dnO.cH- SJ 5y4tefn_WCl£t.c jl startg_NUC!xx虐-、Solf»+ 卫 5mp_»vii0.c ”、LtrJry f4es-固併申牛】0丄1 stdOnh J nucg-h 一 J cDre_urO.h -:H stdrtrh _!| sy_nucT-<.h JI sysnbi h T mwWepd.h .1 drvgpo,h + 1J DrvUARTx * 乜 tTv5V5,c + 封 retarget.coom r/ 1OM? / *0DQ3 QDO4 (JOOSoooeODD?0008/ * Copyr ight

17、 (c) 2CO? Nuvolorj Techna f wlnc丄ii出亡 <srdla - h> include UUClxx . h*f ffinclude DrvGPIO.h*IJ11. * InclU'Jizs . £ local hu = Llu:i 二0Q12/*0013om J0015D3160017DD1A0019UU2U/T Macro rype and conscanc definitxonsJ 4- f r -* " 1 def1ne PORTOFrSET Jx40/* Global file scope (static) variables秤,菜杀电孑点国在学会上一讲中建立工程的基础上,打开 BSP中GPIO范例,仔细观察文件 包含关系。2.参照BSP说明可以通过官网下载最新版本的BSP库与说明,因为中英对照版本都有,所以 笔者截取的是中文片段。如下页图所示:对应配置请自行参看库说明与例程。3.编写程序 网址: Email: hotwc3前一段串口的配置可以先不领会,关键对比官方 BSP库手册 相关部分来配置 后面程序中GP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论