OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3193|回复: 1

STM32新手入门,跑马灯(库函数版) GPIO延迟问题

[复制链接]

2

主题

4

帖子

0

精华

新手入门

积分
32
金钱
32
注册时间
2015-7-15
在线时间
0 小时
发表于 2015-7-15 22:25:31 | 显示全部楼层 |阅读模式
5金钱

[mw_shl_code=c,true]#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "stdio.h"

void Delay(u32 count)
{
	u32 i=0;
	for(;i<count;i++);
}
	
int main(void)
{
	//u8 t=0;
	//使能IO时钟,调用函数为RCC_APB2PeriphClockCmd
	//初始化I/O参数。调用函数GPIO_Init()
	//操作IO。操作方法,调用GPIO_ReadInputDataBit

	
	//声明结构体,结构体以及函数声明要放在代码之前。
	GPIO_InitTypeDef gpioinitTypeDef;
	
	//使能GPIO口
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOE,ENABLE);
	//RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);
	
	//初始化GPIO结构体 包含PIN,mode,以及speed
	
	gpioinitTypeDef.GPIO_Pin=GPIO_Pin_5;
	gpioinitTypeDef.GPIO_Mode=GPIO_Mode_Out_PP;
	gpioinitTypeDef.GPIO_Speed=GPIO_Speed_50MHz;
	//调用初始化函数
	GPIO_Init(GPIOB,&gpioinitTypeDef);
 	GPIO_SetBits(GPIOB,GPIO_Pin_5);
	
	gpioinitTypeDef.GPIO_Pin=GPIO_Pin_5;
	GPIO_Init(GPIOE,&gpioinitTypeDef);
 	GPIO_SetBits(GPIOE,GPIO_Pin_5);
	
	while(1){	
	GPIO_ResetBits(GPIOE,GPIO_Pin_5);
	GPIO_SetBits(GPIOB,GPIO_Pin_5);
	
	Delay(3000000);                //此次为第一个延迟
	GPIO_ResetBits(GPIOB,GPIO_Pin_5);
	GPIO_SetBits(GPIOE,GPIO_Pin_5);
	Delay(3000000);             //此次为第二个延迟
	}
}

[/mw_shl_code]
用的是战舰STM32F103ZE开发板  [/mw_shl_code]
[mw_shl_code=c,true]这段代码是没有问题的,但是如果没有第二个延迟,则只有GPIOE所连接的LED1一直亮,没有闪烁,GPIOB连接的LED0不亮,请问这是为什么呀???[/mw_shl_code]
[mw_shl_code=c,true]其次,我用的这个延迟函数,如果变成delay_ms(1000) 现象跟上面一样,是延迟函数有问题么,但是之前用寄存器版的跑马灯时也是用的这个延迟函数,其次光盘上面的跑马灯实验(库函数版)用的也是这个dedelay_ms(1000)延迟函数,但是没有问题,高手能不能帮忙解决下,本人STM32新兵
[/mw_shl_code]
	


最佳答案

查看完整内容[请看2#楼]

肯定的了 只有第一个延迟,你看看循环怎么跑的 IO口设置为1了,,,然后没有延迟,下个循环立马设置为0,,,0到1,,,瞬间变化,你看得到么?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-7-15 22:25:32 | 显示全部楼层
肯定的了
只有第一个延迟,你看看循环怎么跑的


IO口设置为1了,,,然后没有延迟,下个循环立马设置为0,,,0到1,,,瞬间变化,你看得到么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 01:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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