找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3438|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)心形燈仿真源碼,四五種效果

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:396671 發(fā)表于 2018-10-14 14:44 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
心形燈,四五種效果仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)



#include <REG52.H>    //包含51頭文件
#include <intrins.h> //使用左移右移頭文件
#define uint unsigned int
#define uchar unsigned char //宏定義

void delay_ms(uint x)    //毫秒級(jí)延時(shí)函數(shù)
{
    uint y;
    for(;x>0;x--)
    for(y=110;y>0;y--);   
}

void main()    //主函數(shù)
{
    uchar i,aa;
    uint k;
    while(1)
    {
//-------------順時(shí)針流動(dòng)2次------------//   
        for(k=0;k<2;k++)   
        {
            aa=0xFE;
            for(i=0;i<8;i++)
            {
                P0=aa;
                aa=_crol_(aa,1); //crol是左移
                delay_ms(100);
            }
            P0=0xFF;
            aa=0xFE;
            for(i=0;i<8;i++)
            {
                P2=aa;
                aa=_crol_(aa,1);
                delay_ms(100);
            }
            P2=0xFF;
            aa=0xFE;
            for(i=0;i<8;i++)
            {
                P3=aa;
                aa=_crol_(aa,1);
                delay_ms(100);
            }
            P3=0xFF;
            aa=0xFE;
            for(i=0;i<8;i++)
            {
                P1=aa;
                aa=_crol_(aa,1);
                delay_ms(100);
            }
            aa=P1=0xFF;
        }
        P0=~0x00;
        P1=~0x00;
        P2=~0x00;
        P3=~0x00; //與P3=0xFF;相同
        delay_ms(500);
   
    //----------------逆時(shí)針流動(dòng)2次--------------//
        for(k=0;k<2;k++)   
        {
            for(i=0;i<8;i++)
            {
                P1=~(0x80>>i);
                delay_ms(100);
            }
            P1=0xFF;
            for(i=0;i<8;i++)
            {
                P3=~(0x80>>i);
                delay_ms(100);
            }
            P3=0xFF;
            for(i=0;i<8;i++)
            {
                P2=~(0x80>>i);
                delay_ms(100);
            }
            P2=0xFF;
            for(i=0;i<8;i++)
            {
                P0=~(0x80>>i);
                delay_ms(100);
            }
            P0=0xFF;
        }
        P0=~0x00;
        P1=~0x00;
        P2=~0x00;
        P3=~0x00;
        delay_ms(500);
   
    //---------------------上到下畫愛心--------------//   
        for(k=0;k<2;k++)
        {
            for(i=0;i<8;i++)
            {
                P0=~(0x01<<i);
                P1=~(0x80>>i);
                delay_ms(100);
            }
            P1=0xFF;
            P0=0xFF;
            for(i=0;i<8;i++)
            {
                P2=~(0x01<<i);
                P3=~(0x80>>i);
                delay_ms(100);
            }
            P3=0xFF;
            P2=0xFF;   
        }
        P0=~0x00;
        P1=~0x00;
        P2=~0x00;
        P3=~0x00;
        delay_ms(500);
   
    //----------------下到上畫愛心---------------//
        for(k=0;k<2;k++)     
        {
            for(i=0;i<8;i++)
            {
                P3=~(0x01<<i);
                P2=~(0x80>>i);
                delay_ms(100);
            }
            P2=0xFF;
            P3=0xFF;
            for(i=0;i<8;i++)
            {
                P1=~(0x01<<i);
                P0=~(0x80>>i);
                delay_ms(100);
            }
            P1=0xFF;
            P0=0xFF;   
        }   
        P0=~0x00;
        P1=~0x00;
        P2=~0x00;
        P3=~0x00;
        delay_ms(500);

//-----------------循環(huán)5次閃爍---------------//
        for(k=0;k<5;k++)
        {
            P0=0x00;
            P1=0x00;
            P2=0x00;
            P3=0x00;
            delay_ms(500);
            P0=~0x00;
            P1=~0x00;
            P2=~0x00;
            P3=~0x00;    //與P3=0xFF一樣
            delay_ms(500);
        }
    }
}

心形燈.zip

77.89 KB, 下載次數(shù): 45, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表