野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 29859|回复: 5

循环流水灯顺序问题

[复制链接]
发表于 2018-7-27 20:49:49 | 显示全部楼层 |阅读模式
根据教材上的代码,自己写了一下循环流水灯的代码,亮灯顺序应该是:红、绿、蓝、红、蓝、绿、紫、黄、白、青、黑,但是烧到开发板上后,是先亮了白、青、蓝、红、蓝、绿、紫、黄、白、青、黑,然后才正式的循环的,问了一个学长,说是时钟配置的问题,但是自己看了又不知道是什么问题,亮单个灯的时候是正常的,以下是代码:
main.c的代码:
#include "stm32f10x.h"
#include "bsp_led.h"
#define SOFT_DELAY       Delay(0xFFFFFF);
void Delay(nCount)
{
for (; nCount !=0;nCount--);
}
int main(void)
{
LED_GPIO_Config();

while(1)
{
  LED1_ON;//red
  SOFT_DELAY;
  LED1_OFF;
  
  LED2_ON;//green
  SOFT_DELAY;
  LED2_OFF;
  
  LED3_ON;//blue
  SOFT_DELAY;
  LED3_OFF;
  
  LED_RED;
  SOFT_DELAY;
  
  LED_BLUE;
  SOFT_DELAY;
  
  LED_GREEN;
  SOFT_DELAY;
  
  LED_PURPLE;
  SOFT_DELAY;
  
  LED_YELLOW;
  SOFT_DELAY;
  
  LED_WHITE;
  SOFT_DELAY;
  
  LED_CYAN;
  SOFT_DELAY;
  
  LED_RGBOFF;
  SOFT_DELAY;
}
}

bsp_led.c的代码:
#include "bsp_led.h"
#include "stm32f10x.h"

void LED_GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(LED1_GPIO_CLK|LED2_GPIO_CLK|LED3_GPIO_CLK,ENABLE);
GPIO_InitStructure.GPIO_Pin=LED1_GPIO_PIN;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(LED1_GPIO_PORT, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=LED2_GPIO_PIN;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(LED2_GPIO_PORT, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=LED3_GPIO_PIN;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(LED3_GPIO_PORT, &GPIO_InitStructure);
}                 



回复

使用道具 举报

 楼主| 发表于 2018-7-27 21:21:38 | 显示全部楼层
我真是蠢死了,忘记关灯了,是因为随机的问题吗?
回复 支持 反对

使用道具 举报

发表于 2018-8-29 15:30:09 | 显示全部楼层
是不是亮红色的时候,蓝色和绿色没有关闭
回复 支持 反对

使用道具 举报

发表于 2018-9-3 17:15:12 | 显示全部楼层
一开始没有亮红绿蓝是因为,你在配置函数的时候就打开了三种颜色,要想正常显示一种颜色需要先关闭另外的两种颜色。另外不是随机的,随机的话每次重新reset后会不一样。
回复 支持 反对

使用道具 举报

发表于 2018-12-19 21:56:33 | 显示全部楼层
怎么关闭其他两种颜色的灯??
回复 支持 反对

使用道具 举报

发表于 2020-2-3 14:51:55 | 显示全部楼层
LED1_ON; LED2_OFF; LED2_OFF; 别忘了宏定义
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-12-7 03:12 , Processed in 0.049851 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表