Keil MDK自带神器,Configuration


学习单片机或ARM的同学可能都有这样的困惑 ,每次用到单片机的GPIO,SPI,定时器时我们都要反复配置内部寄存器。那么有没有一个这样的工具,当我们每次需要一个外设的时候,只需简单勾选的操作就可以生成所需配置的代码 ?答案是肯定的 ,keil内部集成了一个非常实用的插件Configuration Wizard,它可以通过勾选的方式快速配置我们的初始化代码 ,下面的例子基于stm32_init.c如图:
 

通过勾选我们完成了定时器3内部触发的配置,这样我们只需在main函数中调用一次stm32_Init();函数就可以了,是不是很简单!
1.    Stm32_Init.c的使用方法
只需打开在Keil中打开Stm32_Init.c文件在窗口左下角选择Configuration Wizard即可弹出上图所示菜单。
 

2.    如何编写自己的配置代码
点击帮助可获得Configuration Wizard的使用帮助
 
 






可以看到,编写配置文件只需按照具体的格式即可,如下示例程序:
// <<< Use Configuration Wizard in Context Menu >>>
.
…….
// System Timer配置
//  System Timer时钟源选择
//  缺省值: SYSTICKCLK = HCLK/8
//                    <0=> SYSTICKCLK = HCLK/8
//                    <1=> SYSTICKCLK = HCLK
//  SYSTICK period [ms] <1-1000:10>
//  设置timer period for System Timer.
//  缺省值: 1  (1ms)
//  System Timer中断允许
//
#define __SYSTICK_SETUP           0
#define __SYSTICK_CTRL_VAL        0x00000006
#define __SYSTICK_PERIOD          0x0000000A
….
……….
// <<< end of configuration section >>>
…………
#if __SYSTICK_SETUP
 
__inline static void stm32_SysTickSetup (void)
{
 
#if ( (__SYSTICK_PERIOD * (__SYSTICKCLK / 1000) - 1) > 0xFFFFFF)   //reload value to large
#error "Reload Value to large! Please use 'HCLK/8' as System Timer clock source or smaller period"
#else
       SysTick->LOAD = __SYSTICK_PERIOD * (__SYSTICKCLK / 1000) - 1; //设置 reload 寄存器
       SysTick->CTRL = __SYSTICK_CTRL_VAL;//设置 clock source and中断允许
 
       SysTick->VAL = 0;//clear  the counter
       SysTick->CTRL |= SYSTICK_CSR_ENABLE;//允许the counter
#endif
} //end of stm32_SysTickSetup
#endif
……………..
void stm32_Init( )
{
 
……………..
#if __SYSTICK_SETUP
              stm32_SysTickSetup ();
#endif
……………..
} //end of stm32_Init
从上面我们可以看出,Configuration Wizard只是对部分宏定义进行了初始化,并不是特别复杂,而初始化函数只是给据编译条件生成不同的代码。
部分语句介绍:(《》应为<>)
《h》《/h》成对出现,出现一个展开选项
《e?》《/e》成对出现,出现一个勾选框
《e1》若勾选,下方第1个宏定义置一
《e2.3》  若勾选,下方第2个宏定义第3位置一
《o.2.3..4》出现一个下拉菜单,下方第2个宏定义第三第四位等于所选值
 




《i》提示信息
《/s》字符串初始化
3.    扩展
基本功能介绍完了,有兴趣的朋友可以编写自己的配置文件,应用于不同处理器,也可以编写自己的配置代码,通过勾选的方式生成不同的功能模块,具体方法可参照帮助文件,感谢某网友提供的中文版stm32_init.c文件。STM32工程模板已上传,欢迎下载,欢迎交流!
http://pan.baidu.com/s/1dD46oEH


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
µVision4µVision4µVision4µVision4 µVision4µVision4µVision4配置向导 (Configuration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration Wizard Configuration WizardConfiguration WizardConfiguration WizardConfiguration WizardConfiguration Wizard Configuration WizardConfiguration Wizard )是一个集成的编辑工具,它允许用户通过图形化界面配置 汇编 /C/C++ /C/C++ /C/C++/C/C++语言。该 语言。该 图形化配置界面非常类似于 图形化配置界面非常类似于 WebWebWeb网页的界面,甚至后台处理脚本也与 网页的界面,甚至后台处理脚本也与 网页的界面,甚至后台处理脚本也与 HtmlHtmlHtml 语言 十分接近。 下面将详细的解析图形化界设计与配置十分接近。 下面将详细的解析图形化界设计与配置十分接近。 下面将详细的解析图形化界设计与配置十分接近。 下面将详细的解析图形化界设计与配置十分接近。 下面将详细的解析图形化界设计与配置十分接近。 下面将详细的解析图形化界设计与配置需要说明的是,编写图形化配置界面时候代 需要说明的是,编写图形化配置界面时候代 需要说明的是,编写图形化配置界面时候代 需要说明的是,编写图形化配置界面时候代 需要说明的是,编写图形化配置界面时候代码是在程序的注释部分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值