单片机补充案例--按键点灯
【摘要】 这是一个及其简单的案例,按下key点亮led,为什么还要补充呢?
1. 输入和输出
2. 数字量
/***************************************************************************** * 头文件 * **************************************************...
这是一个及其简单的案例,按下key点亮led,为什么还要补充呢?
1. 输入和输出
2. 数字量
-
/*****************************************************************************
-
* 头文件 *
-
*****************************************************************************/
-
#include "8052.h"
-
//端口定义--功能按键控制LED灯亮灭
-
#define LSA P1_5
-
#define LSB P1_6
-
#define LSC P1_7
-
#define LED0 P0_0
-
#define LED1 P0_1
-
#define LED2 P0_2
-
#define LED3 P0_3
-
#define KEY0 P3_2
-
#define KEY1 P3_3
-
#define KEY2 P3_4
-
#define KEY3 P3_5
-
-
/*****************************************************************************
-
* 初始化 *
-
*****************************************************************************/
-
void delay(unsigned int ms) //
-
{
-
unsigned int x;
-
unsigned int y;
-
for(x=ms;x>0;x--)
-
for(y=110;y>0;y--)
-
;
-
}
-
-
void sys_init(void)
-
{
-
LSA = 0;
-
LSB = 0;
-
LSC = 0;
-
}
-
/*****************************************************************************
-
* 主函数 *
-
*****************************************************************************/
-
void main(void)
-
{
-
sys_init();
-
while(1)
-
{
-
/* send per 0ms */
-
//delay(1);
-
LED0=KEY0;
-
LED1=KEY1;
-
LED2=KEY2;
-
LED3=KEY3;
-
}
-
}
关于单片机程序,如果使用固件库一定要配置好环境,对于实验一,不配置正确就无法完成编译,报错无法找到xxx等:
参考如下代码:
-
/*****************************************************************************
-
* 头文件 *
-
*****************************************************************************/
-
#include "8052.h"
-
#define LSA P1_5
-
#define LSB P1_6
-
#define LSC P1_7
-
/*****************************************************************************
-
* 初始化 *
-
*****************************************************************************/
-
void delay(unsigned int ms) //
-
{
-
unsigned int x;
-
unsigned int y;
-
for(x=ms;x>0;x--)
-
for(y=110;y>0;y--)
-
;
-
}
-
-
void sys_init(void)
-
{
-
LSA = 0;
-
LSB = 0;
-
LSC = 0;
-
}
-
/*****************************************************************************
-
* 主函数 *
-
*****************************************************************************/
-
void main(void)
-
{
-
sys_init();
-
while(1)
-
{
-
/* send per 1000ms */
-
delay(1000);
-
P0=0x55;
-
/* send per 1000ms */
-
delay(1000);
-
P0=0xFF;
-
}
-
}
文章来源: zhangrelay.blog.csdn.net,作者:zhangrelay,版权归原作者所有,如需转载,请联系作者。
原文链接:zhangrelay.blog.csdn.net/article/details/110729176
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)