我使用的是普中Z100开发板, led怎么都不能点亮,拜托各位前辈帮看看!! 程序如下: #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" #include "system.h" #define Delay(n) while((n)--) void Rcc_Configuration(void) { ErrorStatus HSEStartUpStatus; RCC_DeInit(); RCC_HSEConfig(RCC_HSE_ON); HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus == SUCCESS) { RCC_HCLKConfig(RCC_SYSCLK_Div1); RCC_PCLK2Config(RCC_HCLK_Div1); RCC_PCLK1Config(RCC_HCLK_Div2); FLASH_SetLatency(FLASH_Latency_2); FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9); RCC_PLLCmd(ENABLE); while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET); RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); while(RCC_GetSYSCLKSource()!=0x80); } RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); } void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_Init(GPIOB,&GPIO_InitStructure); } int main(void) { vu32 n=2000000; Rcc_Configuration(); GPIO_Configuration(); while(1) { GPIO_SetBits(GPIOB,GPIO_Pin_5); Delay(n); GPIO_ResetBits(GPIOB,GPIO_Pin_5); Delay(n); } } |
如果是新手刚上手 建议使用cubmx进行初始化配置 效率更高
评分
查看全部评分
十分感谢!我是新手,除了程序中的时钟配置,在option之类的环境中还有什么配置吗?
cubmx没用过,之后尝试一下。
就这4个项目 一定会帮到你的
评分
查看全部评分
再檢查 GPIOB 的 clock 確定是 RCC_APB2
假如都對 , 再檢查LED電路 是否會亮
假如會亮 , 再確認 delay 時間夠不夠
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
针对你的程序 先不要再while循环里闪灯,可以在while之前默认亮灯或者灭灯 while循环空白 看是否启动时能否按照你的语句亮灭
rtt32f103c8.zip
2020-7-17 16:47 上传
点击文件名下载附件
下载积分: ST金币 -115.39 MB, 下载次数: 2, 下载积分: ST金币 -1
评分
查看全部评分