找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 868|回复: 7
打印 上一主题 下一主题
收起左侧

基于51单片机16X32LED点阵显示屏模拟LED闪烁

[复制链接]
跳转到指定楼层
楼主
本帖最后由 hinata_aoi 于 2022-6-6 14:35 编辑

运行该程序时,LED数码管一直闪烁,多次尝试修改delay函数后无效,辛苦大家看一下这个是什么情况
源程序:
#include <reg51.h>

#define uchar unsigned char  
#define uint unsigned int

#define  SPEED   1

sbit DS=P2^0;        
sbit ST=P2^2;           
sbit SH=P2^1;         

uchar code table1[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

0x01,0x21,0x22,0x22,0x24,0x28,0x30,0xFF,0x30,0x28,0x24,0x22,0x22,0x21,0x01,0x00,
0x08,0x06,0x40,0x30,0x03,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x00,0x00,
0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x00,
0x02,0x0C,0x88,0x69,0x09,0x09,0x89,0x69,0x09,0x09,0x19,0x28,0xC8,0x0A,0x0C,0x00,
0x00,0x7F,0x44,0x5A,0x61,0x08,0x30,0x24,0x24,0xA4,0x64,0x24,0x24,0x28,0x30,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};


uchar code table2[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

0x10,0x10,0x10,0x10,0x90,0x92,0x91,0x9E,0xB0,0xD0,0x90,0x10,0x10,0x10,0x10,0x00,
0x20,0x20,0x3E,0xC0,0x04,0x04,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0x04,0x04,0x00,
0x04,0x04,0x04,0x04,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
0x20,0x20,0x20,0x20,0x20,0x22,0x21,0x7E,0x60,0xA0,0x20,0x20,0x20,0x20,0x20,0x00,
0x00,0xFF,0x20,0x10,0xE0,0x01,0x82,0x8C,0xF0,0x80,0x80,0xFC,0x82,0x82,0x8E,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

void senddata(uchar,uchar,uchar,uchar);
void delay(uint);

void main()
{
        uchar        i,j,k,m,n=0;
        while(1)
        {
                 for(i=0;i<112;i++
                {
                        for(j=0;j<SPEED;j++)  
                        {
                                for(k=0;k<16;k++
                                {
                                        m=i+k;
                                        P1=k;                                       
                                        senddata(table1[m+16],table2[m+16],table1[m],table2[m]);
                                        delay(100);
                                          senddata(0,0,0,0);
                                }
                        }
                }
        }

}
void senddata(uchar m,uchar n, uchar m1, uchar n1)
{
        uchar i;
        ST=0;
        for(i=0;i<32;i++)  
        {
                SH=0;
                if(i<8) {                                         
                          DS=0X80&(m<<i);           
                } else if(i>=8 && i<16) {
                        DS=0X80&(n<<(i-8));
                } else if(i>=16 && i<24) {
                        DS=0X80&(m1<<(i-16));
                } else if(i>=24 && i<32) {
                        DS=0X80&(n1<<(i-24));
                }
                                          
                SH=1;        
        }
        ST=1;
}

void delay(uint m)
{
        uint j;
        for(j=m;j>0;j--);
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1031287 发表于 2022-6-6 14:54 | 只看该作者
电路图

51hei截图20220606145335825.jpg (244.46 KB, 下载次数: 15)

51hei截图20220606145335825.jpg
回复

使用道具 举报

板凳
ID:390416 发表于 2022-6-6 15:39 | 只看该作者
http://www.51hei.com/bbs/dpj-209810-1.html  STC89单片机点阵万年历DS3231代码和PCB分享
回复

使用道具 举报

地板
ID:390416 发表于 2022-6-6 15:39 | 只看该作者
STC8单片机+DS1302+DS18B20+74HC595的LED16x32点阵温度万年历源代码分享 http://www.51hei.com/bbs/dpj-200968-1.html
回复

使用道具 举报

5#
ID:624769 发表于 2022-6-6 15:47 | 只看该作者
如果你用的是 51, 8951 的话,不用延时,应该就不闪了, 或者把延时函数的  uint m   和  uint j  都改成 char 应该也不闪了。
回复

使用道具 举报

6#
ID:1031287 发表于 2022-6-7 18:50 | 只看该作者
188610329 发表于 2022-6-6 15:47
如果你用的是 51, 8951 的话,不用延时,应该就不闪了, 或者把延时函数的  uint m   和  uint j  都改成 ch ...

已经修改,但是没有效果,依然闪烁
回复

使用道具 举报

7#
ID:1031287 发表于 2022-6-7 21:02 | 只看该作者
人人学会单片机 发表于 2022-6-6 15:39
STC8单片机+DS1302+DS18B20+74HC595的LED16x32点阵温度万年历源代码分享 http://www.51hei.com/bbs/dpj-200 ...

我这个程序具体哪里有问题呢,求指教
回复

使用道具 举报

8#
ID:329625 发表于 2022-6-8 19:50 | 只看该作者
你可以参考一下B站小邓子分享官的视频,应该是基本相同的,不会发生闪烁
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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