利用定时器T1产生定时时钟,由P1口控制8个发光二极管使8个灯依次闪烁,闪烁频率10次/秒,循环 - 用定时/计数器t1定时50ms,晶振频率取12mhz,定时器初值为3cb0h,采用中断方式,用变量计数中断次数.p1口控制8个发光二极管

(2)请用定时器T0,工作方式1,通过中断来实现两灯状态切换的1s延时。ORG 0000H LJMP MAIN ORG 000BH MOV TL0, #(65536 - 50000) MOD 256 ;50ms@12MHz MOV TH0, #(65536 - 50000) / 256 DJNZ

//sbit d1=P1^0;void main(){ TMOD=0x10; //选择定时器 t0的工作方式为1 EA=1;TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET1=1;TR1=1;aa=0xfe;while(1){ if(tt==2){ tt=0;P1=aa;aa=_crol

;假设晶振12MHZ,P1控制8个LED低电平亮 ;启动入口=== ORG 0000H;复位启动 AJMP START;ORG 001BH;T1中断 AJMP T1INT;;定义变量=== YSJSEQU 30H;延时计数器 LEDEQU 31H;LED控制缓冲器 ;主程序=== START:MOV LED,

LED负极接单片机IO口,本程序接P1,低电平点亮 include //52系列单片机头文件 include define uint unsigned int //宏定义 define uchar unsigned char void delayms(uint); //声明子函

这就是典型的8个LED的流水灯,并用定时器来控制点亮的时间。可用定时器定时50ms,采用中断方式,对中断计数40次就是2s,每到2s移动点亮下一个LED灯。可先画出仿真图再写程序,如下所示仿真图。

设计一个8灯闪烁的控制电路,系统晶振为12MHZ,编程实现8灯轮流闪烁,每盏灯点亮时间为2s?

用两个74LS194和一片74LS74实现四位二进制的加法是高难题,建议,问问老师或者同学,就会得到相关帮助,或查找相关资料。

1、霓虹灯广告屏装置PLC 控制梯形图的设计与调试, 该广告屏共有8根灯管,24只流水灯,每4只灯为一组。霓虹灯广告屏装置PLC 2、控制要求:: Ⅰ341212345678Ⅳ56789 (1)该广告屏中间8根灯管亮灭的时序为:第1根亮→

请看附图, 用二个 74LS194 完成的 流水灯, 有用 Multisim 11 仿真过了, 确定可行 所有 TTL 的电源脚(VCC 和 Ground)都没画出来, 都要接到,否则实做不会动作 LED 灯亮的方式是 1 0 0 0 0 0 0 0 0 1 0

要做流水灯,最少需要3个灯,才能产生流动的效果,而用4个更好,流动的花样有多种。而制作只有两个灯的,就不会产生流动的效果,因为两个灯交替点亮,效果是两个灯的跳动闪烁的效果。要用74LS74做,很简单,把D端接

一个74LS138不行,要三个,一个只有8个输出,控制8个灯。555制作定时电路,74LS74可制作74LS138片选电路。

8盏灯可进行多种花样组合,内容自行选定。设计的任务要求采用边沿JK触发器(74LS112)、D触发器(74LS74)和3-8线译码器(74LS138)构成一个广告流水灯电路。要求系统共有8个灯,其效果始终是7亮1暗,且这1暗灯循环下移或者

74ls74 D触发器组成模7加法器,三位输出ABC=000,100,010111,将ABC接到74ls138三个输入端就可以完成所要求电路。

设计8灯的广告流水灯时,能否用一片74LS74及74LS138实现

可以用for循环试试unsingned char i;for(i=0;i<5;i++)//流水灯闪烁程序。若干个灯泡依次点亮就叫流水灯,它用在夜间建筑物装饰方面。例如在建筑物的棱角上装上流水灯,可起到变换闪烁美不胜收的效果。单片机(Single-

( 1 ) LED LED灯驱动程序,两种演示方式 ( 2 ) SMG 数码管驱动程序,循环滚动显示数字1-6 ( 3 ) 1602 1602液晶驱动程序,除正常显示ASCII码外,还教如何显示中文 ( 4 ) 12864 12864液晶驱动程序,显示汉字和图形。

while(1){ P3=0xfe;//第一个灯亮 delay();//延时 P3=0xfd;//第二个灯亮 delay();P3=0xfb;//第三个灯亮 delay();P3=0xf7;//第四个灯亮 delay();P3=0xef;//第五个灯亮 delay();P3=0xdf;//第六

1选用合适的单片机和LED灯,将它们连接在电路板上。2在单片机程序中编写代码,控制LED灯的亮灭状态。3在代码中指定LED灯的亮灭顺序,以及延时时间。通常采用循环结构进行控制。4在将代码烧录到单片机之后,启动实验,即可看到

怎样用单片机做一个简单的流水灯?

MAIN: MOV P1,#0FFH LCALL DELAY MOV R1,#0 MOV DPTR,#TAB MAIN1: MOV A,R1 MOVC A,@A+DPTR MOV P1,A LCALL DELAY INC R1 CJNE R1,#8,MAIN1 AJMP MAIN DELAY: MOV R4,#08H DL01: MOV R3,#74H DL

} } //主程序 void main(){ uint s;while(1){ P0=0xfe;DelayMS(150);for(s=8;s>1;s--){ P0=_crol_(P0,1); //P0 的值向左循环移动 DelayMS(150);} P0=0x00;DelayMS(150);p0=0xff;DelayMS(150);

