单片机原理及其应用

您所在的位置:网站首页 显卡矿机主板上4只发光二极管 单片机原理及其应用

单片机原理及其应用

2023-07-29 12:22| 来源: 网络整理| 查看: 265

目录 一、实验要求二、Proteus仿真软件画原理图三、Keil编程软件编写程序四、实验结果(一)仿真结果(二)连接电路(三)烧录并观察实验现象 结语

一、实验要求

【实验目的】 1、了解独立按键的机械原理; 2、掌握独立按键的程序识别方法。 【实验内容】 通过按键依次点亮8只发光二极管,实现按下按键时第一只发光二极管点亮,依次至第八只发光二极管点亮。

二、Proteus仿真软件画原理图

原理图和之前八只单片机控制8只发光二极管交替闪烁的电路差不多,对之前的电路图修改,只不过加了按键以及更换了单片机输入/输出口,电路图如下: 在这里插入图片描述 其中R3电阻的电阻值为10k,其作用是作为上拉电阻,当按键没有按下时,将不确定的输入信号通过一个电阻钳位在高电平,同时它也起到限流的作用,避免流入单片机接口的电流过大,其一般取值为4.7-10k欧姆。 若要将按键置于P0口,则需在单片机P0.0口处外接上拉电阻,因为P0口内部没有上拉电阻。

三、Keil编程软件编写程序

之前的实验并未说明实物现象的结果与仿真图是相反的,所以我们反着写程序这样更便于观察现象,也就是单片机控制按键依次点亮8只发光二极管反过来就是单片机控制按键依次熄灭8只发光二极管,原来是要通过一个数组使数组内的元素,数组内存储各端口输出高低电平状态组成的十六进制数据,转换为二进制就对应每个灯的点亮和熄灭,即unsigned char LED[]={0x01,0x02,0x04,0x08,0x10, 0x20,0x40,0x80}改为unsigned char LED[]=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f},然后我们的延时函数设置10ms,即delay(10),之前的实验有说明这里不再详述。

写了两套程序,都是可以运行的,第一套程序是通过数组每次a++进而取数组中的元素,从而实现按键对8只发光二极管操作,程序代码如下:

#include sbit Button=P2^0; unsigned char LED[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char a; void delay(unsigned int x) { unsigned int i,j; for(i=0;i if(Button==0) { delay(10); while(Button==0) P1=LED[a]; a++; } if(a==9) break; } }

第二套程序是通过switch语句,也是通过num++,按键按下实现按键对8只发光二极管操作,程序代码如下:

#include sbit Button=P2^0; void delay() { unsigned int i,j; for(i=0;i if(Button==0) { delay(); if(Button==0) while(!Button); num++; if(num>8) num=0; } switch(num) { case 1:P1=0xfe;break; case 2:P1=0xfd;break; case 3:P1=0xfb;break; case 4:P1=0xf7;break; case 5:P1=0xef;break; case 6:P1=0xdf;break; case 7:P1=0xbf;break; case 8:P1=0x7f;break; } } } 四、实验结果 (一)仿真结果

仿真结果和实际结果是相反的,所以仿真结果一开始所有灯是点亮的: 在这里插入图片描述 按下按键,第一只发光二极管熄灭: 在这里插入图片描述 ……依次,按下按键,到第八只发光二极管熄灭: 在这里插入图片描述

(二)连接电路

将单片机P2.0口与独立按键模块K1按键连接以及单片机P1.0-P.1.7口与LED&交通灯模块排线连接在一起(注意不要接反),连接图如下: 在这里插入图片描述

(三)烧录并观察实验现象

烧录之后一开始所有灯是熄灭的,当按下按键时,第一只发光二极管点亮,如图: 在这里插入图片描述 再点一次,第一只发光二极管熄灭,第二只发光二极管点亮,如图: 在这里插入图片描述 再点一次,第二只发光二极管熄灭,第三只发光二极管点亮,如图: 在这里插入图片描述 ……依次到第八只发光二极管点亮,如图: 在这里插入图片描述

结语

感谢您的阅读和支持,若程序代码和其它方面有不当之处,当指出!您的指出和建议能给作者带来很大的动力!!!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3