单片机

静态变量

静态变量1.staticstatic一般不用在主函数中,大多数在中断函数和封装好的子函数里运用,它的作用是保证在子函数或中断函数中定义的变量每次调用完之后都可以保持调用完时候的值,《手把手教你学51单片机》文……

指向数组的指针

指向数组的指针在串口章节和液晶屏章节的部分代码中总是看到“ *str!='\0' ”和“ *……

中断函数

中断函数1.中断函数概念上一讲里,当赋值IT0为1时,P3.2遇到下降沿,IE0被置1,要想使IE0自动清零,我们引用中断函数就可以了。我们可能已经习惯了都是在main函数里阅读分析代码,其实还有另一种函数需……

延时1秒

延时1秒1.准确延时学会了上一讲的软件调试教学,我们现在用软件调试出延时很接近1毫秒的代码:for(j=115;j>0;j--);如果要延时1秒,那是不是循环1000次这条语句呢?for(i=0……

单独文件封装

单独文件封装1.再遇多文件编程因为定时器经常在后面的教程中使用到,所以我们也把这部分功能代码单独使用文件封装起来。在第六章的教程中已经教过大家多文件创建,这里点到为止。创建好“timer.c&rdqu……

多文件编程首次测试

多文件编程首次测试延时函数虽然很少使用了,但是有时需要测试代码的时候还会派上用场,所以也把它放进“function.c”文件中。 1.function.c的代码#include……

电位器控制舵机

电位器控制舵机1.题目要求为了使ADC的知识能配合其他模块实现不同功能,这里我们打算通过扭动电位器(滑动变阻器)来控制舵机桨的位置,如果我们顺时针扭一圈电位器,那么舵机桨也会跟着从一端旋转到另一端。2.main.c……

简洁式串口通信

简洁式串口通信1.串口配置函数上一讲的讲解是让大家对《手把手教你学51单片机》文档的第十一章的第一个例程的辅助理解,我们没有写单片机接收电脑端发送回来的数据字节做处理的代码。因为这些都是IO端口模拟的串口通信,由于……

温度传感器代码解析Ⅰ

温度传感器代码解析Ⅰ温度传感器的读写时序原理跟红外遥控差不多,关于宋老师的lesson16_2例程的DS18B20.c的代码这里我们就不讲解了,《手把手教你学51单片机》文档第16章都已讲解明白。我们要讲解的是温度数值的……

定时时长的做法

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