用移位操作,首先把P1口赋值,然后向右移位,判断是否移到最后移位,如果不是,一直移位,如果是,则反向移位,判断是否移位到第一位,如果是则循环到右移,具体代码就自己写了。代码不难,我只是记不清楚具体定义了。

void delay(uint); //声明延时函数 void main(void){ uint i;uchar temp;while(1){ temp=0x01;for(i=0;i<8;i++) //8个流水灯逐个闪动 { P1=~temp;delay(100); //调用延时函数 temp<<=1;} temp=0x80;

int i = 8; //循环次数为8 void main(){ P1 = 0xff; //初始化LED,8个LED全灭,(假设低电平点亮)init_t0() ;while(1); //循环等待定时中断 } void init_t0() //定时器0初始化程序 { TMOD = 0x0

假设P1接8 个LED,高电平时LED点亮,主程序如下:void main(void){ uchar i;while(1){ for(i=0;i<7;i++){ P1=1<>i;delay_ms(500);} } }

P3=0xfe;//第一个灯亮 delay();//延时 P3=0xfd;//第二个灯亮 delay();P3=0xfb;//第三个灯亮 delay();P3=0xf7;//第四个灯亮 delay();P3=0xef;//第五个灯亮 delay();P3=0xdf;//第六个灯亮 delay

用c语言编写单片机流水灯程序,(8个发光二极管从左至右循环点亮)

程序如下:ORG 0000H;程序开始 AJMP MAIN;跳转到主程序MAIN ORG 0030H;主程序从030H开始 ;以下是主程序 MAIN: MOV P0,#0FEH;P0.0灯亮 ACALL DELAY_05s;延时0.5s MOV P0,#0FDH;P0.1灯亮 A

这个其实可以用一个时钟来做8bit的计数器,8个bit的输出结果就是的8路流水灯。module ex(input clk , output reg [7:0]cnt ,input rst );always (posedge clk or neg edge rst )if (!rst )cnt <=0;else c

// 设置初始值 else led_set <= {1'b0,led_set[7:1]}; // led 依次移位 endend 下面给一个 led 流水灯的实例:8个LED 从左到右依次点亮 module led ( input wire Clock, input wire RESE

module LED_Module(Clock,LED_Data_Port);input Clock;output LED_Data_Port;reg [7:0] LED_Data_Port; //LED数据口 reg [3:0] led_d; //LED显示数据 //=== integer cnt_led;//=== always @(posedge

reg [24:0] count;//计数器 reg [24:0] speed;//速度 reg [3:0] state;//状态,[3]=1:正转;[3]=0:翻转;{2,0}速度 always @(posedge clk or negedge rst)//自动变频流水灯 if (!rst)begin statelt;

如何用verilog写8个流水灯

