单片机按键启停c语言,ZigBee-CC2530单片机 - 按键控制跑马灯的启停
ZigBee-CC2530单片机 - 按键控制跑马灯的启停
程序源码
#include "ioCC2530.h" //引用CC2530头文件
#define LED1 (P1_0) //LED1端口宏定义
#define LED2 (P1_1) //LED1端口宏定义
unsigned char flag_Pause=0; //流水灯运行标志位,为1暂停,为0运行。
/**************************************************************
函数名称:delay
功 能:软件延时
入口参数:time--延时循环执行次数
出口参数:无
返 回 值:无
**************************************************************/
void delay(unsigned int time)
{
unsigned int i;
unsigned char j;
for(i = 0;i < time;i++)
for(j = 0;j < 240;j++)
{
asm("NOP");//asm用来在C代码中嵌入汇编语言操作,汇
asm("NOP");//编命令nop是空操作,消耗1个指令周期。
asm("NOP");
while(flag_Pause);//根据flag_Pause的值确定是否在此循环
}
}
/**************************************************************
函数名称:main
功 能:程序主函数
入口参数:无
出口参数:无
返 回 值:无
**************************************************************/
void main(void)
{
P1SEL &= ~0x03; //设置P1_0口和P1_1口为普通I/O口
P1DIR |= 0x03; //设置P1_0口和P1_1口为输出口
LED1 = 0; //熄灭LED1
LED2 = 0; //熄灭LED2
/*************新增外部中断初始化部分****************/
IEN2 |= 0x10; //使能P1口中断
P1IEN |= 0x04; //使能P1_2口中断
PICTL |= 0x02; //P1_3到P1_0口下降沿触发中断
EA = 1; //使能总中断
/***************************************************/
while(1)//程序主循环
{
delay(1000); //延时
LED1 = 1; //点亮LED1
delay(1000); //延时
LED2 = 1; //点亮LED2
delay(1000); //延时
LED1 = 0; //熄灭LED1
delay(1000); //延时
LED2 = 0; //熄灭LED2
}
}
/**************************************************************
函数名称:P1_INT
功 能:P1口外部中断服务函数
入口参数:无
出口参数:无
返 回 值:无
**************************************************************/
#pragma vector = P1INT_VECTOR
__interrupt void P1_INT(void)
{
if(P1IFG & 0x04) //如果P1_2口中断标志位置位
{
if(flag_Pause == 0)
{
flag_Pause = 1;
}
else
{
flag_Pause = 0;
}
P1IFG &= ~0x04; //清除P1_2口中断标志位
}
P1IF = 0; //清除P1口中断标志位
}
标签:LED1,P1,单片机,ZigBee,delay,跑马灯,flag,LED2,Pause
来源: https://blog.csdn.net/qq_35094756/article/details/113810435
单片机按键启停c语言,ZigBee-CC2530单片机 - 按键控制跑马灯的启停相关推荐
- 基于51单片机8位竞赛抢答器_倒计时可调+LED跑马灯
基于51单片机8位竞赛抢答器_倒计时可调+LED跑马灯仿真设计 (程序+proteus仿真+报告) Proteus仿真版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C ...
- 第二十二节:独立按键控制跑马灯的方向
第二十二节:独立按键控制跑马灯的方向. 开场白: 上一节讲了多任务并行处理两路跑马灯的程序.这一节要教会大家一个知识点:如何通过一个中间变量把按键跟跑马灯的任务有效的关联起来. 具体内容,请看源代码讲 ...
- fpga一个按键控制跑马灯启停_车上这些开关都认识吗?一次带你认清车上按键...
现在的汽车功能越来越强大了,汽车内部的按钮也越来越多,很多人对于汽车内部按钮.旋钮或者标识并不一定了解.今天我们一起来了解吧! 1.发动机启停系统开关 为了省油和环保,加入了很多先进的科技设备,发动机 ...
- 基于单片机的倒车雷达系统设计c语言,基于AT89C2051单片机实现超声波倒车雷达系统的设计...
描述 倒车雷达(Car Reversing Aid Systems)的全称是"倒车防撞雷达",也称"泊车辅助装置",是汽车泊车安全辅助装置,能以声音或者更为直观 ...
- 单片机检测电机频率c语言,基于51单片机的电动机测速表的设计.doc
基于51单片机的电动机测速表的设计 基于51单片机的电动机测速表设计 摘 要 本文介绍了采用光电传感器实施电机转速测量的方法.基本原理,完成了一种基于AT89C51单片机平台的电动机测速表的软硬件设计 ...
- 用单片机c51电子秤的c语言,基于51单片机的电子秤系统设计
微机原理论文第八篇:基于51单片机的电子秤系统设计 摘要:本文主要分析51单片机下的数字电子秤.在设计过程中,这种电子秤具体包括电源.传感器.蓝牙.转换器.单片机.键盘.开关.显示器等组成部分,在实践 ...
- 51单片机C语言跑马灯,51单片机上实现控制跑马灯
在MCS一51单片机的控制系统中,它的四个并行8位输入输出端口P0一P3是我们经常使用的.在并行端口的编程学习中,"跑马灯"是单片机并行端口输出控制的典型实例.所谓跑马灯,是指将八 ...
- 单片机跑马灯程序c语言,MCS-51单片机控制跑马灯的三种方法
描述 在MCS一51单片机的控制系统中,它的四个并行8位输入输出端口P0一P3是我们经常使用的.在并行端口的编程学习中,"跑马灯"是单片机并行端口输出控制的典型实例.所谓跑马灯,是 ...
- 《51单片机应用开发从入门到精通》——2.2 跑马灯实例
本节书摘来自异步社区<51单片机应用开发从入门到精通>一书中的第2章,第2.2节,作者 张华杰,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.2 跑马灯实例 ...
最新文章
- 终于知道10月27-28-29这3天为什么调整了
- 采购申请的评估价格的来源
- 如何用计算机仿真解决能源危机,计算机仿真技术在安全领域内的应用.pdf
- powershell 查看系统设备\device status
- python os.walk模块_Python之os.walk和os.path.walk
- [Redis6]Bitmaps与set对比
- python 测试用例管理 生成_python自动生成接口测试用例
- java基础篇——包
- oracle 导入导出数据库、删除用户以及该用户所有的对象
- 《人工智能:一种现代的方法》读书笔记之 智能Agent
- paypal android 教程,android端集成paypal
- c语言判断闰年次数,C语言判断闰年,即判断年份是否为闰年
- Pandas Query 方法深度总结
- iOS 边学边记 升级ios14 Xcode真机调试启动非常慢的问题解决
- c语言零错误零警告,C语言 g警告:无符号表达式的比较0始终为false
- 进入计算机专业学习的一些体会和思考以及今后的学习规划
- 51单片机 播放青花瓷(源码)
- C语言 精典数值算法程序合集
- 计算机绘图1091大作业,2018秋季【西南大学】[1091]《计算机绘图(1)》作业(参考答案)...
- keras读取后缀名为.h5的文件
热门文章
- IE8报错:Unable to modify the parent container element before the child element is closed
- CPC安装后,简单解决Microsoft.Jet.OLEDB.4.0问题
- unix命令netstat
- 数据库视频(六)-自动化
- python 窗口置顶_PyQt5 窗口置顶
- 新沂市一中计算机教室,新沂城市论坛『民意民声』记新沂市第一中学教师苗庆硕 - Powered by Discuz!...
- AJAX根据邮政编码,自动完成城市和地址信息
- ORA-27101异常处理
- 新版的Mybatis-Plus使用乐观锁,MP_OPTLOCK_VERSION_ORIGINAL与新版插件的使用方法
- Flutter2.0重磅发布!带你一文打尽Flutter Engage