
STM8单片机对温湿度传感器DHT11的驱动设计-二 贴上关键代码以及分析
//复位DHT11
voidDHT11_RST()
{
TIM4_CR1=0x00;//关闭定时器
TIM4_CNTR=0;//保证下次的第一个数据位的准确
DATA_SET;//ODR设置为1
DATA_OUT();//推挽输出模式,此时输出高电平
DATA_CLR;//此时处于主机输出模式,总线拉低
TIM2_Delayus(20000);//拉低20毫秒
DATA_SET;//释放总线
TIM2_Delayus(40);//释放总线以后等待40微秒DHT会发出响应信号

51单片机对闪烁灯的控制设计-作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁时间间隔为0.2秒,相对于微秒来说,相差太大,所以我们在执行某一指令时,插入延时程序,来达到我们的要求。

STM32单片机使用定时器中断方式实现毫秒级延时的设计-因为STM32 HAL库中仅有对HAl_Delay()毫秒级的延时,为实现精确的微秒级延时,就不得不修改Systick,但由于HAL库内部使用其作为超时判断等操作,对其修改会发生不可预期的错误,不建议修改。因此,使用通用定时器进行定时操作。

浅析单片机的周期关系和定时器原理-时钟周期也叫振荡周期或晶振周期,即晶振的单位时间发出的脉冲数,一般有外部的振晶产生,比如12MHZ=12×10的6次方,即每秒发出12000000个脉冲信号,那么发出一个脉冲的时间就是时钟周期,也就是1/12微秒。通常也叫做系统时钟周期。是计算机中最基本的、最小的时间单位。

#includeio8515.h>/*======================================微秒级精确延时函数,晶振8M:Delay=0.125*((tt*4-1)+9)微