单片机

初识原理图

在中学物理电路知识中,用简易电路图表示电路的实际连接情况,而在单片机硬件连接上,我们则用原理图来表示单片机的引脚与开发板板上的芯片等相关硬件的引脚通过电路板上的覆铜线两者相连。1.回顾单片机入门往往是从点亮一盏灯开始,我们在中学时做物理电路实验用电池点亮灯泡时,

外部中断测脉冲个数

1.外部中断的常用功能外部中断经常用来记录外部脉冲的个数,也就是当我们使用外部中断1时,如果想记录自身单片机的某个引脚的下降沿个数,只需用杜邦线把这个引脚和P3.3连接即可。比如P2.3引脚产生这样的电平无规律跳转,则下降沿的个数为5所以我们就用外部中断1来实现记录K4按键从按下到松手的抖动过程中经历

串口通信入门

在讲解本章的内容之前请大家先反复阅读《手把手教你学51单片机》文档的第11章内容,很多概念文档都已详细讲解有。1.波特率串口通信就是单片机与电脑端,单片机与单片机,单片机与模块器件之间互发信息进行通信,比如单片机发送一个“1”的字符给电脑端,电脑端的窗口就会接收到“1”。

数码管原理

1.分类数码管分共阳数码管和共阴数码管。数码管其实就是8个段的发光二极管,只点亮其中的几个段即可显示出数字或字母用来表达信息。共阳数码管:把8段LED的正极并在一起作为公共端连接在5V上(共阳极),然后8个LED通过单片机的8个IO端口输出高低电平使其决定点亮哪几个段。

隐形漏洞

1.漏洞代码假如就按上一讲说的书写方式,实现定时50ms间隔的流水灯。#include<reg52.h>#include<function.h>//详见第六章第8讲voidmain(){LED_Init();//初始化LED硬件模块EA=1;//闭合总中断开关TMOD=0x01;//设置定时器0为工作

代码文件和测试

创建好“infrared.c”和“infrared.h”文件。1.infrared.c的代码#include<reg52.h>#include<infrared.h>unsignedcharirflag=0;//红外接收标志,收到一帧正确数据后置1unsignedcharircode[4];//红外代

按键模式

1.前讲回顾在上一讲的代码里如果我们按下按键一直不松手,则灯会一直闪烁。这是因为“稳定接触状态”一直保持着长时间的低电平,所以程序的二次“if(KEY4==0)”判断一直满足条件就会在“LED2=0;”和“LED2=1;”之间来回切换,再加上50ms延时才会保持亮一段时间灭一段时间所体现的LED闪烁。

模拟倒车雷达报警

1.题目要求我们在第九章第3讲的例程基础上,实现用超声波模块模拟倒车雷达报警的功能,当障碍物距离超声波模块小于等于10cm左右我们就用蜂鸣器鸣叫产生报警,大于10cm就不报警。代码上添加的程序量比较少,我们只是把定时时间改为200微秒好使蜂鸣器鸣叫的比较尖锐。

无源蜂鸣器鸣叫

1.输出方波图解我们现在要给单片机IO端口输出4khz的方波。现在我们算出方波的周期:1/(4*1000)s=0.00025s=0.25ms高电平时间:(0.25/2)ms=0.125ms低电平时间:(0.25/2)ms=0.125ms2.驱动代码因为我们只写过最低延时1ms的函数,

最终按键程序

1.代码及解析我们先贴出代码,下面再进行解析原理u8KEY_Scan(u8mode,u16TIMES){staticu8key_up=1;//按键松开标志staticu16times;if(mode)key_up=1;//如果mode等于1,