其中利用了system,TIM2,USART1,按键中断等stm32基本设置。
完整源码和仿真文件.7z
(315.86 KB, 售价: 3 E币)
部分源码
- void Delay( uint32_t t );
- void RCC_Configuration(void);
- void EXTI_Configration(void);
- void NVIC_Configration(void);
- uint16_t Key_Value=0;
- void Delay( uint32_t t )
- {
- while(--t);
- }
- void RCC_Configration(void)
- {
- ErrorStatus HSEStartUpStatus; /* 定义枚举类型变量 HSEStartUpStatus */
- /* 复位系统时钟设置*/
- RCC_DeInit();
- /* 开启HSE*/
- RCC_HSEConfig(RCC_HSE_ON);
- /* 等待HSE起振并稳定*/
- HSEStartUpStatus = RCC_WaitForHSEStartUp();
- /* 判断HSE起是否振成功,是则进入if()内部 */
- if(HSEStartUpStatus == SUCCESS)
- {
- /* 选择HCLK(AHB)时钟源为SYSCLK 1分频 */
- RCC_HCLKConfig(RCC_SYSCLK_Div1);
- /* 选择PCLK2时钟源为 HCLK(AHB) 1分频 */
- RCC_PCLK2Config(RCC_HCLK_Div1);
- /* 选择PCLK1时钟源为 HCLK(AHB) 8分频 9M*/
- RCC_PCLK1Config(RCC_HCLK_Div1);
- // /* 选择锁相环(PLL)时钟源为HSE 1分频,倍频数为4,则PLL输出频率为 8MHz * 4 = 32MHz */
- // RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_4);
- // /* 使能PLL */
- // RCC_PLLCmd(ENABLE);
- // /* 等待PLL输出稳定 */
- // while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
- /* 选择SYSCLK时钟源为HSE */
- RCC_SYSCLKConfig(RCC_SYSCLKSource_HSE);
- /* 等待HSE成为SYSCLK时钟源 */
- while(RCC_GetSYSCLKSource() != 0x04);
- }
- }
- void EXTI_Configration()
- {
- EXTI_InitTypeDef EXTI_InitStructure;
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);
- //调用GPIO_EXTILineConfig函数分配引脚
- GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource0);
- GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource13);
- //调用EXTI_Init函数配置外部中断
- EXTI_InitStructure.EXTI_Line=EXTI_Line0|EXTI_Line13;
- EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
- EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling;
- EXTI_InitStructure.EXTI_LineCmd=ENABLE;
- EXTI_Init(&EXTI_InitStructure);
-
- }
复制代码
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|