找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2158|回复: 7
收起左侧

16X16点阵式的小蛮腰单片机程序,设置全亮怎么只亮了一半,另一半微亮

[复制链接]
ID:428713 发表于 2019-3-17 18:37 | 显示全部楼层 |阅读模式
16X16点阵式的小蛮腰电路原理图如下:
微信图片_20190317183551.jpg

设置全亮怎么只亮了一半,另一半只有非常微弱的光。

单片机源程序:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit C1=P2^0;
sbit C2=P2^1;
sbit S1=P2^2;
sbit S2=P2^3;

void delayms(uint);
void main()
{
        while(1)
        {
                C1=1;
                P0=0xff;
                C1=0;

                C2=1;
                P0=0xff;
                C2=0;

                S1=1;
                P1=0x00;
                S1=0;

                S2=1;
                P1=0x00;
                S2=0;

                        
        }
        
}
void delayms(uint xms)
{
        uint i,j;
        for(i=xms;i>0;i--)
                for(j=110;j>0;j--);
}

回复

使用道具 举报

ID:428713 发表于 2019-3-18 09:44 来自手机 | 显示全部楼层
原理图不是这个,类似而已,共阴的通过锁存器接入P1口,共阳通过锁存器接入P0口了
回复

使用道具 举报

ID:491577 发表于 2019-3-18 11:06 | 显示全部楼层
只要是亮了,包括微亮,就证明单片机程序正常,是你的led驱动电路有问题,认真检查电路。J1-J16需要小电流,J17-J32需要大电流,你接错了。
回复

使用道具 举报

ID:428713 发表于 2019-3-18 17:15 来自手机 | 显示全部楼层
hhh402 发表于 2019-3-18 11:06
只要是亮了,包括微亮,就证明单片机程序正常,是你的led驱动电路有问题,认真检查电路。J1-J16需要小电流 ...

那为什么一半正常亮呢?给J1-J16加上电阻这样可以吗
回复

使用道具 举报

ID:491577 发表于 2019-3-19 00:03 | 显示全部楼层
一半亮正好说明最大可能是有一个573有问题,573一个口带16个led电流太大烧了。573一个脚20ma电流可以带动16个led吗?烧了是迟早的事。
回复

使用道具 举报

ID:493746 发表于 2019-3-19 10:06 | 显示全部楼层
驱动能力不足,把573烧了
回复

使用道具 举报

ID:481641 发表于 2019-4-1 13:53 | 显示全部楼层
可能电不够
回复

使用道具 举报

ID:66679 发表于 2019-4-1 16:31 | 显示全部楼层
不亮说明电流不够,应该是电路问题,不是程序问题。仔细检查电路有没有接错。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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