可以实现这个功能吗?

K1键流水灯交替闪烁。

K2键流水灯从两边向中间移动闪烁。

K3键流水灯全部闪烁。

K4键流水灯从LED7到LED0流水闪烁。

#include

sbit S5=P1^4;

sbit S6=P1^5;

sbit S7=P1^6;

sbit S8=P1^7;

unsigned char keyval;

void key_scan(void);

void forward(void);

void backward(void);

void Alter(void);

void blink(void);

void led_delay(void);

void delay10ms(void);

void main(void)

{

keyval=0;

while(1)

{

key_scan();

switch(keyval)

{

case 5:Alter();

break;

case 6:forward();

break;

case 7:blink();

break;

case 8:backward();

break;

}

}

}

void key_scan(void)

{

P1=0xff;

if((P1&0xf0)!=0xf0)

{

delay10ms();

if(S5==0)

keyval=5;

if(S6==0)

keyval=6;

if(S7==0)

keyval=7;

if(S8==0)

keyval=8;

}

}

void Alter(void)

{

P3=0xaa;

led_delay();

P3=0x55;

led_delay();

}

void forward(void)

{

P3=0x7e;

led_delay();

P3=0xbd;

led_delay();

P3=0xdb;

led_delay();

P3=0xe7;

led_delay();

P3=0xe7;

led_delay();

P3=0xdb;

led_delay();

P3=0xbd;

led_delay();

P3=0x7e;

led_delay();

}

void blink(void)

{

P3=0xff;

led_delay();

P3=0x00;

led_delay();

}

void backward(void)

{

P3=0x7f;

led_delay();

P3=0xbf;

led_delay();

P3=0xdf;

led_delay();

P3=0xef;

led_delay();

P3=0xf7;

led_delay();

P3=0xfb;

led_delay();

P3=0xfd;

led_delay();

P3=0xfe;

led_delay();

}

void led_delay(void)

{

unsigned char i,j;

for(i=0;i<220;i++)

for(j=0;j<220;j++);

}

void delay10ms(void)

{

unsigned char i,j;

for(i=0;i<100;i++)

for(j=0;j<100;j++);

}

单片机c语言中void key(void),单片机C语言编程相关推荐

  1. 单片机c语言中io取反,单片机小白学步(21) IO口:基本的LED和按键操作

    原标题:单片机小白学步(21) IO口:基本的LED和按键操作 本篇我们先介绍最基础的几个IO口操作.学完本篇,大家要能自己独立完成下面几个实验. 1.点亮 2.一个按键控制LED,按下灯亮,释放灯灭 ...

  2. 单片机c语言中p1asf,基于51单片机的蓄水池自动控制系统 毕业设计.doc

    基于51单片机的蓄水池自动控制系统 毕业设计 广西民族大学 第二次综合课程设计报告 论文题目: 基于51单片机的蓄水池自动控制系统 学 院: 物理与电子工程学院 专 业: 自动化 年 级: 2007级 ...

  3. c语言中removeDir的相反函数,C语言编程常见问题解答之常用函数的包括文件.doc

    C语言编程常见问题解答之常用函数的包括文件 C语言编程常见问题解答之常用函数的包含文件(1) 作者:unknown 更新时间: 2005-05-10 函数 包含 类别 功能 _atold math.h ...

  4. _nop_在c语言里什么作用,单片机c语言中nop函数的使用方法和延时计算

    原标题:单片机c语言中nop函数的使用方法和延时计算 标准的C语言中没有空语句.但在 的C语言编程中,经常需要用几个空指令产生短延时的效果. 这在汇编语言中很容易实现,写几个nop就行了. 在C51中 ...

  5. 在单片机C语言中const是什么意思

    在单片机C语言中const unsigned char ov529[5]={0xff,0xff,0xff,SYNC_ID,0x00}前面加const是什么意思?? 表示常量,不允许修改里面的内容.也就 ...

  6. 单片机c语言的define,单片机C语言中define的妙用

    单片机C语言中define的妙用 最近一款产品调试时发现了问题,在一起检查一个小伙伴的C程序.问题不大,但暴露了一点问题. 比如:PORTB=0x23; //他的意思是把第5和第2位置1 可是你能一下 ...

  7. 智能空调检测程序c语言,基于单片机的智能空调节电控制器毕业设计论文C语言编程.doc...

    基于单片机的智能空调节电控制器毕业设计论文C语言编程 目录 TOC \o "1-3" \u 第1章引言 PAGEREF _Toc231960072 \h 1 1.1传感器的概述和应 ...

  8. 单片机c语言中void key(void),STC单片机C语言通用万能编程模板

    <STC单片机C语言通用万能编程模板>由会员分享,可在线阅读,更多相关<STC单片机C语言通用万能编程模板(23页珍藏版)>请在人人文库网上搜索. 1.8051 单片机 C 语 ...

  9. 在单片机c语言中 p1^0 = 1 实现了什么功能?,用单片机C语言来实现相思病

    如果刚开始看到这个题目的时候是不是觉得疑惑呢?"相思病"是什么?"相思病"就是我们平常所说的心病.写这个文章的目的在于启发我们的思想,其实编程思想很简单,就是把 ...

  10. c语言中int和void,关于指针:void(*)void和int(*)int在C中的含义是什么?

    本问题已经有最佳答案,请猛点这里访问. 任何人都可以在C中解释这两行代码: void (*pfs)(void) = &fs; long int (*pfact)(int) = &fac ...

最新文章

  1. 常用的Java GC算法
  2. SER SERVER存储过程
  3. 2020年“3D视觉工坊”视频号最受欢迎视频 Top 10!
  4. mysql的连接leftjion,mysql的表连接(left|right)join
  5. Redis-学习笔记05【Jedis连接池】
  6. PAT ---- 1029. 旧键盘(20)
  7. 删除域中不再存在的主机
  8. 羊年快乐!献上小礼一份!
  9. Win11如何关闭445端口?Win11关闭445端口的方法
  10. 二十四节气—立秋,文案、海报分享。
  11. 【华为OD机试真题 python】数字涂色 【2022 Q4 | 100分】
  12. Roboastere 地盘功率限制(大方向)(RM论坛同步更新,同ID,头像)
  13. 北京智源大会 | AI + 医疗的下一个十年:从公共卫生预警到人类基因密码解析 道翰天琼认知智能api机器人接口。
  14. RxJS 6 —— Subscription
  15. 用 Go 手写一个 JSON 序列化器
  16. 6000多万铲屎官,捧得出一个国产主粮的春天吗?
  17. Windows登录日志详解
  18. 提问的智慧 How To Ask Questions The Smart Way
  19. 前端实战:React 多页签缓存处理
  20. 华为交换机、路由器配置静态路由实现不同网段通信

热门文章

  1. Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形...
  2. Reflector7.5.2.1的Bug
  3. CHARINDEX 连同 SUBSTRING 对字符串删除处理...
  4. ASP.NET 分页技术
  5. 《隋唐演义》二:竞争对手的实力在不断增强
  6. 云计算计算机二级,2021计算机二级office用的是哪个版本
  7. android外接usb摄像头demo_手机通过USB连接打印机使用教程,手机连接打印机系列之二...
  8. Django的数据迁移
  9. 【2019杭电多校第一场1004=HDU6581】Vacation(思维+避免超时)
  10. 0018计算机应用基础国考考试大纲,《计算机应用基础》考试大纲