野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12753|回复: 2

新手LED灯点亮

[复制链接]
发表于 2020-3-11 22:12:28 | 显示全部楼层 |阅读模式
野火视频教程点亮LED,PB0口输出低电平时绿灯亮,PB1口蓝灯亮,PB5红灯亮,写的代码想让三种颜色交替亮。
问题1,我写的代码执行起来正常,绿色和蓝色正常,但红色变成了橙色。
问题2,我看霸道开发板原理图LED D4和D5对应的是PF7和PF8,但看参考手册中RCC  APB2 外设复位寄存器中没有找到IOPF。
求各位指导一下 代码如下:
#include"stm32f10x.h"

void delay(unsigned int i)
{
  while(i--);
}

int main (void)
{
//打开GPIOB端口时钟
*( unsigned int *) 0x40021018 |= ( (1)<<3 );
while(1)
{
*( unsigned int *) 0x40010C00 |= ( (0x0f)<<(4*0) );
//配置IO口PB0为输出
*( unsigned int *) 0x40010C00 |= ( (1)<<(4*0) );
//控制ODR寄存器P0
*( unsigned int *) 0x40010C0C &= ~(1<<0);
    delay(900000);
*( unsigned int *) 0x40010C0C |=  (1<<0);
//配置IO口PB1为输出
*( unsigned int *) 0x40010C00 |= ( (1)<<(4*1) );
//控制ODR寄存器P1
*( unsigned int *) 0x40010C0C &= ~(1<<1);
  delay(900000);
*( unsigned int *) 0x40010C0C |= (1<<1);
//配置IO口PB5为输出
*( unsigned int *) 0x40010C00 |= ( (1)<<(4*5) );
//控制ODR寄存器P5
*( unsigned int *) 0x40010C0C &= ~(1<<5);
  delay(900000);
*( unsigned int *) 0x40010C0C |= (1<<5);
}
}
void SystemInit(void)
{
  
}

回复

使用道具 举报

发表于 2020-3-21 19:43:53 | 显示全部楼层
#include"stm32f103x.h"



void delay(unsigned int i)
{
  while(i--);
}

int main(void)
{


while(1)
{
        //打开GPIOB端口的是时钟       
        *(unsigned int* )0x40021018 |=((1)<<3);
                //配置IO输出
*(unsigned int* )0x40010C00 |=((1)<<(4*0));
//控制ODR寄存器       
*(unsigned int* )0x40010C0C &=~(1<<0);
delay(900000);
*(unsigned int*)0x40010C00  &= ~( 0x0F<< (4*0));//清空控制PB0的端口位       
                //配置IO输出
*(unsigned int* )0x40010C00 |=((1)<<(4*1));
//控制ODR寄存器       
*(unsigned int* )0x40010C0C &=~(1<<1);
delay(900000);
        *(unsigned int*)0x40010c00  &= ~( 0x0F<< (4*1));//清空控制PB1的端口位
                        //配置IO输出
*(unsigned int* )0x40010C00 |=((1)<<(4*5));
//控制ODR寄存器       
*(unsigned int* )0x40010C0C &=~(1<<5);
delay(900000);
        *(unsigned int*)0x40010c00  &= ~( 0x0F<< (4*5));//清空控制PB5的端口位
       
}
       
               

}

void SystemInit(void)
{
//函数体为空,骗过编译器
}
回复 支持 反对

使用道具 举报

发表于 2020-3-21 19:44:28 | 显示全部楼层
你少了个清空pb端口
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-4 10:01 , Processed in 0.053849 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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