文档介绍:主函数
#include ""
#include ""
#include ""
#include ""
#include ""
#include ""
int main(void)
{
u8 t;
u32 v=100;
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72); //延时初始化
uart_init(72,9600); //串口初始化
LED_Init(); //初始化与LED连接的硬件接口
KEY_Init(); //初始化与按键连接的硬件接口
RCC->APB2ENR|=1<<2; //使能PORTA时钟
GPIOA->CRL&=0X0FFFFFFF;
GPIOA->CRL|=0X;//PA7推挽输出
GPIOA->ODR|=1<<7; //PA7 输出高
GPIOA->CRL&=0XFF0FFFFF;
GPIOA->CRL|=0X;//PA5推挽输出
GPIOA->ODR|=1<<5; //PA5 输出高
LED1=1;
LED0=1;
while(1)
{
t=KEY_Scan(0); //得到键值
switch(t)
{ case KEY0_PRES:
v=v+10;
TIM3_Int_Init(v,7199);//10Khz的计数频率
TIM3->CR1|=0x01;
break;
case KEY1_PRES:
v=v-10 ;
TIM3_Int_Init(v,7199);//10Khz的计数频率
TIM3->CR1|=0x01; //使能定时器3
break;
case WKUP_PRES:
TIM3->CR1&=0xFE;//关定时器3;
break;
}
}
}
LED初始化
#include ""
#include ""
void LED_Init(void)
{
RCC->APB2ENR|=1<<2; //使能PORTA时钟
RCC->APB2ENR|=1<<5; //使能PORTD时钟
GPIOA->CRH&=0XFFFFFFF0;
GPIOA->CRH|=0X;//PA8 推挽输出
GPIOA->ODR|=1<<8; //PA8 输出高
GPIOD->CRL&=0XFFFFF0FF;
GPIOD->CRL|=0X;//
GPIOD->ODR|=0x0004; //
}
按键初始化
#include "