关闭

关闭

封号提示

内容

首页 STM32固件库2[1].03与3.0版本的比较中文版.pdf

STM32固件库2[1].03与3.0版本的比较中文版.pdf

STM32固件库2[1].03与3.0版本的比较中文版.pdf

上传者: xxn59 2012-04-02 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《STM32固件库2[1].03与3.0版本的比较中文版pdf》,可适用于IT/计算机领域,主题内容包含AN应用笔记如何从STMFxxx固件库V升级为STMFxxx标准外设库V介绍本文的目的是介绍如何把基于STMFxxx固件库V(FWLib)开发的应用符等。

AN应用笔记如何从STMFxxx固件库V升级为STMFxxx标准外设库V介绍本文的目的是介绍如何把基于STMFxxx固件库V(FWLib)开发的应用程序升级到STMFxxx标准外设库V。本文的目的不是提供个版本的详细信息而是重点介绍个版本之间的差异。注意:文中除非特别指明固件库(FWLib)代表STMFxxx固件库V而标准外设库(StdPeriphLib)代表STMFxxx标准外设库V。术语表小容量产品是指闪存存储器容量在K至K字节之间的STMFxxSTMFxx和STMFxx微控制器。中容量产品是指闪存存储器容量在K至K字节之间的STMFxxSTMFxx和STMFxx微控制器。大容量产品是指闪存存储器容量在K至K字节之间的STMFxx和STMFxx微控制器。译注:本译文的英文版下载地址为:http:wwwstcomstonlineproductsliteratureanpdfSTMFxxx标准外设库V下载地址为:http:wwwstcomstonlineproductssupportmicrofilesstmfxstdperiphlibvzip自动升级脚本下载地址为:http:wwwstcomstonlineproductssupportmicrofilesanzip参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V目录为什么把STMFxxx固件库(FWLib)V升级为标准外设库(StdPeriphLib)V兼容ARMCortexMTM微控制器软件接口标准(CMSIS)CMSIS描述CMSIS结构STM固件库V和CMSISV对比STMFxxx标准外设库:Doxygen格式STMFxxx标准外设库体系结构STMFxxx标准外设库体系结构:文件包含关系STMFxxx固件库(FWLib)V存档STMFxxx标准外设库包STMFxxx标准外设库变动列表STMFxxx标准外设库文件库的内核文件库的外设驱动库的用户和工具链专用文件库的例程代码的书写规则和惯例数据类型和IO类型限定词异常的命名外设驱动更新NVICSysTickCAN如何使用STMFxxx标准外设库使用自动脚本的升级示例如何使用自动脚本使用自动脚本的升级步骤附录A固件库(FWLib)V升级到标准外设库(StdPeriphLib)V的具体步骤参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V为什么把STMFxxx固件库(FWLib)V升级为标准外设库(StdPeriphLib)VSTMFxxx固件库(FWLib)V是一个完整的固件包它适用于STMFxxx小容量中容量和大容量产品。固件库由程序数据结构和宏组成覆盖了所有外设的特征还包括了全部标准外设的驱动和一系列示例程序。STMFxxx标准外设库(StdPeriphLib)V由固件库(FWLib)V升级而来:它使库与CortexTM微控制器软件接口标准(CMSIS)兼容改进了库包的体系结构源代码符合Doxygen格式升级不影响STM外设驱动的API(应用编程接口)注意:标准外设库(StdPeriphLib)V只对STMFxxxCAN驱动进行了升级目的是支持即将面世的STMFxxx连接型产品(带双CAN)。要升级到STMFxxx标准外设库V用户只需要更新:与工具链相关的文件项目(project)设置库文件的位置用户无需改变或者更新应用程序的代码下文详细描述了标准外设库(StdPeriphLib)的所有更新细节。兼容ARMCortexMTM微控制器软件接口标准(CMSIS)CMSIS可以解决用户在基于CortexMCortexM或者CortexM内核的微控制器上进行软件开发时可能遇到的种种问题。CMSIS还可以扩展应用在将来的CortexM系列处理器内核上(标准称为CortexMx)。CMSIS是ARM公司与多家不同的芯片和软件供应商一起紧密合作定义的提供了内核与外设、实时操作系统和中间设备之间的通用接口。可以访问网站wwwonarmcom获取更多细节。CMSIS描述CMSIS可以分为多个软件层次ARM提供了下列部分可用于多种编译器:内核设备访问层:包含了用来访问内核的寄存器设备的名称定义地址定义和助手函数。同时也为RTOS(实时操作系统)定义了独立于微控制器的接口该接口包括调试通道定义。中间设备访问层:为软件提供了访问外设的通用方法。芯片供应商应当修改中间设备访问层以适应中间设备组件用到的微控制器上的外设。目前中间设备访问层仍处于开发过程中本文不做详述。芯片供应商扩展下列软件层:微控制器外设访问层:提供片上所有外设的定义。外设的访问函数(可选):为外设提供额外的助手函数。CMSIS为CortexMx微控制器系统定义了:访问外设寄存器的通用方法和定义异常向量的通用方法。内核设备的寄存器名称和内核异常向量的名称独立于微控制器的RTOS接口带调试通道中间设备组件接口(TCPIP协议栈闪存文件系统)参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VCMSIS结构图展示了基于CMSIS的应用程序的基本结构。图CMSIS层结构CMSIS外设访问层的文件独立于编译器的文件:CortexM内核及其设备文件(corecmhcorecmc)访问CortexM内核及其设备:NVICSysTick等访问CortexM的CPU寄存器和内核外设的函数微控制器专用头文件(deviceh)指定中断号码(与启动文件一致)外设寄存器定义(寄存器的基地址和布局)控制微控制器其他特有的功能的函数(可选)微控制器专用系统文件(systemdevicec)函数SystemInit用来初始化微控制器函数SysemExtMemCtl用来配置外部存储器控制器。它位于文件startupstmfxxxsc在跳转到main前调用SystemFrequncy该值代表系统时钟频率微控制器的其他功能(可选)编译器供应商微控制器专用启动文件编译器启动代码(汇编或者C)(startupdevices)微控制器专用的中断处理程序列表(与头文件一致)弱定义(Weak)的中断处理程序默认函数(可以被用户代码覆盖)注意:关键字weak指示编译器弱导出符号。该关键字可以用于函数和变量的声明以及函数的定义。使用weak定义的函数将弱导出其符号。除非将相同名称的非弱定义函数链接到相同映像上否则弱定义函数的行为与正常定义的函数类似。如果非弱定义函数和弱定义函数位于相同参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V映像中则会将对弱定义函数的所有调用解析为对非弱函数的调用。如果有多个可用的弱定义链接器将选择其中的一个弱定义供所有调用使用。STM固件库V和CMSISV对比CMSIS对STMFxxx固件库(FWLib)的某些功能采用了不同的实现方法。下面列出主要的区别:使用标准C类型文件<stdinth>对每一个CortexM异常和STM的IRQ有:异常服务程序带后缀Handler中断服务程序带后缀IRQHandler。弱定义(Weak)的默认异常中断服务程序包含一个无限循环带IRQn后缀的中断号码“#define”启动文件更名为”startupstmfxxxsc”其中xx可以是hdmd或者ld分别对应大容量中容量小容量产品。只提供精简的NVIC和SysTick函数其他一些常用函数作为一个新的驱动加入STMFxxx标准外设库文件命名为mischc。某些宏的名字与STMFxxx固件库V中的相同功能宏不同(见表)表STMFxxx固件库V与CMSIS宏对比()STM宏CMSIS宏STM宏CMSIS宏NOPRESETPRIMASKenableirqWFIWFISETPRIMASKdisableirqWFEWFEgetPRIMASKSEVSEVREADPRIMASKsetPRIMASK(val)ISBISBRESETFAULTMASKenablefaultirqDSBDSBSETFAULTMASKdisablefaultirqDMBDMBgetFAULTMASKSVCREADFAULTMASKsetFAULTMASK(val)MRSCONTROLgetCONTROLBASEPRICONFIGsetBASEPRIMSRCONTROLsetCONTROLGetBASEPRIgetBASEPRIMRSPSPgetPSPREVHalfWordREVMSRPSPsetPSPREVWordREVMRSMSPgetMSPREVSHMSRMSPsetMSPRBIT加粗的字体表示这些宏有变化。灰色的充填色表示这些改动影响到固件库(FWLib)的驱动或者例程。STMFxxx标准外设库:Doxygen格式STMFxxx标准外设库的源代码采用了新的格式所有源文件都按照doxygen格式书写用这种书写格式的代码能够很便利地生成更加规范且内在关联性更强的文档。ST将从意法半导体微控制器网站(wwwstcommcu)撤下现有的STMFxxx固件库用户手册UM而由Doxygen生成的CHM文件取而代之。该CHM文件完整地描述了STMFxxx标准外设库的全部组件。Doxygen例程:***briefReadsthespecifiedinputportpin*paramGPIOx:wherexcanbe(AG)toselecttheGPIOperipheral*paramGPIOPin:specifiestheportbittoread*ThisparametercanbeGPIOPinxwherexcanbe()参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V*retval:Theinputportpinvalue*其中:brief:一行简洁的函数功能描述param:函数的参数详解retval:函数的返回值详细信息可以参阅”stmfxstdperiphlibumchm”获取更多相关细节。STMFxxx标准外设库体系结构ST改进了STMFxxx标准外设库的体系结构并支持CMSIS层。根据应用程序的需要可以采取种方法使用标准外设库(StdPeriphLib):使用外设驱动:这时应用程序开发基于外设驱动的API(应用编程接口)。用户只需要配置文件”stmfxconfh”并使用相应的文件”stmfxppphc”即可。不使用外设驱动:这时应用程序开发基于外设的寄存器结构和位定义文件。标准外设库(StdPeriphLib)支持STMFxxx系列全部成员:大容量中容量和小容量产品。根据使用的STM产品具体型号用户可以通过文件”stmfxh”中的预处理define来配置标准外设库(StdPeriphLib)一个define对应一个产品系列。下面列出支持的产品系列STMFxLD:STM小容量产品STMFxMD:STM中容量产品STMFxHD:STM大容量产品这些define的作用范围是:文件”stmfh”中的中断IRQ定义启动文件中的向量表小容量中容量大容量产品各有一个启动文件外设存储器映像和寄存器物理地址产品设置:外部晶振(HSE)的值等系统配置函数非STM全系列兼容或不同型号产品间有差异的功能特征注意:这些define不会影响外设的驱动驱动支持STM全系列全部外设的功能特征。STMFxxx标准外设库体系结构:文件包含关系图展示了STMFxxx的文件包含关系参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V图STMFxxx标准外设库体系结构STMFxxx固件库(FWLib)V存档ST仍然会在STMTM网站(http:wwwstcommcufamiliesdocshtml)上保留STMFxxx固件库(FWLib)V及其全部相关固件。所有的文件包含在一个名称为”STMFxFWArchivezip”的zip压缩包中可在网页的”Firmware”栏目下载。该栏目可以直接通过下列地址访问:http:wwwstcommcufamiliesdocshtml#Firmware除了这个归档zip文件ST还提供一个名为”STMFxFWLibVPatchzip”的补丁压缩包可以修复固件库V的全部局限性。参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VSTMFxxx标准外设库包为了使STMFxxx标准外设库的使用更加灵活也为了改进了库的结构ST更新了STMFxxx固件库包添加专用子文件夹来包含CMSIS及其外设访问层相关文件。STMFxxx标准外设库包重命名为STMFxStdPeriphLibVXYZ。新包的体系结构如图所示。图STMFxxx标准外设库包结构参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V新包描述描述了所有在STMFxxx标准外设库包里的新文件夹表STMFxxx标准外设库包文件夹描述STMFxxxStdPeriphLibUtilitiesProjectLibrarieshtmrescTemplateTemplateExamplesSTMFxStdPeriphDriverCMSISSTMEVALRVMDKRIDEEWARMvsrcinc本文件夹包含了用于STMBEVAL和STMEEVAL评估板的专用驱动KEILRVMDK的项目模板示例RaisonanceRIDE的项目模板示例IAREWARMv的项目模板示例标准外设库驱动的完整例程标准外设库驱动源文件标准外设库驱动头文件见表本文件夹包含了所有的html页面资源表是CMSIS文件夹的结构表CMSIS文件夹结构CMSISCoreCMDocumentationStartupiargccarmCMSIS文档IAR编译器启动文件:startupstmfxhds:大容量产品启动文件startupstmfxmds:中容量产品启动文件startupstmfxlds:小容量产品启动文件GCC编译器启动文件:startupstmfxhdc:大容量产品启动文件startupstmfxmdc:中容量产品启动文件startupstmfxldc:小容量产品启动文件ARM编译器启动文件:startupstmfxhds:大容量产品启动文件startupstmfxmds:中容量产品启动文件startupstmfxlds:小容量产品启动文件本文件夹包含STMFxxxCMSIS文件:微控制器外设访问层和内核设备访问层:corecmh:CMSIS的CortexM内核设备访问层头文件corecmc:CMSIS的CortexM内核设备访问层源文件stmfxh:CMSIS的CortexMSTMfxxx微控制器外设访问层头文件systemstmfxh:CMSIS的CortexMSTMfxxx微控制器外设访问层头文件systemstmfxc:CMSIS的CortexMSTMfxxx微控制器外设访问层源文件参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V原STMFxxx固件库包与新STMFxxx标准外设库包对比图新函数包与原函数包对比参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VSTMFxxx标准外设库变动列表STMFxxx标准外设库文件库的内核文件文件stmfxh更名为stmfxh。它包含STM中断IRQ列表CortexM内核的特别选项STM外设存储器映像和寄存器物理地址定义专用define“STMFXSTDPERIPHvERSION”表示STMFxxx标准外设库的版本配置信息:a)应用程序需要选择运行它的STM产品具体型号每个产品只要一个defineb)应用程序需要选择是否使用外设驱动移除了Debug模式因此在调试时不再可以通过一个监视窗口观察外设寄存器但是可以利用特定工具链的调试功能监视外设的寄存器。因此移除更新下列文件:mainc:把#ifdefDEBUG替换为#ifdefUSEFULLASSERT移除文件stmfxlibh它的内容合并到文件stmfxconfh移除文件stmfxlibc更新文件stmfxconfh:a)移除“#defineDEBUG”为完全断言函数增加专用define“#defineUSEFULLASSERT”b)不再需要枚举式地define用到的外设(如#defineUSART,#defineUSART,#defineUSART)c)用户需要去掉相关行的注释符号来使用相应外设驱动例如想使用SPI驱动去掉#include“stmfxspih”这行的注释符号即可用文件<stdinth>替换文件stmfxtypeh出于兼容旧版本库的目的在文件stmfxh中保留了原有的类型定义。在文件stmfxh中添加一些标准外设库专用的类型定义(bool,FlagStatus,ITStatus,FunctionalState,ErrorStatus)。移除文件cortexmmacroh和cortexmmacros因为CMSIS文件覆盖了它们的内容。注意:标准外设库提供了一个名为”LibDEBUG”的特别示例示范了如何为选中的外设定义DEBUG功能。库的外设驱动移除NVIC和SysTick驱动它们的功能已由CMSIS内核设备层覆盖另添加了个常用函数作为新的驱动(mischmiscc)。voidNVICPriorityGroupConfig(uNVICPriorityGroup)用来简化CortexM优先级位设置voidNVICInit(NVICInitTypeDef*NVICInitStruct)用来简化NVICIRQ设置voidNVICSetVectorTable(uNVICVectTab,uOffset)用来从内部SRAM启动并把中断向量表重新映射到存储器不同地址voidNVICSystemLPConfig(uLowPowerMode,FunctionalStateNewState)voidSysTickCLKSourceConfig(uSysTickCLKSource)更新CAN驱动:在所有的CAN驱动函数中添加新的参数CANTypeDef*CANx其他驱动没有变化参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库V库的用户和工具链专用文件启动文件stmfxvectorsstmfxvectorc更名为startupstmfxxxsstartupstmfxxxc每个启动文件对应一系列产品:startupstmfxldsSTM小容量产品startupstmfxmdsSTM中容量产品startupstmfxhdsSTM大容量产品stmfxithstmfxitc:在这两个文件中移除了全部STMIRQ服务程序只保留了CortexM的异常处理程序。这些IRQ服务程序已经弱定义(Weak)在启动文件(startupstmfxxxsc)中用户需要在文件stmfxithstmfxitc中手动添加外设的中断服务程序(ISR)来替换掉启动文件中的默认中断服务程序。根据CMSIS重新命名CortexM异常mainc:移除下面的代码:#ifdefDEBUGdebug()#endif库的例程移除NVICCMLPModes和SystmHandlers的例程其他例程(VectorTableRelocation,DMAWFIMode,IRQChannel和Priority)保留。更新PWR和CortexM的例程更新了其中宏的名称其他例程没有变化代码的书写规则和惯例数据类型和IO类型限定词CortexMxHAL使用标准ANSIC头文件<stdinth>定义的标准类型。特别用类型限定词IO来访问外设的变量。类型限定词IO还用于外设寄存器的调式信息的自动生成。表CMSISIO类型限定词IO类型限定词#define描述Ivolatileconst只读访问Ovolatile只写访问IOvolatile读和写访问ST从库包中移除了文件”stmfxtypeh”新的库使用CMSIS和<stdinth>定义的数据类型。表展示了STMFxxx和<stdinth>之间数据类型的一一对应关系。表STMFxxx固件库V与CMSIS数据类型对比STMFxxx固件库类型CMSIS类型描述sintt有符号位数据sintt有符号位数据sintt有符号位数据scconstintt只读有符号位数据scconstintt只读有符号位数据scconstintt只读有符号位数据vsIOintt易挥发读写访问有符号位数据vsIOintt易挥发读写访问有符号位数据vsIOintt易挥发读写访问有符号位数据参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VvscIintt易挥发只读有符号位数据vscIintt易挥发只读有符号位数据vscIintt易挥发只读有符号位数据uuintt无符号位数据uuintt无符号位数据uuintt无符号位数据ucconstuintt只读无符号位数据ucconstuintt只读无符号位数据ucconstuintt只读无符号位数据vuIOuintt易挥发读写访问无符号位数据vuIOuintt易挥发读写访问无符号位数据vuIOuintt易挥发读写访问无符号位数据vucIuintt易挥发只读无符号位数据vucIuintt易挥发只读无符号位数据vucIuintt易挥发只读无符号位数据注意:出于兼容旧版本的目的文件”stmfxh”中仍然定义了STMFxxx固件库原有数据类型。文件”stmfxh”中也定义了STMFxxx固件库专用类型它们是:typedefenum{FALSE=,TRUE=!FALSE}booltypedefenum{RESET=,SET=!RESET}FlagStatus,ITStatustypedefenum{DISABLE=,ENABLE=!DISABLE}FunctionalState#defineISFUNCTIONALSTATE(STATE)(((STATE)==DISABLE)||((STATE)==ENABLE))typedefenum{ERROR=,SUCCESS=!ERROR}ErrorStatus异常的命名表展示了修改后符合CMSIS命名的异常处理程序名称。表STMFxxx固件库V与CMSIS异常名称对比STMFxxx异常CMSIS描述NMIExceptionNMIHandlerNMI异常HardFaultExceptionHardFaultHandler硬件错误异常MemManageExceptionMemManageHandler存储器管理错误异常BusFaultExceptionBusFaultHandler总线错误异常UsageFaultExceptionUsageFaultHandler使用错误异常SVCHandlerSVCHandlerSVCall异常DebugMonitorDebugMonHandler调试监控器异常PendSVCPendSVHandlerPendSVC异常SysTickHandlerSysTickHandlerSysTick处理程序表展示了将名称中CAN改为CAN的异常处理程序表STMFxxxCAN异常重命名STMFxxx异常CMSIS描述USBHPCANTXIRQHandlerUSBHPCANTXIRQHandlerUSB高优先级或CANTX中断处理程序USBHPCANRXIRQHandlerUSBHPCANRXIRQHandlerUSB低优先级或CANRX中断处理程序参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VCANRXIRQHandlerCANRXIRQHandlerCANRX中断处理程序CANSCEIRQHandlerCANSCEIRQHandlerCANSCE中断处理程序外设驱动更新下文描述了如何把基于固件库V的NVICSysTick和CAN驱动开发的应用程序升级到标准外设库V。注意:在下文列举的所有例程中字体为倾斜加粗的体现了固件库V和标准外设库V之间的差别。NVICSTMFxxx中断IRQ命名按照CMSIS的规范修改了STMFxxx中断号码定义命名。所有中断号码的#define在它们的名称中都添加了后缀IRQn。表展示了名称的变化表新的异常名称STMFxxx固件库VSTMFxxx标准外设库V描述SystemHandlerNMINonMaskableIntIRQnNMI处理程序SystemHandlerHardFaultSystemHandlerMemoryManageMemoryManagementIRQn存储器管理处理程序SystemHandlerBusFaultBusFaultIRQn总线错误处理程序SystemHandlerUsageFaultUsageFaultIRQn使用错误处理程序SystemHandlerSVCallSVCallIRQnSVC处理程序SystemHandlerDebugMonitorDebugMonitorIRQn调试监控器处理程序SystemHandlerPSVPendSVIRQnPendSV处理程序SystemHandlerSystickSysTickIRQnSysTick处理程序WWDGIRQChannelWWDGIRQnWWDGIRQ处理程序………同样在标准外设库V中外设CAN的名称改为CAN。这样如表所示在文件startupstmfxxxsstartupstmfxxxc和stmfxh中CAN中断IRQ通道名称也相应改变。表CANIRQ通道名称更新固件库V标准外设库VUSBHPCANTXIRQChannelUSBHPCANTXIRQnUSBHPCANRXIRQChannelUSBHPCANRXIRQnCANRXIRQChannelCANRXIRQnCANSCEIRQChannelCANSCEIRQnNVIC驱动从STMFxxx标准外设库中移除了NVIC驱动因此应用程序应当调用CMSIS的NVIC函数。表展示了CMSIS的函数。表STMFxxx固件库NVIC函数与CMSISNVIC函数对比STMFxxx固件库NVIC函数CMSISNVIC函数描述NVICPriorityGroupConfigNVICSetPriorityGrouping在NVIC中断控制器中设置组优先级NVICInitNVICEnableIRQ在NVIC中断控制器中使能中断参照年月AN英文第版本译文仅供参考如有翻译错误请以英文原稿为准。请读者随时注意在ST网站下载更新版本如何从STMFxxx固件库V升级为STMFxxx标准外设库VNVICDisableIRQ失能指定的外部中断线路NVICSetPriority为某中断设置优先级NVICGetIRQChannelPendingBitStatusNVICGetPendingIRQ读取指定的微控制器中断的待处理标志位NVICSetIRQChannelPendingBitNVICSetPendingIRQ为某外部中断设置待处理标志位NVICClearIRQChannelPendingBitNVICClearPendingIRQ为某外部中断清除待处理标志位NVICGetIRQChannelActiveBitStatusNVICGetActive读取某中断的活动标志位NVICGetPriority读取某中断的优先级NVICGenerateSystemResetNVICSystemReset初始化系统复位请求STMFxxx标准外设库不覆盖其他的STMFxxx固件库NVIC函数。为了简化NVIC和STM中断设置在文件”mischc”中保留了原有NVIC驱动的一些函数。它们是:voidNVICPriorityGroupConfig(uinttNVICPriorityGroup)voidNVICInit(NVICInitTypeDef*NVIC

职业精品

精彩专题

上传我的资料

热门资料

资料评价:

/ 22
所需积分:1 立即下载

意见
反馈

返回
顶部

Q