Arduino的定时器中断 – 基于库函数
2023-03-15 745浏览 0评论
Arduino 已经内置了闹钟,它们叫做定时器,可以设定 Arduino 隔多长时间干一件其他事情。不过,中断时间不能太长,否则会影响正常的工作。 可以调用millis()的方式来实现定时,但在程序中断有一个问题:占用CPU资源、效率不高、而且不准确...
2023-03-15 745浏览 0评论
Arduino 已经内置了闹钟,它们叫做定时器,可以设定 Arduino 隔多长时间干一件其他事情。不过,中断时间不能太长,否则会影响正常的工作。 可以调用millis()的方式来实现定时,但在程序中断有一个问题:占用CPU资源、效率不高、而且不准确...
2023-03-15 1564浏览 0评论
当你想让代码在一个固定的时间间隔后执行时,你可以很容易的用delay()函数来实现。但这只是让程序暂停一个特定的时间段。特别是如果你需要同时让处理器做其他处理时,这么做同时也是一种浪费。 这时候就是定时器(Timer)和中断(Interrupt)的用...
2023-03-15 396浏览 0评论
之前写过一个51单片机 – LED灯显示二进制代码,为了锻炼一下综合能力,这里又加了一些花里胡哨的效果进去。 这里提一下coding过程遇到的坑:在只有0和1两个状态的时候,或者说想使用取反运算符得到0或者1的时候,尽量选择bit形变量。如果使用了非...
2023-03-14 533浏览 0评论
KST-51的开发板P0口只能每次只能控制一个外设,我们这次要控制6个数码管和1组(8个)LED小灯,由于数码管和LED小灯都属于显示设备,所以我们可以用动态刷新的办法来“同时”点亮数码管和8个LED小灯。 本程序实现的效果:数码管从0加到255,相...
2023-03-14 418浏览 0评论
本程序代码为《手把手教你学51单片机》6.6的课后练习题5,并且已经在KST-51 v1.3.2开发板验证通过。 #include <reg52.h> sbit ADDR0 = P1^0; sbit ADDR1 = P1^1; sbit ...
2023-03-14 236浏览 0评论
本程序代码为《手把手教你学51单片机》6.6的课后练习题4,并且已经在KST-51 v1.3.2开发板验证通过。 #include <reg52.h> sbit ADDR0 = P1^0; sbit ADDR1 = P1^1; sbit ...
2023-03-14 382浏览 0评论
手撸一边代码,加深记忆。就不写注释了。使用的是51单片机的定时器0,进中断来刷新数码管。 #include <reg52.h> sbit ADDR0 = P1^0; sbit ADDR1 = P1^1; sbit ADDR2 = P1^2...
2023-03-14 435浏览 0评论
本程序代码为《手把手教你学51单片机》5.4的课后练习题5,并且已经在KST-51 v1.3.2开发板验证通过。 #include <reg52.h> sbit ADDR0 = P1^0; sbit ADDR1 = P1^1; sbit ...
2023-03-13 374浏览 0评论
一、C51扩展数据类型表 二、位型 C51扩展数据类型中主要有两种数据类型,一种为位型, 包括bit型和sbit型:另一种为特殊功能寄存器型,包括sfr型和sfr16型。 位类型数据用于访问51系列单片机中可以寻址的位,C51 中支持bit型和sbi...
2023-03-13 281浏览 0评论
本程序代码为《手把手教你学51单片机》5.4的课后练习题3,并且已经在KST-51 v1.3.2开发板验证通过。 #include <reg52.h> sbit ADDR0 = P1^0; sbit ADDR1 = P1^1; sbit ...