你好,下面是对应的代码,另外时钟的频率不要太高否者实际的那个灯可能会看不来。 module show(clk, reset, ledLight) input clk,reset; output [9:0] ledLight; reg [10:0] count ; always @(posdge clk or negedge reset) if (!reset) count =0; else if (count ==10) count =1; else count = count +1 assign ledLight[0] = (count ==1)? 1 :0; assign ledLight[1] = (count ==2)? 1 :0; assign ledLight[2] = (count ==3)? 1 :0; assign ledLight[3] = (count ==4)? 1 :0; assign ledLight[4] = (count ==5)? 1 :0; assign ledLight[5] = (count ==6)? 1 :0; assign ledLight[6] = (count ==7)? 1 :0; assign ledLight[7] = (count ==8)? 1 :0; assign ledLight[8] = (count ==9)? 1 :0; assign ledLight[9] = (count ==10)? 1 :0; endmodule
module ledwater(clk,led,s) input clk; input[1:0]s; output[7:0]led; reg [7:0] led=0; reg [1:0] olds=0; always@(posedge clk) olds<=s; always@(posedge clk) if (olds^s) case (s) 2'b00: led<=1; //*a 2'b01: led<=1; 2'b10: led<=8'b1010_1010; 2'b11: led<=8'b0000_0111; endcase else case (s) 2'b00: led<={led[6:0],led[7]};//*b 2'b01: led<={led[0], led[7:1]}; 2'b10: led<=~led; 2'b11: led<={led[6:0],led[7]}; endcaseendmodule//第一种:一个灯亮,从右往左逐个移动,并循环//第二种:一个灯亮,从左往右逐个移动,并循环//第三种:一个间一个灯亮,并交替循环//第四种:三个灯亮,从右往左逐个移动,并循环//当然可以再多一些花样://如:灯从右往左逐步点亮// *a改为: led<=1;// *b改为: led<= (&led)? 1: {led[6:0],1'b1};
74ls74 D触发器组成模7加法器,三位输出ABC=000,100,010......111,将ABC接到74ls138三个输入端就可以完成所要求电路。
脉冲器设计与故障分析 正压泥浆脉冲器也是MWD心脏,也是机械核心,因为使用环境较特别,对其可靠性自然不言耳语。市面仿海蓝脉冲器居多。在实践中,通过长时间的观察与思考,发现还是有设计缺陷,脉冲器动铁芯在瞬间拉起时,由于电磁阀内的行程,势必造成磁场距离,跟力量的强弱关系。所以起步的初始磁力是最薄弱,结果造成动铁芯要靠爆发力瞬间拉起负重,虽然电容短节电流在初始拉起峰值可以提高到400mA这也许是钽电容特有的电位差,跟离子浓度快速变化关系,这中关系能弥补初始靠爆发力,而力量不足现象,非常适合机械起步力量需求。 如果再能考虑机械动态的柔韧性效果会更好,让后芯杆通过结构附加一定柔韧性,好比自行车辐条与车圈那种结构实现动态的柔韧性,就是让这种硬结构也能实现钢丝绳的韧性,可以有效缓冲靠爆发力拉起阀头。而且强度要稳定可靠,应不会影响泥浆流速。在频繁拉起动作中,让其使用周期性更可靠。另外对电容短节使用技术参数有所足进作用,当负载被逐步均匀加力·加速拉起时,使机械起步时的大电流需求都有所改观,让其电压和电流保持在有效的比值范围内,这对于动态阻值的电容节更有积极作用。而目前设备动态柔韧性是选择不同金属间物理特性来实现,如金属晶体密度及硬度。从实践观察效果并不理想。最终的效果就像一部汽车在最短的时间里把速度提到极致,而决非用三档直接起步.另外制动如何消除负重惯性,也是不太理想,下面着重谈谈这个问题! 动铁芯的制动结构问题比较突出。让动铁芯及组件在运动过程中就失去垂直平衡运动轨迹,当芯杆受到磁力拉起到行程限位时,就受到不对称的外力,好比汽车在行进中靠单面轮制动,自然就不是平稳的.那么会让芯杆及弹簧组件形成二个不同的抛物线。当芯杆受到动铁芯磁力的作用下,使芯杆跟弹簧组件产生大小差异的抛物线,在惯性的作用下,弹簧组件重量顺着抛物线有个挤压弹簧过程。这个过程使芯杆跟弹簧组件直接产生摩擦。另外也让动铁芯在线圈内套有限间隙范围内,受到芯杆弹性影响下,使动铁芯在较短时间内难以恢复自然垂直平衡状态,在频繁五秒的动作和长时间的作用下,就会让动铁芯磨损出现偏磨现象,偏磨自然就会拉伤动铁芯表面,最后致使动铁芯抱死非常多。这个过程对机械性能影响非常大.原设计采用这种单面制动结构主要考虑芯杆拉起后受到负重惯性的危害,为了缓冲这种危害,所以当芯杆发生弯曲时,负重自然打了折扣.单面制动形成的抛物线也有同样道理.限位使结构变形对负重的惯性有缓解作用. 好像汽车没有ABS刹车系统,负重惯性绝对不是平稳.何况还是单面制动.如果能把芯杆动作的柔韧性从份在结构上体现出来,就可以克服目前这个单面制动局面.能使动铁心在有效的间隙范围内能保持平衡垂直运动轨迹,这对产品使用周期应该有比较大的改善.相信通过改变限位结构及芯杆的柔韧性结合的方法,提高机械的实用性及可靠性 ,完全可行! 以上只是个人结合现实与理论的分析,应该能做到工作还非常多.愿通过努力实线设备使用性能更合理化!
LED负极接单片机IO口,本程序接P1,低电平点亮 #include //52系列单片机头文件 #include #define uint unsigned int //宏定义 #define uchar unsigned char void delayms(uint); //声明子函数 uchar aa; void main() //主函数 { aa=0xfe; //赋初值11111110 while(1) //大循环 { P1=aa; delayms(2000); //延时2秒 aa=_crol_(aa,1); //将aa循环左移1位后再赋给aa } } void delayms(uint xms) { uint i,j; for(i=xms;i>0;i--) //i=xms即延时约xms毫秒 for(j=110;j>0;j--); }
; ORG 0000H LJMP MAIN MAIN: MOV TMOD, #01H MOV TH0, #(65536 - 62500) / 256 MOV TL0, #(65536 - 62500) MOD 256 SETB TR0 M_LOOP: MOV A, #127 MOV R3, #0 OUT: MOV P1, A INC R3 CJNE R3, #60, NEXT ;不到60, 就去流水 CPL F0 ;到了, 就改变方向 SJMP M_LOOP ;从头开始 ;---------------------------------- NEXT: MOV R2, #16 WAIT: JNB TF0, $ MOV TH0, #(65536 - 62500) / 256 MOV TL0, #(65536 - 62500) MOD 256 CLR TF0 DJNZ R2, WAIT ;不到一秒就转移 JB F0, LLL ;选择左右方向 RR A SJMP OUT LLL: RL A SJMP OUT END 上述程序已经得到验证。