单片机

同时显示不同的数字

同时显示不同的数字在上一讲的代码中几个数码管只能同时显示相同的数字和字母,这一讲我们实现同时3个数码管点亮但每个数码管显示的数字都不一样,所以我们做一个用来显示一个变量一秒后自加1的显示效果。例如,此时时间过去了162……

定时时长的做法

定时时长的做法1.“水量”的确定我们已经懂得怎么选用“试管”了,如何装多大的“水量”来决定定时的时长呢。首先我们先拿“大试管&rd……

呼吸灯

呼吸灯1.双定时器呼吸灯实现呼吸灯的实现原理就是让小灯的IO端口在一段时间里PWM由大到小变化的占空比输出,接着又由小到大的占空比输出,小灯显示效果就是时亮时暗地交替闪烁。首先我们用定时器0定时0.1ms,……

按键模式

按键模式1.前讲回顾在上一讲的代码里如果我们按下按键一直不松手,则灯会一直闪烁。这是因为“稳定接触状态”一直保持着长时间的低电平,所以程序的二次“if(KEY4==0)&r……

再次熟悉串口

再次熟悉串口串口是非常常用的一个调试工具,我们都必须熟练使用串口的各个功能。1.题目要求和解决方案我们要做的是,电脑端发送字符串过来给单片机,然后单片机这边接收完之后要回复给电脑端,回复内容为“接收完……

进一步理解中断函数

进一步理解中断函数1.另一个外部中断前面两讲都是围绕外部中断0(P3.2的功能)来讲解,这里我们也还有一个外部中断1(P3.3的功能)。P3.3要想实现上一讲的功能只需杜邦线接下面的IO端口即可代码就是把“……

模块初始化

模块初始化1.硬件的初始化学单片机需要往前走,所以我们必须提前熟悉单片机嵌入式的代码书写风格。还记得我们要点亮小灯需要的条件吗首先:sbit LED2  =……

串口printf系列函数

串口printf系列函数1.printf系列的函数实现懂得了单片机通过串口传输数据给电脑端窗口查看,那么,有时我们需要发送字符串,有时需要发送一个变量的数值是多少,以及还要发送回车换行这三种情况。所以我们把这三个功能函数封装……

数组与移位

数组与移位1.数组运用实现上一节的功能其实还有更简洁的方法去书写,那就是引用数组,用数组存取灯的八种状态值。定义含有8个元素的数组如下:unsigned charLEDSET[8]={0xFE……

带返回值的函数

带返回值的函数1.返回值之前我们封装的函数都是void类型无返回值的函数。随着学习的深入,我们需要把C语言的精髓学到家。前面几讲在“function.c”中没有提及过按键的函数封装,大家也知……