找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Proteus仿真stm32点亮led灯,灯的两端有高低电平转换显示,可是不亮?暂停却亮了

查看数: 4215 | 评论数: 11 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-5-1 09:57

正文摘要:

求助,仿真32点灯的时候,灯的两端都会有高低电平转换显示,可是却不亮,我加了电阻,还是不亮。意外的发现只有当暂停演示的时候,led会亮 int main(void) {             ...

回复

ID:1023077 发表于 2022-5-4 09:37
谢谢各位贴友的帮助,问题已解决,是延时函数的问题,
ID:1023077 发表于 2022-5-4 09:35
yzpine 发表于 2022-5-2 20:52
是让你上传MDK和PROteus工程文件哎

谢谢哈,我解决了,应该是系统晶振频率的问题,我代码里面用的是正点原子72MHZ的延时函数,在Proteus仿真里面系统晶振频率是8MHZ。于是我没有用正点原子自带的延时函数,而是重新写了一个。
ID:493026 发表于 2022-5-2 20:52
看雪success 发表于 2022-5-2 11:34
在头文件里定义了

#ifndef __LED_H

是让你上传MDK和PROteus工程文件哎
ID:1023077 发表于 2022-5-2 11:35

嗯嗯,第二章图是暂停的时候
ID:1023077 发表于 2022-5-2 11:34
yzpine 发表于 2022-5-1 16:44
LED0=1;
LED1=1;
缺这两个的宏定义

在头文件里定义了

#ifndef __LED_H
#define __LED_H         
#include "sys.h"

#define LED0 PBout(5)// PB5
#define LED1 PAout(5)// PE5       

void LED_Init(void);//初始化

                                                     
#endif
ID:1023077 发表于 2022-5-2 11:33
yzpine 发表于 2022-5-2 08:41
楼主最好上传完整程序和原理图,这样才好帮你调

下面是led.h
#ifndef __LED_H
#define __LED_H         
#include "sys.h"

#define LED0 PBout(5)// PB5
#define LED1 PAout(5)// PE5       

void LED_Init(void);//初始化

                                                     
#endif


原理图上面就是完整的。
ID:493026 发表于 2022-5-2 08:41
楼主最好上传完整程序和原理图,这样才好帮你调
ID:677275 发表于 2022-5-1 18:00
暂停时那是亮嘛
ID:824490 发表于 2022-5-1 17:02
贴上完整代码或整天个工程?
ID:493026 发表于 2022-5-1 16:44
LED0=1;
LED1=1;
缺这两个的宏定义
ID:1023077 发表于 2022-5-1 10:11
我改变延时时间加到3s的话,电平转换频率还是一样的,求助大佬们

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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