单片机编程实例400例大全(1-100)
//多位数码管分别显示不同数字,这种扫描显示方式成为动态扫描,并不停变化赋值//当高位值为0是不显示该位,即消隐,如数字0010,实际显示为10,前2位0不显示---*/#include//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#defineDataPortP0//定义数据端口程序中遇到DataPort则用P0替换sbitL...
《手把手教你学51单片机-C语言》之六 中断与数码管动态显示
总时间就变成了1ms+本段程序运行时间,于此同时,其它的数码管就熄灭了5ms+本段程序运行时间,如果这段程序运行时间非常短,那么可以忽略不计,但很明显,现在这段程序运行时间已经比较长了,以致于严重影响到视觉效果了,所以我们要采取另外一种思路去解决这个问题。
NE555作振荡器电路测定脉冲频率原理
当电容电压升至VCC的2/3时输出脉冲停止。根据实际需要可通过改变RC网络的时间常数来调节脉宽。输出脉宽t,即电容电压充至VCC的2/3所需要的时间由下式给出:虽然一般认为当电容电压充至VCC的2/3时电容通过OC门瞬间放电,但是实际上放电完毕仍需要一段时间,这一段时间被称为“弛豫时间”。在实际应用中,触发源的...
基于proteus的步进电机控制
速度值要求在数码管上显示出来。1、要求分析按上面的分析,改变转速,只要改变P1.0~P1.3轮流变低电平的时间即可达到要求,这个时间不应采用延时来实现,因为会影响到其他功能的实现。这里以定时的方式来实现。下面首先计算一下定时时间。按要求,最低转速为25转/分,而上述步进电机的步距角为7.5,即每48个脉冲为1周...
红外通信—红外遥控器NEC解码程序
unsignedcharLedBuff[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};//数码管显示缓冲区unsignedcharthr0,tlr0;voidConfigTimer0(unsignedintxms);voidConfigTimer1();voidmain(){ConfigTimer0(1);//定时1msConfigTimer1();...
单片机红外通信的原理和教学实例
delay(100);//间隔一段时间扫描P0=0x00;//消隐}}voidIrInit(){IT0=1;//下降沿触发EX0=1;//打开中断0允许EA=1;//打开总中断IRIN=1;//初始化端口}voidmain(){IrInit();while(1){DisplayData[0]=smgduan[IrValue[2]/16];...
《自考不难》之四:具体课程学习方法篇(1)
1.执行一条指令所需要的时间称为指令周期2.一个CPU同外部设备和内存储器之间进行信息交换过程所需要的时间称为总线周期3.时钟脉冲的重复周期称为时钟周期4.一个指令周期由若干个总线周期组成,一个总线周期又由若干个时钟周期组成5.8086CPU的总线周期至少由4个时钟周期组成...
4 x 4 矩阵键盘识别实例分析
while(1)//不断循环{GetKey();//扫描键盘m=Mykey/10;//取出键值的高位n=Mykey;//取出键值的低位P3=0X00;//数码管消隐P2=num[m];P3=0X01;//显示键值高位P3=0X00;//数码管消隐P2=num[n];P3=0X02;//显示键值高位}}...