单片机开发教程2——点灯

文章目录

    • 1.接线介绍
      • 1.1 面包板
      • 1.2 按键
      • 1.3 发光二极管
      • 1.4 整体接线
    • 2.开发示例
      • 2.1 新建keil项目
      • 2.2 代码编写
      • 2.3 烧录下载

1.接线介绍

1.1 面包板

在电路设计中,面包板是最基础、最简单的元件之一,它可以连接各种电子元器件,使用时只需任意插入或拔出,从而免去了焊接的工序,大大方便了电路的设计与调试。

单片机开发教程2——点灯_第1张图片

面包板上有很多插孔,首先需要知道其内部的电气连接。

如图上的红色标注:面包板两侧共有4路电源轨,轨道上所有插孔在内部是导通的;中间纵向分布共有60路接线轨,每个轨道上的5个插孔也是导通的。

使用时,通常把外部电源接到电源轨上,面包板上的元器件在需要供电时,只需要把电源轨上的插孔与接线轨上对应的插孔连接。

接线时需要再三检查!!!不要短接电路!!!尤其是Vcc/5V直接接到GND

1.2 按键

单片机开发教程2——点灯_第2张图片
这是按键的原理图,相距较远的两个脚之间是导通,使用时只需连接1、3(或者1、4)

可能你会疑惑,为什么多出两个引脚?其实多出来的引脚的主要作用是固定作用,因为只有两个引脚时,很容易被折断,影响使用寿命

单片机开发教程2——点灯_第3张图片
采用最简单的连接方式,单片机一个IO口对应一个按键。图上P0口外接了上拉电阻(最小系统板上4组IO都有上拉电阻,不一定用P0),在没有开关按下的时候,是高电平,一旦有按键按下,就被拉成低电平。这种方案优点是电路简单可靠,程序设计也很简单。缺点是占用I/O资源多,不过我们的资源足够,而且用不到太多按键。

1.3 发光二极管

单片机开发教程2——点灯_第4张图片
上图是发光二极管(LED)的常见连接方式,蓝色框中的电阻起到限制电流保护电路的作用,所以也叫做限流电阻,通常为1kΩ电阻,但由于物资里没有,所以也可以不用,但需要注意的是,LED不能直接接Vcc和GND,否则电流太大,LED闪一下就再也不能亮了(不信可以试试)

二极管是有方向的,对于LED,长脚为正短脚为负,当然,接错时LED处于截至状态,相当于断路,并不会烧坏,对应IO口输出低电平时,LED被点亮

1.4 整体接线

单片机开发教程2——点灯_第5张图片

我这里使用的是串口模块给单片机供电,所以就不需要再接DC电源线了,如果你的电源开关不好用或者坏了,可以选择把串口模块的5V接到单片机3路扩展电源的5V,而开关旁边的Vin还是受到开关控制通断的

2.开发示例

2.1 新建keil项目

单片机开发教程2——点灯_第6张图片
单片机开发教程2——点灯_第7张图片
单片机开发教程2——点灯_第8张图片
单片机开发教程2——点灯_第9张图片

单片机开发教程2——点灯_第10张图片

单片机开发教程2——点灯_第11张图片

单片机开发教程2——点灯_第12张图片

2.2 代码编写

#include 

sbit L1 = P0^1;
sbit k1 = P0^7;

void delay(unsigned int i)
{
	while(i--);
}

void button()
{
	if(k1==0)
	{
		delay(10);
		if(k1==0)
		{
			L1 = ~L1;
			while(k1==0);
		}
	}
}

void main()
{
	L1 = 0;
	while(1)
	{
		button();
	}
}

单片机开发教程2——点灯_第13张图片

2.3 烧录下载

单片机开发教程2——点灯_第14张图片
单片机开发教程2——点灯_第15张图片
单片机开发教程2——点灯_第16张图片

此时,通过按键就可以控制LED的亮灭啦

你可能感兴趣的:(单片机)