搜索
bottom↓
回复: 2

LED点阵显示屏的程序问题

[复制链接]

出0入0汤圆

发表于 2013-6-6 22:59:55 | 显示全部楼层 |阅读模式
LED屏显示问题,本人学生,有些不懂,有前辈指教
#include "reg51.h"

#define OutByte()          RCK = 0;RCK = 1
sbit A1 = P1^1;
sbit B1 = P1^2;
sbit SER = P1^6;
sbit SCK = P1^4;
sbit RCK = P1^5;

unsigned char code Z[128] = {
/*天   CCCEC */
0x00,0x00,0x3F,0xFC,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x7F,0xFE,0x01,0x00,
0x01,0x00,0x02,0x80,0x02,0x40,0x04,0x20,
0x08,0x18,0x10,0x0E,0x20,0x04,0x40,0x00,

/*下   CCFC2 */
0x00,0x04,0x7F,0xFE,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0xC0,0x01,0x60,0x01,0x30,
0x01,0x20,0x01,0x00,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x01,0x00,0x00,0x00,

/*无   CCEDE */
0x00,0x00,0x3F,0xFC,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x7F,0xFE,0x01,0x80,
0x02,0x80,0x02,0x80,0x04,0x80,0x08,0x80,
0x10,0x82,0x20,0x82,0xC0,0x7E,0x00,0x00,

/*敌   CB5D0 */
0x00,0x40,0x0E,0x60,0x70,0x40,0x10,0x40,
0x10,0x7E,0xFE,0x88,0x10,0x88,0x10,0x88,
0x11,0x88,0x7E,0x50,0x42,0x50,0x42,0x20,
0x42,0x20,0x7E,0x50,0x01,0x8E,0x06,0x04

};

/*
void OutByte()
{
        RCK = 0;
        RCK = 1;
}         */

void DelayMs(int ms)
{
        int i,j;
        for(i=0;i<ms;i++)
        {
                for(j=0;j<100;j++);
        }
}

void LineScan(char line)
{
        switch(line)
        {
                case 0:A1 = 0;B1 = 0;
                break;
                case 1:A1 = 1;B1 = 0;
                break;
                case 2:A1 = 0;B1 = 1;
                break;
                case 3:A1 = 1;B1 = 1;
                break;
                default:
                break;
        }
}

void SendByte(char byte)
{
        char i;
        for(i = 0;i<8;i++)
        {
                if(byte & 0x01)SER = 1;         //1000_0000
                else SER = 0;
                byte = byte >> 1;
                SCK = 0;         
                SCK = 1;         //数据提前2指令周期准备好       
        }
}

void main(void)
{
        char i,j,k;       
        while(1)
        {
                        for(k=0;k<=3;k++)
                        {
                                for(j=7;j>=0;j--)
                                {
                                        for(i=3;i>=0;i--)
                                                SendByte(~Z[i*8+k*2+(j/2)*32+j%2]);                                             //为什么我总是显示不了4个子呢?J的方程怎么改怎么计算的呢?如何才能显示出4个字呀
                                }
                        LineScan(k);
                        OutByte();
                        DelayMs(3);
                        }
               
                               
        }       
}

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

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2013-6-6 23:24:32 | 显示全部楼层
物理连接没给,屏参数不知,控制方式不明,代码结构不清,该怎么看啊...

出0入0汤圆

发表于 2013-8-17 14:54:51 | 显示全部楼层
据推断,应该是个16*64的单色屏,仅此而已
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-7-23 16:14

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

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