资源简介
这是一个51单片机五向摇杆程序,分享给大家参考,有详细注释
代码片段和文件信息
/*******************************************************
程序功能:摇杆控制LED灯的亮灭
开发环境:Keil3
硬件环境:CEPARK多功能开发学习板/实验箱(2013版),STC12C5A60S2,11.092M晶振
接线说明:使用杜邦线连接P3口与底板单色流水灯模块的JP15 ,具体接法:P30-I1,P31-I2,P32-I3P33-I4P34-I5P35-I6P36-I7P37-I8.
使用杜邦线连接P1口与底板五向摇杆模块的JP39 ,具体接法:P10-F1,P11-F2,P12-F3P13-F4P14-F5
跳线说明:无
实验现象:五向摇杆朝上按下,L1点亮
摇杆朝左按下,L2点亮
摇杆朝下按下,L3点亮
摇杆朝右按下,L4点亮
摇杆中间按下,L5点亮
论坛支持:http://bbs.cepark.com
淘宝店铺:http://cepark.taobao.com
作者:cepark
时间:2013-01-23
*******************************************************/
#include “REG52.h“
/******************************************************
查表表格
*******************************************************/
unsigned char code table[]={0xfe0xfd0xfb0xf7
0xef0xdf0xbf0x7f
0xff// 关闭所有LED
}; //rom允许情况可以无限添加
void Delay(unsigned int); //延时函数
unsigned char KEY_Detect(void);
void main(void)
{
unsigned char i; //定义一个无符号字符型局部变量 i 取值范围 0~255
P1=0xff;
P3=0xff;
while(1)
{
i=KEY_Detect();
if(i!=0)
{
P3=table[i-1];
}
}
}
/******************************************************************************
函数名称:Delay
函数功能:延时函数
入口参数:uiCount-延时参数,每加1增加0.5ms
返回值:无
备注:无
*******************************************************************************/
void Delay(unsigned int uiCount)
{
unsigned char j = 244;
for(;uiCount > 0;uiCount--) while(--j);
}
/*******************************************************
函数功能:独立按键扫描
参数说明:无
返回值:返回当前按键值key
*******************************************************/
unsigned char KEY_Detect(void)
{
unsigned char ucTemp;
unsigned char key;
ucTemp = P1 ;
if(ucTemp != 0xFF) //判断是否有按键按键,如果有按键按下,进去下面的程序
{
Delay(200); //消抖
ucTemp = P1;
if(ucTemp != 0xFF)//再次判断是否有按键按下,如果ucTemp仍然不是0XFF,则说明确实有按键按下
{
switch(ucTemp)
{
case 0xFE:
key=1;
//第一个按键
break;
case 0xFD:
key=2;
//第二个按键
break;
case 0xFb:
key=3;
//第三个按键
break;
case 0xF7:
key=4;
//第四个按键
break;
case 0xef:
key=5;
//第五个按键
break;
case 0xdf:
key=6;
//第六个按键
break;
case 0xbf:
key=7;
//第七个按键
break;
case 0x7f:
key=8;
//第八个按键
break;
default:key=0;
break;
}
}
}
return key;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2565 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\CEPARK
文件 212 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\CEPARK-.plg
文件 532 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\CEPARK.hex
文件 78 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\CEPARK.lnp
文件 1050 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\CEPARK.plg
文件 2845 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\main.obj
文件 212 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Out\main.plg
文件 5573 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Project\CEPARK.m51
文件 7745 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Project\main.lst
文件 887 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Project\五向摇杆-点亮LED.Opt
文件 2165 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Project\五向摇杆-点亮LED.Uv2
文件 2919 2017-10-25 14:14 11-1 五向摇杆-点亮LED\Source\main.c
目录 0 2018-12-25 13:26 11-1 五向摇杆-点亮LED\Out
目录 0 2018-12-25 13:26 11-1 五向摇杆-点亮LED\Project
目录 0 2018-12-25 13:26 11-1 五向摇杆-点亮LED\Source
目录 0 2018-12-25 13:26 11-1 五向摇杆-点亮LED
----------- --------- ---------- ----- ----
26783 16
- 上一篇:基于labview的噪声采集和分析软件
- 下一篇:地震波场数值模拟
相关资源
- 智能温控风扇控制设计51单片机原理;
- CefSharp v51 Net 4.5.2 封装谷歌浏览器
- Zedboard HDMI官方显程(适用于Vivado201
- 51反汇编工具集
- 单片机金属探测.rar
- b076b5826515a933881bc55549d5bf4e.pdf
- 5119704abfb5cd55027278a176eeee87.rar
- 基于Proteus的电路及单片机系统设计与
- 7e9d1b0d5b73c9970517e72cf8d80c3c.rar
- 基于51单片机的模拟电梯设计
- 数字电感电容表的设计与实现
- 8051软核处理器设计实战
- 基于单片机和AD574的简易电子秤设计
- 基于51单片机的温室温湿度控制系统的
- 基于STM32系列单片机的智能清扫机器人
- CA51F3系列MCU_SDK 开发包.rar
- AD6 超全元件库
- Keil C51 V9.00含破解
- 空调智能恒温系统设计+论文
- 全国学生资助管理信息系统-义教子系
- ATmega128单片机入门与提高 沈建良版例
- mc9x12xs128单片机的20个例程
- 《单片机原理及接口技术第2版》
- 电子-移植好的BootLoader与TRC实验APP.z
- 基于单片机的电梯控制系统设计
- 基于51单片机的温湿度自动控制系统
- STM32,ADS1110电压采集,LCD5110液晶显示
- 掌讯3518-V003原版root增量包-190117内有说
- STM32F405RGT6串口例程
- HTC A510e s-on to so-off
评论
共有 条评论