電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 2304|回復: 0
收起左側(cè)

單片機C語言實例-14-花樣燈

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2021-11-24 11:49:24 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
單片機C語言實例-14-花樣燈

內(nèi)容:花樣燈一般有兩種方法實現(xiàn):
        1、程序循環(huán)執(zhí)行
        2、查表法
        這里我們兩種都使用一下
------------------------------------------------*/
#include<reg52.h>     //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義

/*------------------------------------------------
                  花樣表格
------------------------------------------------*/
unsigned char code seg[]={0x7f,0xbf,0xdf,0xef,
                                                  0xf7,0xfb,0xfd,0xfe,
                                                  0xff,0xff,0x00,0x00,
                                                  0x55,0x55,0xaa,0xaa
                                                  };//rom允許情況可以無限添加

void Delay(unsigned int t); //函數(shù)聲明
/*------------------------------------------------
                    主函數(shù)
------------------------------------------------*/
main()
{
unsigned char i;                //定義一個無符號字符型
                                                                 //局部變量 i 取值范圍 0~255
while(1)
      {
          P1=0xFE;                   //第1個LED亮
      for(i=0;i<8;i++)
             {
                 Delay(20000);
             P1 <<=1;
                 }

      P1=0x7F;                   //第8個LED亮
      for(i=0;i<8;i++)
             {
                 Delay(20000);
             P1 >>=1;
                 }

      P1=0xFE;                  //第1個LED亮
      for(i=0;i<8;i++)
             {
                 Delay(20000);
             P1 <<=1;
                 P1 |=0x01;
                 }

          P1=0x7F;                  //第8個LED亮
      for(i=0;i<8;i++)
             {
                 Delay(20000);
             P1 >>=1;
                 P1 |=0x80;
                 }
      //下面通過查表方法獲得花樣參數(shù)
      for(i=0;i<16;i++)//查表可以簡單的顯示各種花樣 實用性更強
             {
                 Delay(20000);
         P1=seg;
                 }
      }

}

/*------------------------------------------------
延時函數(shù),含有輸入?yún)?shù) unsigned int t,無返回值
unsigned int 是定義無符號整形變量,其值的范圍是
0~65535
------------------------------------------------*/
void Delay(unsigned int t)
{
while(--t);
}


更多詳情參考附件文檔

游客,如果您要查看本帖隱藏內(nèi)容請回復

回復

使用道具 舉報

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表