电子产业一站式赋能平台

PCB联盟网

搜索
查看: 1922|回复: 0
收起左侧

单片机C语言实例-300-用函数型指针控制P1口灯花样

[复制链接]
发表于 2022-3-23 16:00:47 | 显示全部楼层 |阅读模式
单片机C语言实例-300-用函数型指针控制P1口灯花样

//实例33:用函数型指针控制P1口灯花样
#include<reg51.h>   //包含51单片机寄存器定义的头文件
unsigned char code Tab[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
//流水灯控制码,该数组被定义为全局变量
/**************************************************************
函数功能:延时约150ms
**************************************************************/
void delay(void)   
{
   unsigned char m,n;
         for(m=0;m<200;m++)
          for(n=0;n<250;n++)          
           ;
}
/**************************************************************
函数功能:流水灯左移
**************************************************************/
void led_flow(void)
{
  unsigned char i;
  for(i=0;i<8;i++)  //8位控制码
    {
           P0=Tab;
                delay();
          }
       
}
/**************************************************************
函数功能:主函数
**************************************************************/
void main(void)
{
   void (*p)(void); //定义函数型指针,所指函数无参数,无返回值       
        p=led_flow;  //将函数的入口地址赋给函数型指针p
        while(1)
         (*p)();     //通过函数的指针p调用函数led_flow()
}


更多详情参考附件文档
+08:00C375联盟网3790.png
游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表