程序只適用于keil5
單片機源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "key.h"
- int main()
- {
- u8 led0stat=1,led1stat=1;
-
- Cache_Enable();
- HAL_Init();
-
-
- delay_init(80);//(u8 SYSCLK)形參,,是unsigned char 0-255
- Stm32_Clock_Init(432,25,2,9);//外部晶振為25M的時候,推薦值:plln=432,pllm=25,pllp=2,pllq=9.
-
- __HAL_RCC_GPIOA_CLK_ENABLE();
- __HAL_RCC_GPIOB_CLK_ENABLE();
- __HAL_RCC_GPIOH_CLK_ENABLE();
- __HAL_RCC_GPIOC_CLK_ENABLE();
- key_init();
- led_init();
-
-
-
- while(1)
- {
- u8 key;
-
- key=key_scan(0);
- if(key)
- {
- switch(key)
- {
- case KEY0_PRES: //KEY0有效
- led0stat=!led0stat;//key0--led0
- break;
- case KEY1_PRES: //KEY1有效
- led1stat=!led1stat;//key1--led1
- break;
- case KEY2_PRES: //KEY2有效
- led0stat=!led0stat;//同時反轉
- led1stat=!led1stat;
- break;
- case WKUP_PRES: //KEY_UP 有效
- led0stat=!led0stat;
- led1stat=!led0stat;//互斥
- break;
-
-
- }
- LED0(led0stat);
- LED1(led1stat);
- }
-
-
- }
- }
復制代碼
所有資料51hei提供下載:
003KEY-LED.rar
(971.06 KB, 下載次數: 20)
2018-11-21 02:55 上傳
點擊文件名下載附件
|