电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>C语言|源代码>C语言控制的各种功能子程序(闪烁/延迟/防弹跳)

C语言控制的各种功能子程序(闪烁/延迟/防弹跳)

2017-09-05 | rar | 0.1 MB | 次下载 | 免费

资料介绍

#define LED P1   // 定义LED接至Port 1
void debouncer(void);  // 声明防弹跳函数 
void delay10ms(int);  // 声明10毫秒延迟函数 
void alter(int);   // 声明交互闪烁函数 
void left(int);   // 声明单灯左移函数 
void right(int);   // 声明单灯右移函数 
void pili(int);    // 声明霹雳灯函数 
void flash(int);   // 声明闪烁函数 
//==自己写的子程序========================
/* 防弹跳函数函数,延迟约20ms */
void debouncer(void) // 防弹跳函数开始 
{ delay10ms(2);  // 延迟约20ms 
}      // 防弹跳函数结束 
/* 延迟函数开始,延迟约x 10ms */
void delay10ms(int x) // 延迟函数开始 
{ int i,j;   // 声明整数变量i,j
 for (i=0;i   for (j=0;j<1200;j++); // 计数1200次,延迟约10ms 
}     // 延迟函数结束 
/* 高低位元交互闪烁函数,执行x次 */
void alter(int x)   // 高低位元交互闪烁函数开始
{ int i;    // 声明变量i
 LED=0x0f;   // 初始状态(高位元亮,低位元灭)
 for(i=0;i<2*x-1;i++)// i变量for循环执行2x-1次  
 { delay10ms(50); // 延迟50*10m=0.5s
  LED=~LED;  // LED反相输出 
 }     // i变量for循环结束 
 delay10ms(50);  // 延迟50 10m=0.5s   
}      // 高低位元交互闪烁函数结束 
/* 全灯闪烁函数,执行x次 */
void flash(int x)   // 全灯闪烁函数开始
{ int i;    // 声明变量i
 LED=0x00;   // 初始状态(全亮)
 for(i=0;i<2*x-1;i++)// i变量for循环执行2x-1次 
 { delay10ms(50); // 延迟50 10m=0.5s
  LED=~LED;  // P0反相输出
 }     // i变量for循环结束 
 delay10ms(50);  // 延迟50 10m=0.5s 
}      // 全灯闪烁函数结束 
/* 单灯左移函数,执行x圈 */
void left(int x)   // 单灯左移函数开始
{ int i, j;   // 声明变量i,j
 for(i=0;i  { LED=0xfe;  // 初始状态=1111 1110
  for(j=0;j<7;j++)// j循环,左移7次 
  { delay10ms(25); // 延迟25 10m=0.25s
   LED=(LED<<1)|0x01; // 左移1位後,LSB设为1
  }    // j循环结束  
  delay10ms(25); // 延迟25 10m=0.25s
 }     // i循环结束*/
}      // 单灯左移函数结束 
/* 单灯右移函数,执行x圈 */
void right(int x)   // 单灯右移函数开始 
{ int i, j;   // 声明变量i,j
 for(i=0;i  { LED=0X7f;  // 初始状态=0111 1111
  for(j=0;j<7;j++)// j循环,右移7次 
  { delay10ms(25); // 延迟25 10m=0.25s
   LED=(LED>>1)|0x80; // 左移1位後,MSB设为1
  }   // j循环结束 
  delay10ms(25); // 延迟25 10m=0.25s
 }    // i循环结束 
}     // 单灯左移函数结束 
/* 霹雳灯函数,执行x圈 */
void pili(int x) // 霹雳灯函数开始 
{ int i;   // 声明变量i
 for(i=0;i  { left(1); // 单灯左移一圈 
  right(1); // 单灯左移一圈 
 }    // i循环结束 
}     // 霹雳灯函数结束 
下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1IP6823 支持 qi 认证的无线充电发射控制 SOC
  2. 1.01 MB  |  1次下载  |  免费
  3. 2IP6824  全集成QI 无线充电发射控制SOC
  4. 1.22 MB  |  1次下载  |  免费
  5. 3带注入电流控制的1.8V通用SP8T-Z和2个SP4T-Z模拟开关
  6. 847.62KB   |  次下载  |  免费
  7. 4PESD18VY1BBIF保护二极管规格书
  8. 4.56MB   |  次下载  |  免费
  9. 574HC4050缓冲器规格书
  10. 217.58KB   |  次下载  |  免费
  11. 674HC193;74HC7193二进制加减计数器规格书
  12. 327.93KB   |  次下载  |  免费
  13. 774HC73-Q100双JK触发器规格书
  14. 220.85KB   |  次下载  |  免费
  15. 8ASW3410 USB3.1高速数据开关切换规格书
  16. 1.39 MB   |  次下载  |  免费

本月

  1. 1A7159和A7139射频芯片的资料免费下载
  2. 0.20 MB   |  55次下载  |  5 积分
  3. 2零死角玩转STM32F103—指南者
  4. 26.78 MB   |  41次下载  |  1 积分
  5. 3PIC12F629/675 数据手册免费下载
  6. 2.38 MB   |  36次下载  |  5 积分
  7. 4PIC16F716 数据手册免费下载
  8. 2.35 MB   |  18次下载  |  5 积分
  9. 5dsPIC33EDV64MC205电机控制开发板用户指南
  10. 5.78MB   |  8次下载  |  免费
  11. 6STC15系列常用寄存器汇总免费下载
  12. 1.60 MB   |  7次下载  |  5 积分
  13. 7AN-1267: 使用ADSP-CM408F ADC控制器的电机控制反馈采样时序
  14. 1.41MB   |  5次下载  |  免费
  15. 8LP9962集成 PFC 和 和的 高压半桥驱动的 LLC 谐振
  16. 3.30 MB  |  4次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935124次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420063次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233088次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191367次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183335次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81581次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73813次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65988次下载  |  10 积分