51单片机8x8点阵爱心

STC89C51单片机点亮8x8点阵

#include <REGX51.H>
//延时n毫秒12mHz
void delay(unsigned int n)
{
    unsigned int i=0,j=0;
    for(i=0;i<n;i++)
        for(j=0;j<123;j++);
}
//传递参数
void send(int num)
{
    P0 = 0x7f;  //y
    P1 = 0xff;  //x
    switch(num)
    {
        case 0:
            P0=(0x01<<0);
            P1=0xe7;
            break;
        case 1:
            P0=(0x01<<1);
            P1=0xc3;
            break;
        case 2:
            P0=(0x01<<2);
            P1=0x81;
            break;
        case 3:
            P0=(0x01<<3);
            P1=0x00;
            break;
        case 4:
            P0=(0x01<<4);
            P1=0x00;
            break;
        case 5:
            P0=(0x01<<5);
            P1=0x81;
            break;
        case 6:
            P0=(0x01<<6);
            P1=0xdb;
            break;
        case 7:
            P0=(0x01<<7);
            break;
    }
}

void main()
{
    while(1)
    {   
        unsigned int i;
        for(i=0;i<8;i++)
        {
                        //循环传递参数
            send(i);    // x,y
            delay(1);
        }
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容