单片机

结束语

结束语我们的教程到此就划上了一个完美的句号了,不过对于初学者来说,从串口的内容到后面的知识都是需要慢慢消化掌握的,不可能通过看我们几篇教程就能领悟所有的知识的,尤其是指针和内存之间的关系。程序的执行顺序也是……

温度传感器代码解析Ⅱ

温度传感器代码解析Ⅱ1.小于0度的转换我们知道当测量的实际温度为0度以下时,temp没转换时的情况为下图所示我们已经知道高5位为1表示的是负数,那么-0.5度的时候为什么是1111111111111000。负数的计算涉及……

指向数组的指针

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

呼吸灯

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

定时器&数码管扫描显示

定时器&数码管扫描显示1.定时器中断实现间隔切换在第六章第4讲的测试代码中提到过数码管微闪烁问题,这是由于三八译码器的IO端口切换的间隔时间不均匀导致,这部分的问题宋老师已经在《手把手教你学51单片机》文档6.4.2节有详……

数据类型强制转换

数据类型强制转换1.实用性改善为了使上一讲的功能更加完善,我们编写新的实用型的代码,效果是让数码管显示的数就是输入引脚高电平持续的微秒数,最高能捕获到999999微秒。如果高电平持续的时间超出这个取值范围,那么数码管……

输入捕获

输入捕获1.捕获高电平时间我们利用定时器0的计数功能实现捕获外部引脚的高电平时间。定时器在不同用法里有不同称呼,比如我们这次是想得知某段过程持续了多长时间,用定时器的计数方式的话就叫做计数器。我们这次选用的外……

代码参考

代码参考前面的篇章我们都是在普及知识,真正使用好定时器还是需要重新拟定新的书写方案的,我们参考了宋老师的书写方式,在他的代码基础上我们进行小修改成就实用的工程代码。1.代码解析void Co……

实践操作

实践操作上一讲的代码中,我们只需重点关注“UART_E2Write();”和“UART_E2Read();”,其他代码都与前几讲的“液晶屏与串口&r……

电位器控制舵机

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