zoukankan
html css js c++ java
stm32f10x_conf.h 与 stm32f10x.h(转载)
摘自:
http://blog.chinaunix.net/uid-24671805-id-3168404.html
新版的固件库V3.0以上 main等源文件中不再直接包含stm32f10x_conf.h,而是stm32f10x.h,stm32f10x.h则定义了启动设置,以及所有寄存器宏定义,此文件中需要注意的有:
1、device选择
#if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)
/* #define STM32F10X_LD */ /*!< STM32F10X_LD: STM32 Low density devices */
/* #define STM32F10X_LD_VL */ /*!< STM32F10X_LD_VL: STM32 Low density Value Line devices */
/* #define STM32F10X_MD */ /*!< STM32F10X_MD: STM32 Medium density devices */
#define STM32F10X_MD
/* #define STM32F10X_MD_VL */ /*!< STM32F10X_MD_VL: STM32 Medium density Value Line devices */
/* #define STM32F10X_HD */ /*!< STM32F10X_HD: STM32 High density devices */
/* #define STM32F10X_HD_VL */ /*!< STM32F10X_HD_VL: STM32 High density value line devices */
/* #define STM32F10X_XL */ /*!< STM32F10X_XL: STM32 XL-density devices */
/* #define STM32F10X_CL */ /*!< STM32F10X_CL: STM32 Connectivity line devices */
#endif
此段代码在stm32f10x.h的开始处,根据所用的器件 取消合适的注释。我常用的是stm32f103c8t6 属于Medium density Value Line devices.
2、外部时钟频率选择
#if !defined HSE_VALUE
#ifdef STM32F10X_CL
#define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */
#else
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
#endif /* STM32F10X_CL */
#endif /* HSE_VALUE */
注意STM32F10X_CL,STM32F10X_CL是stm32f105 和stm32f107 互联型的device,用到此器件外部要选用25MHz的晶体,由于前面的代码没有取消 /* #define STM32F10X_CL */ /*!< STM32F10X_CL: STM32 Connectivity line devices */的注释,所以此处默认的外部8MHz的晶体
3、外设宏定义USE_STDPERIPH_DRIVER
#if !defined USE_STDPERIPH_DRIVER
/**
* @brief Comment the line below if you will not use the peripherals drivers.
In this case, these drivers will not be included and the application code will
be based on direct access to peripherals registers
*/
/*#define USE_STDPERIPH_DRIVER*/
#endif
如果不适用片内外设,则不要取消 /*#define USE_STDPERIPH_DRIVER*/的注释
注意stm32f10x.h文件的最后有这样的代码:
#ifdef USE_STDPERIPH_DRIVER
#include "stm32f10x_conf.h"
#endif
stm32f10x_conf.h中包含了所有外设的头文件,因此任意源文件只要包含了stm32f10x.h,就可以在源文件调用任意外设的函数。
若有外设为使用到,在stm32f10x_conf.h注释相应部分,项目编译时就不会在编译去掉的外设。
转载:http://hi.baidu.com/ancient2008/blog/item/ea0ea30d4aa59cd53bc7638c.html
查看全文
相关阅读:
2017-2018-1 20155323 《信息安全系统设计基础》第十三周学习总结
2017-2018-1 20155323 实验五 通讯协议设计
2017-2018-1 20155323 20155314 实验四 外设驱动程序设计
2017-2018-1 20155323 《信息安全系统设计基础》第11周学习总结
IPC学习
2017-2018-1 20155323 《信息安全系统设计基础》第10周学习总结
2017-2018-1 20155323 《信息安全系统设计基础》第9周学习总结
2017-2018-1 20155323 实验三 实时系统
20155320《信息安全系统设计基础》课程总结
2017-2018-1 20155320 《信息安全系统设计基础》第十四周学习总结
原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12007572.html
最新文章
20169205 2016-2017-2 《移动平台应用开发实践》第8周学习总结
20169205 2016-2017-2 《网络攻防技术》第8周学习总结
20169205 2016-2017-2 《移动平台应用开发实践》第7周学习总结
20169205实验一 Java开发环境的熟悉(Linux+IDEA)
20169205 2016-2017-2 《网络攻防技术》第7周学习总结
20169205 2016-2017-2 《移动平台应用开发实践》第6周学习总结
20169205 2016-2017-2 《网络攻防技术》第6周学习总结
20169205 2016-2017-2 《移动平台应用开发实践》第5周学习总结
20155325 Exp1 PC平台逆向破解(5)M
20155325 2018-2017 1 20180103课堂嵌入式基础
热门文章
《记忆匣子》——网络编程jsp网页制作复习习笔记1
20155325 2017-2018 1 《信息安全系统设计基础》第十五周学习总结
20155325 2017-2018 1 《信息安全系统设计基础》 第十四周学习总结
20155325 2017-2018 1 《信息安全系统设计基础》 第十三周学习总结
20155325 2017-2018 1 《信息安全系统设计基础》实验五 通讯协议设计
20155325 2017-2018 1 课上测试、课下作业、实验——码云&博客链接汇总 《信息安全系统设计基础》
20155325 2017-2018 1 《信息安全系统设计基础》第十一周学习总结
20155312 20155325 2017-2018 1 实验四 外设驱动程序设计
20155323刘威良 《信息安全系统设计基础》课程总结
2017-2018-1 20155323 《信息安全系统设计基础》第十四周学习总结
Copyright © 2011-2022 走看看