专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
51单片机
五一快乐,32*64点阵出炉了,搞个万年历,上实物图和程序!
2020-01-20 19:03
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
51单片机
9979
16
16
这是从网上看到的一个二手屏买来的(双 {MOD}5MM),去年3月份放到现在才把它点亮,卖我屏的老板真是够贱的(也是搞电子电工技术的,真给我们搞技术的人丢脸,这么差的德行),到现在我才知道,唉!这是这个人的QQ:魔方电工NPN (281120832)广东-肇庆的,大家小心,不要在上当了,当时说有时钟程序我才买的,结果买来没有时间钟程序,只给了我一个测试程序,因为不是淘宝交易的,所以我把他没有办法,后来没人法按照接口接上,可以显示,测试成功!然后我就放在家里一直没有动,前几天没有事,又拿出来搞搞,我自己写了现在的程序进去,发现原来红 {MOD}的没有问题,绿 {MOD}的的部分竟然有几十个点都不亮,当时我的心情,唉,大家想想!无语,后来查了一下,发现LED是好的,主要是板上的595驱动IC坏了的,无语,因为当时他的测试程序只是测试的红 {MOD},我的个娘呢!!好像阿莫里面的人都喜欢公开,我也公开能公开的,只有实物图和程序,原理图没有,我是自己拿着万用表测了两个小时,才搞清楚它的连接关系的,只能意会,不能言传,说也说不清楚!声明,C我是自学的,而且很浅,深的也不会!所以程序写的就叫一个烂!用STC12C5A60S2驱动的,加上DS1302和DS18B20
(原文件名:imm_2011_05_01_09_29_27_687.JPG)
(原文件名:imm_2011_05_01_09_29_28_468.JPG)
(原文件名:imm_2011_05_01_09_29_28_921.JPG)
(原文件名:imm_2011_05_01_09_29_30_156.JPG)
(原文件名:imm_2011_05_01_09_29_32_312.JPG)
(原文件名:imm_2011_05_01_09_29_38_984.JPG)
(原文件名:imm_2011_05_01_09_29_40_250.JPG)
(原文件名:imm_2011_05_01_09_29_42_718.JPG)
(原文件名:imm_2011_05_01_09_29_52_921.JPG)
(原文件名:imm_2011_05_01_09_31_48_15.JPG)
(原文件名:imm_2011_05_01_09_32_16_875.JPG)
(原文件名:imm_2011_05_01_09_33_27_906.JPG)
(原文件名:imm_2011_05_01_09_33_45_500.JPG)
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
xiayu9213
1楼-- · 2020-01-21 16:52
这个屏 我 买来才35元 不过在下不会程序,谢谢楼主分享程序!不过好像下不了哦!
加载中...
xiayu9213
2楼-- · 2020-01-21 21:01
精彩回答 2 元偷偷看……
加载中...
llh1234
3楼-- · 2020-01-22 01:32
mark
加载中...
moyuqing
4楼-- · 2020-01-22 02:29
回复【楼主位】atgfpeyv 董 董
-----------------------------------------------------------------------
楼主,你好!我们现在做16*32的点阵汉字移动,但我们的程序出了点问题,有时间的话可以帮我们看看吗?非常感谢!
原理图
ourdev_636502MXCY5H.pdf(文件大小:63K)
(原文件名:LED点阵显示.pdf)
程序
ourdev_636503BWPBU1.rar(文件大小:38K)
(原文件名:点阵汉字移动.rar)
加载中...
莫明霖
5楼-- · 2020-01-22 08:15
楼主,你好!我现在做一个16*16的点阵汉字显示,但我的程序出了点问题,就是有些字显示正常,而一些字就会有一两横出现乱码,不知道这是怎么回事呀?急要请楼主帮忙解惑。谢谢!!!
以下是程序的代码:
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit shcp=P0^0; //移位时钟脉冲
//串行数据输入
sbit ds2=P0^3;
sbit ds3=P0^4;
sbit stcp=P0^2; //输出锁存器
uchar temp[];
uchar temp[4]={0,0,0,0};
const uchar tab2[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};
uchar code tab0[]={/*-- 文字: 众 --*/
/*-- 新宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x80,0x00,0x80,0x00,0x40,0x01,0x20,0x02,0x10,0x04,0x08,0x08,0x14,0x14,0x13,0x64,
0x10,0x04,0x10,0x04,0x10,0x04,0x28,0x0A,0x48,0x0A,0x44,0x11,0x82,0x20,0x41,0x40,
};
void delay1(int ms)
{
int k;
while(ms--)
{
for(k=0; k<20; k++)
{
_nop_();
}
}
}
oid wr_5951(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{
dat=dat<<1;
ds2=CY;
shcp=1;
_nop_();
_nop_();
shcp=0;
}
}
void wr_5952(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{
dat=dat>>1;
ds3=CY;
shcp=1;
_nop_();
_nop_();
shcp=0;
}
}
void OUT_595()//将移位寄存器内的数据锁存到输出寄存器并显示
{
stcp=0;
_nop_();
_nop_();
stcp=1; //上升沿将数据送到输出锁存器
_nop_();
_nop_();
stcp=0;
delay1(3);
}
void main()
{
uchar i,j,t=0,p,q,m=0,k=0;
while(1)
{
for(j=0;j<15;j++)
for(i=0;i<32;i++)
{
P1=tab2[t];
temp[1]=tab0[i];
wr_5951(temp[1]);
OUT_595();
delay1(1);
i++;
temp[0]=tab0[i];
wr_5952(temp[0]);
OUT_595();
delay1(1);
t++;
if(t==16) t=0;
P1=0xff;
}
}
}
加载中...
lxa0
6楼-- · 2020-01-22 11:32
那红颜 {MOD} 太扎眼啦~~~~~~~~~~~~~~~
加载中...
上一页
1
2
3
下一页
一周热门
更多
>
相关问题
【东软载波ESF0654 PDS开发板活动】开箱
1 个回答
东软载波ESF0654 PDS开发板外部中断
1 个回答
东软载波ESF0654 PDS开发板高级控制定时器AD16C4T
1 个回答
用串口调试助手为什么只能在hex模式接收发送而在文本模式不行
9 个回答
触摸芯片SC02B/SC04B在地砖灯的设计方案
1 个回答
东软载波ESF0654 PDS开发板串口USART0代码分享
1 个回答
普通32位单片机使用linux的应用代码
5 个回答
东软载波ESF0654 PDS开发板AT24C04的调试
9 个回答
相关文章
51单片机与蓝牙模块连接
0个评论
51单片机的硬件结构
0个评论
基于51单片机的无线遥控器制作
0个评论
51单片机 AD转换
0个评论
51单片机数码管递增显示
0个评论
如何实现对单片机寄存器的访问
0个评论
基于51单片机的指纹密码锁
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
51单片机
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
-----------------------------------------------------------------------
楼主,你好!我们现在做16*32的点阵汉字移动,但我们的程序出了点问题,有时间的话可以帮我们看看吗?非常感谢!
原理图ourdev_636502MXCY5H.pdf(文件大小:63K) (原文件名:LED点阵显示.pdf)
程序ourdev_636503BWPBU1.rar(文件大小:38K) (原文件名:点阵汉字移动.rar)
以下是程序的代码:
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit shcp=P0^0; //移位时钟脉冲
//串行数据输入
sbit ds2=P0^3;
sbit ds3=P0^4;
sbit stcp=P0^2; //输出锁存器
uchar temp[];
uchar temp[4]={0,0,0,0};
const uchar tab2[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};
uchar code tab0[]={/*-- 文字: 众 --*/
/*-- 新宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x80,0x00,0x80,0x00,0x40,0x01,0x20,0x02,0x10,0x04,0x08,0x08,0x14,0x14,0x13,0x64,
0x10,0x04,0x10,0x04,0x10,0x04,0x28,0x0A,0x48,0x0A,0x44,0x11,0x82,0x20,0x41,0x40,
};
void delay1(int ms)
{
int k;
while(ms--)
{
for(k=0; k<20; k++)
{
_nop_();
}
}
}
oid wr_5951(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{
dat=dat<<1;
ds2=CY;
shcp=1;
_nop_();
_nop_();
shcp=0;
}
}
void wr_5952(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{
dat=dat>>1;
ds3=CY;
shcp=1;
_nop_();
_nop_();
shcp=0;
}
}
void OUT_595()//将移位寄存器内的数据锁存到输出寄存器并显示
{
stcp=0;
_nop_();
_nop_();
stcp=1; //上升沿将数据送到输出锁存器
_nop_();
_nop_();
stcp=0;
delay1(3);
}
void main()
{
uchar i,j,t=0,p,q,m=0,k=0;
while(1)
{
for(j=0;j<15;j++)
for(i=0;i<32;i++)
{
P1=tab2[t];
temp[1]=tab0[i];
wr_5951(temp[1]);
OUT_595();
delay1(1);
i++;
temp[0]=tab0[i];
wr_5952(temp[0]);
OUT_595();
delay1(1);
t++;
if(t==16) t=0;
P1=0xff;
}
}
}
一周热门 更多>