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

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

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

單片機C語言實例-300-用函數(shù)型指針控制P1口燈花樣

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-3-23 16:00:47 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
單片機C語言實例-300-用函數(shù)型指針控制P1口燈花樣

//實例33:用函數(shù)型指針控制P1口燈花樣
#include<reg51.h>   //包含51單片機寄存器定義的頭文件
unsigned char code Tab[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
//流水燈控制碼,該數(shù)組被定義為全局變量
/**************************************************************
函數(shù)功能:延時約150ms
**************************************************************/
void delay(void)   
{
   unsigned char m,n;
         for(m=0;m<200;m++)
          for(n=0;n<250;n++)          
           ;
}
/**************************************************************
函數(shù)功能:流水燈左移
**************************************************************/
void led_flow(void)
{
  unsigned char i;
  for(i=0;i<8;i++)  //8位控制碼
    {
           P0=Tab;
                delay();
          }
       
}
/**************************************************************
函數(shù)功能:主函數(shù)
**************************************************************/
void main(void)
{
   void (*p)(void); //定義函數(shù)型指針,所指函數(shù)無參數(shù),無返回值       
        p=led_flow;  //將函數(shù)的入口地址賦給函數(shù)型指針p
        while(1)
         (*p)();     //通過函數(shù)的指針p調(diào)用函數(shù)led_flow()
}


更多詳情參考附件文檔

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

回復(fù)

使用道具 舉報

發(fā)表回復(fù)

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

本版積分規(guī)則


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