搜索
bottom↓
回复: 15

为什么此电路芯片输出,连0603的LED灯都点不亮?

[复制链接]

出0入0汤圆

发表于 2021-1-30 21:32:52 | 显示全部楼层 |阅读模式

我确定程序是好使的,可以串口打印字符。我在调试的时候,发现led灯珠碰在芯片输出管脚和GND之间都只能看见超级小的一亮一灭(我程序控制的1s亮灭),直接用的电路发现只有电源电路的指示灯很亮,其他3个LED灯是直接控制管脚输出电压亮不了的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2021-1-30 21:34:23 | 显示全部楼层
求各位大佬支招,我确实是找不出任何原因了,我第一次自己打板arduino,现在有点慌

出350入1925汤圆

发表于 2021-1-30 21:38:20 | 显示全部楼层
本帖最后由 cne53102 于 2021-1-30 21:44 编辑

上电后IO默认初始化为输入模式,如果楼主没有将IO设置为输出,就直接控制IO的话,那么实际开关的是IO内部的一个上拉电阻,阻值还挺大,就这效果。

#include <avr/io.h>
#include <util/delay.h>

#define LED PD3

int main(void){
    DDRD |= (1 << LED); //<-u need this!
    while (1) {
        PORTD |= (1 << LED);
        _delay_ms(500);
        PORTD &= ~(1 << LED);
        _delay_ms(500);
    }
    return (0);
}

出0入4汤圆

发表于 2021-1-30 21:45:03 | 显示全部楼层
看下是不是刚打开,又被哪里关掉了

出0入0汤圆

 楼主| 发表于 2021-1-30 21:45:05 | 显示全部楼层
void setup() {
        Serial.begin(115200);
}
void loop() {
        digitalWrite(3, HIGH);
        delay(1000);
        digitalWrite(3, LOW);
        delay(1000);
        digitalWrite(4, HIGH);
        delay(1000);
        digitalWrite(4, LOW);
        delay(1000);
        digitalWrite(5, HIGH);
        delay(1000);
        digitalWrite(5, LOW);
        delay(1000);
}这是我的3个LED灯的测试程序

出0入0汤圆

 楼主| 发表于 2021-1-30 21:47:45 | 显示全部楼层
laujc 发表于 2021-1-30 21:45
看下是不是刚打开,又被哪里关掉了

就是灯特别弱,不仔细看都看不见

出0入0汤圆

 楼主| 发表于 2021-1-30 21:48:33 | 显示全部楼层
cne53102 发表于 2021-1-30 21:38
上电后IO默认初始化为输入模式,如果楼主没有将IO设置为输出,就直接控制IO的话,那么实际开关的是IO内部的 ...

同样的程序,我放在arduino uno开发板上就特别亮

出0入4汤圆

发表于 2021-1-30 21:52:28 | 显示全部楼层
如果灯是亮的,可能就是输入/输出模式设置有问题
试着在亮灯前将IO设置为推挽

出350入1925汤圆

发表于 2021-1-30 21:53:19 | 显示全部楼层
yuguoyu123456 发表于 2021-1-30 21:48
同样的程序,我放在arduino uno开发板上就特别亮

那。。板子断电,万用表用测二极管档位测量LED看看亮不亮,确认下方向

出0入0汤圆

 楼主| 发表于 2021-1-30 21:57:34 | 显示全部楼层
cne53102 发表于 2021-1-30 21:53
那。。板子断电,万用表用测二极管档位测量LED看看亮不亮,确认下方向

二极管是对的,我的4个二极管方向相同,电源指示灯特别亮

出0入0汤圆

 楼主| 发表于 2021-1-30 22:13:34 | 显示全部楼层
我认为应该是LED没有配置输出模式,谢谢各位大佬,我马上去测试

出0入0汤圆

 楼主| 发表于 2021-1-30 22:42:20 | 显示全部楼层
谢谢大家,果然是配置问题,输出模式就行了

出0入0汤圆

发表于 2021-1-30 22:44:32 | 显示全部楼层
直接上程序就对了.

出200入2554汤圆

发表于 2021-1-30 22:49:08 | 显示全部楼层
yuguoyu123456 发表于 2021-1-30 22:42
谢谢大家,果然是配置问题,输出模式就行了

pinMode 都没调用,你跟我说程序没问题。

在 Arduino 当中这是基础吧

出0入0汤圆

 楼主| 发表于 2021-1-31 09:56:05 | 显示全部楼层
t3486784401 发表于 2021-1-30 22:49
pinMode 都没调用,你跟我说程序没问题。

在 Arduino 当中这是基础吧

谢谢指点

出0入59汤圆

发表于 2021-1-31 10:35:34 | 显示全部楼层
喜欢用Arduino的人很多都是没有专业电路基础的, 一般不怎么关注芯片的底层配置,也不怎么关注电路的细节。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-25 14:27

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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