单片机

带返回值的函数

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

延时1秒

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

电位器控制舵机

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

呼吸灯

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

按键猜想

按键猜想当然按键的功能不是像前两讲的代码这么单调,前两讲的代码是认识到程序中寄存器位的值是可以受外部电路影响而改变的。这一讲我们要做的就是根据前两讲的知识不断探索按键的一些规律和原理。 1.……

多个数码管显示

多个数码管显示1.余晖效应流水灯如果在流速太快的基础上再加速,那么我们看到的则是一排灯都在亮着,这就叫人眼的余晖效应。同理,我们想让多个数码管同时亮,那么就要让三八译码器的IO0~IO5每个输出引脚轮流快速切换出低……

IIC入门代码讲解

IIC入门代码讲解因IIC时序细节的理解不是一两篇文章就能描写清楚的,这里笔者只针对《手把手教你学51单片机》文档第14章内容做补充辅助理解,如果大家想彻底弄明白IIC的所有通信细节过程,那么就需要“好事多……

第一阶段的总结

第一阶段的总结我们的第一阶段的单片机学习在这里就成为一个过渡了! 我们虽然没有运用很多的C语言知识,都是用简单的基础知识反复运用加深印象。说到底,单片机终归还是偏重于软件多一点,怎样巧妙的编程还需……

程序点灯

程序点灯1.头文件在#include<reg52.h>头文件中,把单片机中的寄存器地址封装起来定义成宏供我们调用,寄存器这个概念我们初学先不用太深刻的去理解它,在《手把手教你学51……

中断的实验现象

中断的实验现象1.卡顿的流水灯我们用一个实验现象来再一次理解中断函数。在主函数里我们使八盏灯不停地左右快速流水,此时若是被外部因素触发了中断函数的执行,我们就在中断函数里实现蜂鸣器响一下,看看此时主函数里的流水灯是……