此程序只是簡單LED燈閃爍,用來測試STM32F103ZET芯片是否啟震。
單片機源程序如下:
- #include "stm32f10x_lib.h"
- #include "sys.h"
- /*------------------------------------------------------------
- 主函數
- ------------------------------------------------------------*/
- int main()
- {
-
- Stm32_Clock_Init();//系統時鐘設置
- RCC->APB2ENR |= 0x00000001; //開啟afio時鐘
- //AFIO->MAPR = (0x00FFFFFF & AFIO->MAPR)|0x04000000; //關閉JTAG
-
- RCC->APB2ENR|=0X0000001c;//先使能外設IO PORTa,b,c時鐘
-
- GPIOB->CRH=0X33333333; //推挽輸出
- GPIOB->CRL=0X33333333; //推挽輸出
- GPIOC->CRH=0X33333333; //推挽輸出
- GPIOC->CRL=0X33333333; //推挽輸出
- GPIOA->CRH=0X33333333; //推挽輸出
- GPIOA->CRL=0X33333333; //推挽輸出
- GPIOD->CRH=0X33333333; //推挽輸出
- GPIOD->CRL=0X33333333; //推挽輸出
- GPIOE->CRH=0X33333333; //推挽輸出
- GPIOE->CRL=0X33333333; //推挽輸出
- GPIOF->CRH=0X33333333; //推挽輸出
- GPIOF->CRL=0X33333333; //推挽輸出
- GPIOG->CRH=0X33333333; //推挽輸出
- GPIOG->CRL=0X33333333; //推挽輸出
- while (1)
- {
- delay_ms(50);
-
- GPIOB->ODR=0; //全部輸出0
- GPIOA->ODR=0;
- GPIOC->ODR=0;
- GPIOD->ODR=0;
- GPIOE->ODR=0;
- GPIOF->ODR=0;
- GPIOG->ODR=0;
- delay_ms(50);
-
- GPIOB->ODR=0xffffffff; //全部輸出1
- GPIOA->ODR=0xffffffff;
- GPIOC->ODR=0xffffffff;
- GPIOD->ODR=0xffffffff;
- GPIOE->ODR=0xffffffff;
- GPIOF->ODR=0xffffffff;
- GPIOG->ODR=0xffffffff;
- }
- }
復制代碼
所有資料51hei提供下載:
IO閃爍輸出.7z
(15.19 KB, 下載次數: 20)
2021-11-14 04:59 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|