普中开源电子分享网

 找回密码
 立即注册
搜索

利用数组遍历实现流水灯效果(系统时钟可更改)

已有 355 次阅读2018-1-27 15:06 |个人分类:Creative| 流水灯实例一

#include "stm32f10x.h"
#include "led.h"

void Delay(u32 i)
{
while(i--);
}


void RCC_HSE_Config(u32 clksrcdiv,u32 pllmul)
{
RCC_DeInit();                                                  //Reset RCC to be Default Value;
RCC_HSEConfig(RCC_HSE_ON);                      //Configure HSE
if( RCC_WaitForHSEStartUp() == SUCCESS)    //Wait HSE Response
{
RCC_HCLKConfig(RCC_SYSCLK_Div1);       //Configure AHB Clock
RCC_PCLK1Config(RCC_HCLK_Div2);        //Configure PCLK1 (Low Speed)
RCC_PCLK2Config(RCC_HCLK_Div1);        //Configure PCLK2 (high Speed)
RCC_PLLConfig(clksrcdiv,pllmul);               //Configure Clock and Multiplier
RCC_PLLCmd(ENABLE);                           //Enable PLL
 
while( RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)    //Check RCC Flag Status
{
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);       //Configure SYSCLK
}
while(RCC_GetSYSCLKSource() != 0x08)                             //Return SYSCLK 0x08
{
}
}
}

int GPIO_PIN[6]={GPIO_Pin_0,GPIO_Pin_1,GPIO_Pin_2,GPIO_Pin_3,GPIO_Pin_4,GPIO_Pin_5};

int main()
{
RCC_HSE_Config( RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);    //72K PLL
LED_Init();
while(1)
{  
int i;
for(i=0;i<=5;i++)                                    //Running water LED
{
GPIO_ResetBits(GPIOC,GPIO_PIN[i]);
Delay(6000000);
GPIO_SetBits(GPIOC,GPIO_PIN[i]);
Delay(6000000);
}
}
}

路过

鸡蛋

鲜花

握手

雷人

全部作者的其他最新日志

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-5-3 13:00 , Processed in 0.062140 second(s), 25 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部