|
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "pwm.h"
#include "key.h"
int main(void)
{
u8 key,flag; //保存鍵值
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
delay_init(168); //初始化延時函數
uart_init(115200);//初始化串口波特率為115200
TIM3_PWM_CH1_Init(100-1,84-1);//84M/84=1Mhz的計數頻率,重裝載值500,所以PWM頻率為 1M/500=2Khz.
KEY_Init(); //初始化與按鍵連接的硬件接口
LED_Init ();
while(1) //實現比較值從0-300遞增,到300后從300-0遞減,循環
{
key=KEY_Scan(0); //得到鍵值
if(key)
{
switch(key)
{
case KEY0_PRES:
flag=1;
while(flag==1){
if(KEY0==1)flag=0;
GPIO_SetBits(GPIOC,GPIO_Pin_6);
GPIO_ResetBits(GPIOC,GPIO_Pin_7);
TIM_SetCompare1(TIM3,50); //修改比較值,修改占空比
}
break;
case KEY1_PRES:
flag=2;
while(flag==2){
GPIO_SetBits(GPIOC,GPIO_Pin_6);
GPIO_ResetBits(GPIOC,GPIO_Pin_7);
TIM_SetCompare1(TIM3,50); //修改比較值,修改占空比
key=KEY_Scan(0); //得到鍵值
if(key)
{
switch(key)
{
case KEY1_PRES:
flag=0;
}
}else
delay_ms(10);
}
break;
}
}else {
delay_ms(10);
TIM_SetCompare1(TIM3,100);
}
}
}
|
-
-
按鍵控制電機.7z
2020-11-4 18:15 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
2.16 MB, 下載次數: 30, 下載積分: 黑幣 -5
|