国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

 找回密碼
 注冊
搜索

stm32f103R6 PWM控制蜂鳴器頻率串口輸出(附帶源碼和仿真圖)

[復制鏈接]
樓主
其中利用了system,TIM2,USART1,按鍵中斷等stm32基本設置。 完整源碼和仿真文件.7z (315.86 KB, 售價: 3 E幣)
stm32f103R6 PWM控制蜂鳴器頻率串口輸出(附帶源碼和仿真圖) 123647ht5z6hyjnijj66r6.png stm32f103R6 PWM控制蜂鳴器頻率串口輸出(附帶源碼和仿真圖) 150928vuu22wjancasgy0c.png stm32f103R6 PWM控制蜂鳴器頻率串口輸出(附帶源碼和仿真圖) 123442ljz2hns2mcgkeigh.png 部分源碼
  1. void Delay( uint32_t t );
  2. void RCC_Configuration(void);
  3. void EXTI_Configration(void);
  4. void NVIC_Configration(void);

  5. uint16_t Key_Value=0;

  6. void Delay( uint32_t t )
  7. {      
  8.                 while(--t);
  9. }

  10. void RCC_Configration(void)
  11. {
  12. ErrorStatus HSEStartUpStatus;         /* 定義枚舉類型變量 HSEStartUpStatus */

  13.         /* 復位系統時鐘設置*/
  14.         RCC_DeInit();
  15.         /* 開啟HSE*/
  16.         RCC_HSEConfig(RCC_HSE_ON);
  17.         /* 等待HSE起振并穩定*/
  18.         HSEStartUpStatus = RCC_WaitForHSEStartUp();
  19.         /* 判斷HSE起是否振成功,是則進入if()內部 */
  20.         if(HSEStartUpStatus == SUCCESS)
  21.         {
  22.                 /* 選擇HCLK(AHB)時鐘源為SYSCLK 1分頻 */
  23.                 RCC_HCLKConfig(RCC_SYSCLK_Div1);
  24.                 /* 選擇PCLK2時鐘源為 HCLK(AHB) 1分頻 */
  25.                 RCC_PCLK2Config(RCC_HCLK_Div1);
  26.                 /* 選擇PCLK1時鐘源為 HCLK(AHB) 8分頻   9M*/
  27.                 RCC_PCLK1Config(RCC_HCLK_Div1);
  28. //                /* 選擇鎖相環(PLL)時鐘源為HSE 1分頻,倍頻數為4,則PLL輸出頻率為 8MHz * 4 = 32MHz */
  29. //                RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_4);
  30. //                /* 使能PLL */
  31. //                RCC_PLLCmd(ENABLE);
  32. //                /* 等待PLL輸出穩定 */
  33. //                while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
  34.                 /* 選擇SYSCLK時鐘源為HSE */
  35.                 RCC_SYSCLKConfig(RCC_SYSCLKSource_HSE);
  36.                 /* 等待HSE成為SYSCLK時鐘源 */
  37.                 while(RCC_GetSYSCLKSource() != 0x04);
  38.         }
  39. }      
  40. void EXTI_Configration()
  41. {
  42.                 EXTI_InitTypeDef  EXTI_InitStructure;
  43.           RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);
  44.                 //調用GPIO_EXTILineConfig函數分配引腳
  45.           GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource0);
  46.                 GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource13);
  47.     //調用EXTI_Init函數配置外部中斷
  48.           EXTI_InitStructure.EXTI_Line=EXTI_Line0|EXTI_Line13;
  49.           EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
  50.           EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling;
  51.           EXTI_InitStructure.EXTI_LineCmd=ENABLE;
  52.           EXTI_Init(&EXTI_InitStructure);
  53.          
  54. }
復制代碼


您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

手機版|小黑屋|ELEOK |網站地圖

GMT+8, 2026-5-26 01:10

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回復 返回頂部 返回列表