微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求光立方全亮的简单程序

求光立方全亮的简单程序

时间:10-02 整理:3721RD 点击:
如何才能使光立方全亮呢?用的是74hc573、uln2803锁存器跟51单片机

电路都没有,怎么怎知道你

上图。。

我也不懂写,,,嘻嘻嘻

用动态点亮,我的是逐层的动态扫面,建议用定时器中断函数来做扫描,静态点亮,硬件电路的驱动能力恐怕不够,这是我用延时子函数写的全亮程序,试试看
#include<reg52.h>                //51头文件
#define uint unsigned int                //宏定义
#define uchar unsigned char                //宏定义
uchar nubm;                                                //定义数组变量
uchar code table[]={                                //数组,将数依次赋值给ULN2803,进行逐层点亮
0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80//八个数分别点亮每一层
};
void delay(uint z)                        //延时子函数
{       
        uint x,y;
        for(x=z;x>0;x--)
                for(y=80;y>0;y--);
}
void main()                        //主函数
{
        nubm=0;                       
        P2=0xff;                //打开573锁存器
        P0=0xff;                //给573锁存器输入口高电平
        P2=0x00;                //关闭573
        while(1)                        //大循环
        {
                P1=table[nubm];                        //给2803输入数组的数
                nubm++;                               
                delay(1);                        //延时子函数扫描
                if(nubm==8)                //数组只有8个数,八个数赋值完毕后,nubm清零
                        nubm=0;//nubm清零
        }
}
                //~~~^_^~~~墨玉麒麟 瑍~^_^~~~  

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top