嵌入式 利用宏来封装函数示例

root@u12d32:/home/kongjun/work/board/char_drive/led_light_drive# cat
joseph_light.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void joseph_system(char *addr,char *value)
{
 char buf[64] = {0};
 memset(buf,0,64);
 sprintf(buf,"himm %s %s",addr,value);
 system(buf);
}

#define JOSEPH_LIGHT_CTL(addr,value) {joseph_system(addr,value);}

int main(int argc,char **argv)
{
 if(argc != 2)
 {
  printf("The param is Two !\n");
  return -1;
 }
 int light_status = 0;
 light_status = atoi(argv[1]);

 switch(light_status)
 {
  case 0:
   {
    JOSEPH_LIGHT_CTL("0x200f009c","0x00000001");
    JOSEPH_LIGHT_CTL("0x201A0400","0x00000080");
    JOSEPH_LIGHT_CTL("0x201A03FC","0x00000000");
    break;
   }
  case 1:
   {
    JOSEPH_LIGHT_CTL("0x200f009c","0x00000000");
    JOSEPH_LIGHT_CTL("0x201A0400","0x00000080");
    JOSEPH_LIGHT_CTL("0x201A03FC","0x00000000");
    break;
   }

  default:
   break;
 }
 return 0;
}
root@u12d32:/home/kongjun/work/board/char_drive/led_light_drive#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值