OpenEdv-开源电子网

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

初始化led 并赋值为0,主函数未调用,为什么还会点亮?

[复制链接]

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2016-8-24
在线时间
20 小时
发表于 2016-9-13 10:02:30 | 显示全部楼层 |阅读模式
1金钱
见附件
在这里谢谢老司机的帮助!

实验8 定时器中断实验.zip

2.34 MB, 下载次数: 55

最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-6-22
在线时间
56 小时
发表于 2016-9-13 10:02:31 | 显示全部楼层
下一个定义 发表于 2016-9-13 15:23
GPIO_SetBits(GPIOB,~(GPIO_Pin_5));                                                 //PB.5 输出高

GPIO_SetBits(GPIOE,~(GPIO_Pin_5));                                          ...

把取反去掉试试看
回复

使用道具 举报

3

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-6-22
在线时间
56 小时
发表于 2016-9-13 10:09:28 | 显示全部楼层
你的定时器里面不是有led取反?
回复

使用道具 举报

2

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
981
金钱
981
注册时间
2015-9-20
在线时间
148 小时
发表于 2016-9-13 10:53:37 | 显示全部楼层
楼上讲的有道理。
回复

使用道具 举报

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2016-8-24
在线时间
20 小时
 楼主| 发表于 2016-9-13 14:45:27 | 显示全部楼层
下一个定义 发表于 2016-9-13 10:09
你的定时器里面不是有led取反?

不是两个led么   
一个我没做什么处理   
另一个是在定时器中,来一次中断让它取反一次
这个是闪烁的

第一个怎么是常亮?
回复

使用道具 举报

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2016-8-24
在线时间
20 小时
 楼主| 发表于 2016-9-13 14:45:46 | 显示全部楼层

不是两个led么   
一个我没做什么处理   
另一个是在定时器中,来一次中断让它取反一次
这个是闪烁的

第一个怎么是常亮?
回复

使用道具 举报

70

主题

6761

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13102
金钱
13102
注册时间
2012-11-26
在线时间
3811 小时
发表于 2016-9-13 15:18:22 | 显示全部楼层
你何时赋值为0了? 没看到相关语句
回复

使用道具 举报

2

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
981
金钱
981
注册时间
2015-9-20
在线时间
148 小时
发表于 2016-9-13 15:18:56 | 显示全部楼层
你确定你初始化函数在主函数里面么有调用???
回复

使用道具 举报

2

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
981
金钱
981
注册时间
2015-9-20
在线时间
148 小时
发表于 2016-9-13 15:23:18 | 显示全部楼层
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "timer.h"
//ALIENTEKÕ½½¢STM32¿a·¢°åêμÑé8
//¶¨ê±Æ÷ÖD¶ÏêμÑé  
//¼¼êõÖ§3Ö£owww.openedv.com
//1ãÖYêDDÇòíμç×ó¿Æ¼¼óDÏT1«Ë¾
       
int main(void)
{               

        delay_init();                     //Ñóê±oˉêy3õê¼»ˉ          
        NVIC_Configuration();          //éèÖÃNVICÖD¶Ï·Ö×é2:2λÇàÕ¼óÅÏè¼¶£¬2λÏìó|óÅÏè¼¶
        uart_init(9600);         //′®¿ú3õê¼»ˉÎa9600
        LED_Init();                             //LED¶Ë¿ú3õê¼»ˉ
        TIM3_Int_Init(4999,7199);//10KhzμļÆêyÆμÂ꣬¼Æêyμ½5000Îa500ms  
           while(1)
        {
                TIM_Cmd(TIM3, ENABLE);
                delay_ms(500);
                TIM_Cmd(TIM3, DISABLE);
                //LED0=!LED0;
                //delay_ms(200);                  
        }         


}         
回复

使用道具 举报

3

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
197
金钱
197
注册时间
2016-6-22
在线时间
56 小时
发表于 2016-9-13 15:23:22 | 显示全部楼层
让你伤心的人 发表于 2016-9-13 14:45
不是两个led么   
一个我没做什么处理   
另一个是在定时器中,来一次中断让它取反一次

GPIO_SetBits(GPIOB,~(GPIO_Pin_5));                                                 //PB.5 输出高

GPIO_SetBits(GPIOE,~(GPIO_Pin_5));                                                  //PE.5 输出高

你的程序有两个取反看看是不是这里的出了问题  ~(GPIO_Pin_5)
回复

使用道具 举报

2

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
981
金钱
981
注册时间
2015-9-20
在线时间
148 小时
发表于 2016-9-13 15:24:53 | 显示全部楼层
你的主函数里面明明初始化了LED,好像用的是战舰板子,PE.5,PB.5都是输出高电平的,你怎么说没有调用?
回复

使用道具 举报

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2016-8-24
在线时间
20 小时
 楼主| 发表于 2016-9-13 16:32:34 | 显示全部楼层
杏帘在望 发表于 2016-9-13 15:24
你的主函数里面明明初始化了LED,好像用的是战舰板子,PE.5,PB.5都是输出高电平的,你怎么说没有调用?

我用的不是战舰板子   我用的是其他板子   
刚好与战舰的发光二极管接法相反
发光二极管的阳极与单片机相连
回复

使用道具 举报

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2016-8-24
在线时间
20 小时
 楼主| 发表于 2016-9-13 16:34:37 | 显示全部楼层
杏帘在望 发表于 2016-9-13 15:23
#include "led.h"
#include "delay.h"
#include "key.h"

初始化  看如下说明:
我用的不是战舰板子   我用的是其他板子   
刚好与战舰的发光二极管接法相反
发光二极管的阳极与单片机相连
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-25 16:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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