Keil4下使用STM32库V3.5.doc

上传人:ni****g 文档编号:563334280 上传时间:2023-05-18 格式:DOC 页数:15 大小:1.07MB
返回 下载 相关 举报
Keil4下使用STM32库V3.5.doc_第1页
第1页 / 共15页
Keil4下使用STM32库V3.5.doc_第2页
第2页 / 共15页
Keil4下使用STM32库V3.5.doc_第3页
第3页 / 共15页
Keil4下使用STM32库V3.5.doc_第4页
第4页 / 共15页
Keil4下使用STM32库V3.5.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《Keil4下使用STM32库V3.5.doc》由会员分享,可在线阅读,更多相关《Keil4下使用STM32库V3.5.doc(15页珍藏版)》请在金锄头文库上搜索。

1、Keil4下使用固件库V3.5关联到建立自己工程第一步:下载一个固件库V3.5第二步:提取压缩包中的Librarie s放到你需要经常存放Keil4工程的地方,方便关联。例如放在F盘,新建的STM32文件夹下。第三步:打开Keil4,开始新建工程吧。1. 新建一个存放工程的文件夹,再将新建的工程放到此文件夹下。2.输入文件名后“保存”3.选取您使用的芯片型号 点“OK”,进入下一环节4.接着会出现这样的一个提示框,此处是选择是启动文件,但要使用库V3.5,此处点“否”5.此时Project中出现的是这样6.重点来了:选择工具条上的 Manage Components, 下图圈中 7.接着我们会

2、在此完成文件添加在”Groups”中新建3个文件夹1.StartUp 2.Library3.User用于分类存放相关文件8.选中“Groups”中的“StartUp”文件,然后再在Files框下,点击“Add File”找到目录下刚才存放的Libraries文件并打开,找到路径如下,并选中startup_stm32f10x_md.sF:STM32LibrariesCMSISCM3DeviceSupportSTSTM32F10xstartuparmstartup_stm32f10x_md.s同理,我们添加Library文件夹添加:stm32f10x_GPIO.c stm32f10x_rcc.c

3、stm32f10x_tim.cF:STM32LibrariesSTM32F10x_StdPeriph_Driversrcstm32f10x_gpio.c最后添加我们的“User”文件夹此处需要添加一个系统文件 system_stm32f10x.c 路径如下:F:STM32LibrariesCMSISCM3DeviceSupportSTSTM32F10xsystem_stm32f10x.c添加完成这个文件后,可以点“OK”结束了现在我们的Project中有如图文件:9.新建我们的main.c点红框处新建一个Txet1文件,保存为“main.c”记得加“.c”后缀10.右击Project中的“Us

4、er”出现有图菜单点击“Add Files to Group User”将保存的main.c文件添加到“User”中至此文件添加完成,如果还需要添加文件,可重复步骤8.911.将我们添加的文件与固件库关联起来点击工具条的“Target Options”弹出右图框12.按蓝色标记步骤,一步一步设置第一步:点击“Include Parts”的浏览按钮出现“ Folder Setup ” 新建链接如右图步骤一直浏览到右图文件夹,并选中“确定”:第二步:重复第一步骤新建找到路径,选中“inc”文件夹至此,关联固件库完成:如果需要添加自己的库可以采用此类方式,将“.h头文件”关联进来13.接下来是让自己

5、的文件夹更合理,分类更细致的步骤第一步:点击“Output”下“Select Folder Objects”,并新建一个“Output”文件夹双击打开点“OK”完成第二步:点击“Listing”下“Select Folder for Listing.”后新建一个listing文件夹,双击打开,点“OK”完成14.选择适合自己开发板的下载器第一步:点击“Debug”,出现如右图选择自己的调试器。选择“Adapter” “Port” “Max Clock” “Reset Option“第二步:选择下载器右图步骤:选择自己的芯片容量,这儿选的是中等容量选完“OK”结束最后点击他的“OK“完成所有前期

6、准备20.开始编写程序运行21.编译通过后软件仿真一下第一步:选择菜单栏中“Debug“按钮:第二步:选择软件仿真: 逻辑分析仪第三步:点“SetUp“,新建一个输入管脚名 “porta.6”,选择PA6引脚作为输出观察第四步:点击“Run”开始运行第五步:结果最后附上此例子程序/* 文件名 :main.c* 说明 :1.产生一个PWM波;* 2.输出频率 = 72MHz/预分频(TIM_Prescaler)/计数周期(TIM_Period)* 完成者 :Lijinquan* University :NCUT 完成时间 :31/07/2012*/#includestm32f10x.h#incl

7、udestm32f10x_tim.hvoid Timer3_GPIO_Configuration(void);void Timer3_BASE_Configuration(void);void Timer3_PWM_Configuration(void);int main(void) RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); Timer3_GPIO_Configuration(); Timer3_BASE_Configurati

8、on(); Timer3_PWM_Configuration();void Timer3_GPIO_Configuration(void) GPIO_InitTypeDef GPIO_InitStructure_TIMER3PWM_PORTA; GPIO_InitStructure_TIMER3PWM_PORTA.GPIO_Pin = GPIO_Pin_6; GPIO_InitStructure_TIMER3PWM_PORTA.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure_TIMER3PWM_PORTA.GPIO_Mode = GPIO_M

9、ode_AF_PP; /复用功能的推挽输出,片内、外设功能 GPIO_Init(GPIOA, &GPIO_InitStructure_TIMER3PWM_PORTA); void Timer3_BASE_Configuration(void) TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_DeInit(TIM3);TIM_InternalClockConfig(TIM3); /TIM_Prescaler:指定用于划分的TIM时钟的分频值。 TIM_TimeBaseStructure.TIM_Prescaler = 72; TIM_TimeB

10、aseStructure.TIM_CounterMode = TIM_CounterMode_Up;TIM_TimeBaseStructure.TIM_Period = 50000-1; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); TIM_InternalClockConfig(TIM3); /采用内部时钟给TIM3提供时钟源 void Timer3_PWM_Configuration(void) unsigned int T3CH1

11、_DC = 50 ; TIM_OCInitTypeDef TIM_OCInitStructure;TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInitStructure.TIM_Pulse = (T3CH1_DC * 50000) / 100; /写比较值(占空比输入)TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;TIM_OC1Init(TIM3, & TIM_OCInitStructure); TIM_ARRPreloadConfig(TIM3, ENABLE); TIM_Cmd(TIM3, ENABLE);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号