打印

流水灯作业

[复制链接]
345|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
冰糖炖雪梨|  楼主 | 2020-4-3 22:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
[C] 纯文本查看 复制代码#include "stm32f10x.h"     //相当与51单片机中的 #include<reg51.h>
#include "led.h"
void Delay( uint32_t count )
{
        for (; count!=0; count--);
}

int main(void)
{
         LED_GPIO_Config();
       
        while(1)
        {
                GPIO_ResetBits(LED_G_GPIO_PORT,LED_G_GPIO_PIN);
                Delay(0xffffff);
                GPIO_SetBits(LED_G_GPIO_PORT,LED_G_GPIO_PIN);
                Delay(0xffffff);
                GPIO_ResetBits(LED_B_GPIO_PORT,LED_B_GPIO_PIN);
                Delay(0xffffff);
                GPIO_SetBits(LED_B_GPIO_PORT,LED_B_GPIO_PIN);
                Delay(0xffffff);
        }
}



/****************************
led.c************************
*****************************
****************************/

#include "led.h"

void LED_GPIO_Config(void)
{
        GPIO_InitTypeDef GPIO_InitStruct;
       
        RCC_APB2PeriphClockCmd( LED_G_GPIO_CLK | LED_B_GPIO_CLK , ENABLE);
        GPIO_InitStruct.GPIO_Mode = LED_GPIO_MODE;
        GPIO_InitStruct.GPIO_Speed = LED_GPIO_SPEED;
       
       
        GPIO_InitStruct.GPIO_Pin = LED_G_GPIO_PIN;//绿灯
        GPIO_Init(LED_G_GPIO_PORT,&GPIO_InitStruct);
       
        GPIO_InitStruct.GPIO_Pin = LED_B_GPIO_PIN;//蓝灯
        GPIO_Init(LED_B_GPIO_PORT,&GPIO_InitStruct);
       
               
                /* 关闭所有led灯        */
                GPIO_SetBits(LED_G_GPIO_PORT, LED_G_GPIO_PIN);         
   
    /* 关闭所有led灯        */
                GPIO_SetBits(LED_B_GPIO_PORT, LED_B_GPIO_PIN);
       
}

        /****************************
led.h************************
*****************************
****************************/
#ifndef _LED_H_
#define _LED_H_

#include "stm32f10x.h"


#define LED_GPIO_MODE  GPIO_Mode_Out_PP
#define LED_GPIO_SPEED GPIO_Speed_50MHz

//绿色
#define LED_G_GPIO_PORT         GPIOB  
#define LED_G_GPIO_PIN         GPIO_Pin_0
#define LED_G_GPIO_CLK   RCC_APB2Periph_GPIOB

//蓝色
#define LED_B_GPIO_PORT         GPIOB
#define LED_B_GPIO_PIN         GPIO_Pin_1
#define LED_B_GPIO_CLK   RCC_APB2Periph_GPIOB

void LED_GPIO_Config (void);
#endif





蓝绿流水灯。实现过程非常曲折,一开始单独的绿灯亮灭显示正常,只要再加上蓝灯就不正常了。修改了好久,最后参照别人的代码发现了自己的问题。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

430

主题

436

帖子

0

粉丝