赞
踩
PA1引脚连接led灯2,给PA1一个低电平,led2灯就会亮
编程要点
1)设置重装载寄存器的值。
2)清除当前数值寄存器的值。
3)配置控制与状态寄存器。
-
- #include "stm32f10x.h"
- #include "main.h"
- #include "led.h"
- #include "SysTick.h"
- int main()
- {
- LED_Init();
- GPIO_SetBits(GPIOA , GPIO_Pin_1);
- while(1)
- {
- GPIO_ResetBits(GPIOA , GPIO_Pin_1);
- ms_delay(500);
- GPIO_SetBits(GPIOA , GPIO_Pin_1);
- ms_delay(500);
- }
-
- }
-
- #include "stm32f10x.h"
- void delay(uint16_t time);
-
- #include "led.h"
- #include "stm32f10x.h"
- void LED_Init(void){
-
- GPIO_InitTypeDef led_init;
-
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
-
- led_init.GPIO_Mode = GPIO_Mode_Out_PP;
- led_init.GPIO_Pin = GPIO_Pin_1;
- led_init.GPIO_Speed = GPIO_Speed_10MHz;
-
- GPIO_Init(GPIOA,&led_init);
-
-
-
- }
-
- #include "stm32f10x.h"
- void LED_Init(void);
-
- #include "SysTick.h"
- #include "stm32f10x.h"
-
- void ms_delay(uint32_t ms)
- {
-
- uint32_t i;
- SysTick_Config(72000);
- for(i=0;i<ms;i++)
- {
- while( !((SysTick->CTRL)&(1<<16)));
- }
- SysTick->CTRL &=~ SysTick_CTRL_ENABLE_Msk;
-
- }
- void us_delay(uint32_t us)
- {
-
- uint32_t i;
- SysTick_Config(72);
- for(i=0;i<us;i++)
- {
- while( !((SysTick->CTRL)&(1<<16)) );
- }
- SysTick->CTRL &=~ SysTick_CTRL_ENABLE_Msk;
-
- }
-
- #include "stm32f10x.h"
- void ms_delay(uint32_t ms);
- void us_delay(uint32_t us);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。