CC2530按键控制呼吸灯
#include "iocc2530.h"#define LED1 P1_1 #define sw1 P0_1unsigned char h = 0;
unsigned char flag = 0;
unsigned char a=1; //a = 1渐亮,a=2渐灭//初始化
void Init()
{P1SEL &= ~0x02; //11100000P1DIR |= 0x02; //00011011LED1=1;P0SEL &=~0X02;//按键P0DIR |=0X02;PERCFG=0x40; //定时器1选择外设位置2T1CCTL1=0x64; //定时器1通道2向上比较,比较模式 T1CC1L=0xff; //0~255 0000 1111T1CC1H=h;
}void delay(int n)
{int s = 1000;int i = 0;for(i = 0;i < n;i++)while(s--);
}void ss() //呼吸灯
{if((T1STAT&0x02)>0) { T1STAT=T1STAT&0xfd; //清除中断标志 if(a==1) //渐亮 h=h+1; else //渐灭 h=h-1;T1CC1L=0xff; //重装比较值 T1CC1H=h;if(h>=254) //最大亮度 a=2; //设为渐灭if(h==0) //最小亮度a=1; //设为渐亮}
}
void scan_key()
{if(sw1 == 0){delay(2);if(sw1 == 0){while(sw1==0);//等待按键松开if(flag == 0) //第一次按下{flag = 1;T1CTL |= 0x01;//定时器1时钟频率1分频,自由运行模式P1SEL|=0x02; //设置灯的引脚为外设功能}else //第二次按下{ flag = 0;T1CTL &=~0X03;//关闭定时器P1SEL &=~0X02;//灯的引脚设置为普通IOLED1 = 1;}}}
}void main()
{Init(); while(1){scan_key();if(flag){ss();}}
}
通过按键控制呼吸灯的开启和关闭,需要注意的是,灯设置为外设功能时,直接熄灭等不起作用。因此熄灭灯之前需要将灯的初始化改为普通IO。
CC2530按键控制呼吸灯相关推荐
- FPGA—按键控制呼吸灯的时间
一.概括 呼吸灯,就是和人们的呼吸频率一样的一种led灯亮灭的表现.平时我们见到的基本都是一瞬间的开启和关闭,当然其也有一定开启和关闭时间,只是我们肉眼无法分辨,所以我们此次实验其主要难点在使我们的l ...
- cc2530按键控制LED灯
我平多多买的板子商家没给我原理图,我很无语,然后今天学按键控制终于找到了一个原理图: 不知道你们是否遇到寄存器设置值的事情,设置某位为输入或输出,通用IO或外部IO以及上拉电阻等等,我总结的方法可能很 ...
- CC2530学习笔记(2)—— IO端口基本操作实验(按键控制亮灯)
CC2530学习笔记(2)-- IO端口基本操作(按键控制亮灯) 关于CC2530的IO端口基本知识.IO端口有关寄存器的介绍和描述请参照:CC2530学习笔记(1)-- IO端口 电路原理图如图1 ...
- CC2530开发-----按键控制流水灯暂停
CC2530开发-按键控制流水灯 今天所要实现的效果如下 一.导入CC2530的包以及定义按键和LED的位置 #include "iocc2530.h" #define D3 P1 ...
- Arduino程序设计(二) 按键控制LED灯
按键控制LED灯程序设计 前言 一.按键控制LED灯--内部上拉(基础) 二.按键控制LED灯--外部上拉(基础) 三.按键控制LED灯(进阶) 总结 参考文献 前言 本文主要介绍三种按键控制LED灯 ...
- FPGA(1)基础入门 -- 按键控制led灯
目录 效果说明 1.配置输入输出变量 2.变量赋值 3.配置引脚(输入输出变量) 代码 效果说明 key1按键按下,led1被点亮. key2按键按下,led2被点亮. 1.配置输入输出变量 inpu ...
- led计数电路实验报告_「正点原子FPGA连载」第八章 按键控制LED灯实验
1)实验平台:正点原子开拓者FPGA开发板 2)本实例源码下载:请移步正点原子官网 第八章 按键控制LED灯实验 按键是常用的一种控制器件.生活中我们可以见到各种形式的按键,由于其结构简单,成本低廉等 ...
- 基于Verilog的按键控制LED灯
按键控制LED灯 原理图 程序设计 `timescale 1ns / 1psmodule key_led( input sys_clk, input sys_rst_n, input [3:0] ke ...
- 四、 按键控制流水灯的运行与暂停
按键控制流水灯的运行与暂停 项目要求: [1]程序开始时,4个LED灯全亮一会,然后,再全灭一会,开始进入跑马灯. [2]跑马灯过程为:D4灯亮,其余熄灭,延时,D3灯亮,其余熄灭,延时,D6灯亮, ...
- 记录1——stm32f411CEU6之点亮一盏LED灯+按键控制LED灯
文章目录 前言 一.准备工作 二.点亮一盏LED灯 1.配置工程 2.代码实现 3.程序烧录注意 三.按键控制LED灯 1.配置工程 2.代码实现 按键控制 按键进阶1: 按键进阶2 3.基于自己理解 ...
最新文章
- ZendStudio导入一个已有的网站
- java sort reverse_Java ArrayList sort() 方法
- 用css来设置table的border
- python测试用例图_pytest以函数形式的测试用例
- GNU make manual 翻译(七十三)
- PythonGIS可视化—Matplot basemap工具箱
- 前端技术-调试工具(上)
- 单片机位寻址举例_单片机学习:51单片机寻址方式详解
- antlr 语言 库_关于ANTLR的通用库的需求:使用反射来构建元模型
- linux中nodejs后台运行工具forever
- ICCV 2019 Oral 端到端任意形状场景文字识别
- MYSQL 批量Insert ID顺序生成(仿雪花算法)
- android service 本地 远程 总结
- 字体 素材_4个网站,涵盖几乎所有素材,字体、设计、图片各种资源管够
- Java POI 读取Excel-从开始到实例
- GitLab CI 中激活Anaconda环境
- java中用Executor代替Thread的四大理由
- 数据库原理及应用教程(陈志泊主编)
- 假短信截图在线生成器_10个超好玩的自动生成器
- (C#.net)CAD二次开发 polyline多段线/line直线/曲线 break打断的方法