首页 >>  正文

单片机8个移位流水灯代码

来源:baiyundou.net   日期:2024-08-23

刁廖残3513如何用单片机实现流水灯,从一依次亮到八,再从八依次亮回一,一直循环? -
冉茗逄19597876898 ______ 有个想法, 放一个字节LED做标志位,可位寻址. 每一位代表一个灯. 对字节LED附初值1,做一个200mS的时钟,每200ms对字节LED值做左移1位指令(汇编可循环). 主程序中位寻址判断字节LED的bit(0-7)点亮相应的灯.或者直接P0=LED 纯想法、还没试过,感觉好玩,呵呵. 好像上述灯流的方式不对,不过可以改...

刁廖残3513c51单片机流水灯显示花式程序,作业求详细 -
冉茗逄19597876898 ______ 都11点多了看到你的帖子,没有问回答这个作业很简单,我给你花5分钟时间写一个例子,我是用单片机P0口8位LED,具体程序如下: #include "REG52.H" // 显示花样流水灯编码 const unsigned char Expetr_ROM[] = { 0xFE, 0xFD, 0xFB, 0...

刁廖残351351单片机双键控制八位流水灯C程序 -
冉茗逄19597876898 ______ #include<reg51.h> #define uchar unsigned char uchar num,flag=0; sbit K1=P1^0; sbit K2=P1^1; void t0isr() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; num++; if(num>=20) { num=0; flag=1; } } main() { uchar LED; TMOD=0x...

刁廖残3513单片机的各种编程程序 比如流水灯 -
冉茗逄19597876898 ______ //实例:使用P0口流水点亮8位LED #include<reg51.h> //包含单片机寄存器的头文件 /******************************************************* 函数功能:主函数 ********************************************************/ void main(void) { while(1) { P0=0xfe; //第...

刁廖残3513单片机中流水灯如何控制 -
冉茗逄19597876898 ______ 单片机中流水灯控制:硬件连接很简单,只要将8个LED指示灯接在P1口上 另一端通过220欧姆的电阻接+5V电源上,就可以了.主要靠软件控制,简单的可以使用左移或右移指令,将低电平0 逐渐移入寄存器中,即控制LED指示灯逐渐一个一个地点亮或一个一个地熄灭.复杂点: 可以进行花式流水控制.例如: 可以由两边逐渐向内点亮 然后再由内逐渐向外一个一个熄灭. 还可以由由内逐渐向两边内点亮 然后再由两边渐向内逐一个一个熄灭.在程序的实现上 可以把各种花式流水的P1口亮灭状态字 事先定义成数组 然后每隔一定的时间 取出送P1口显示. 呵呵 俺只提供给你一个号的算法 程序就自己动手自立更生.

刁廖残351351单片机c语言编写一个流水灯程序,要求如下(不能用数组,8个led指示灯从两边往中间移动,然后再分开) -
冉茗逄19597876898 ______ 简单点的,用表格,事先计算好,放到ROM中,用的时候逐行编译输出就可以. 复杂点的,开一个缓冲区,用循环程序,根据花样的不同,每次填充一行,并输出,然后再计算一下行.除非表格太大,不建议这样用. #define len 8 char tablelist[][len] = { "", "", "", "", "", } outline( char * s ) { int i; for(i=0; i{ if ( s[i] == '0' ) { // 对应的灯亮 } else { // 对应的灯灭 } } } main() { for(;;) { outline( tablelist[i]); delay(..); } }

刁廖残3513单片机8个灯右移的程序 -
冉茗逄19597876898 ______ 先说电路接法,将8个LED灯的阳级接5V,阴级串接1K电阻接到单片机的输出端口(以89c51为例),比如接P1口,程序 mov R0,#8 CLR P1.7 LOOP: MOV A,P1 RRC A ;可以加一段Delay程序 djnz r0,loop

刁廖残351316单片机用八位学号控制流水灯的程序 -
冉茗逄19597876898 ______ 低电平点亮 START:MOV R0,#8 MOV R1,#8 SETB C MOV A,#0FEH MOV P1,A S1:RLC A CALL DELAY MOV P1,A DJNZ R0,S1 SETB C MOV A,#0FEH MOV P2,A S2:RLC A CALL DELAY MOV P2,A DJNZ R1,S2 AJMP START DELAY:MOV R5,#0FFH //改变值变延时时间 LOOP2: MOV R4,#0FFH//改变值变延时时间 LOOP1:DJNZ R4,LOOP1 DJNZ R5,LOOP2 RET END

刁廖残3513用c51程序编写8个流水灯程序低电平灯亮 高电平灯灭 -
冉茗逄19597876898 ______ #include<reg52.h> unsigned char MAIN_Buf[] = { 0xFE, 0xFD, 0xFB, 0xF7, 0xEF, 0xDF, 0xBF, 0x7F, }; void Delay_1ms(unsigned int Time) { unsigned int x,y; for(x = Time; x > 0; x--) for(y = 120; y > 0; y--); } int main(void) { unsigned char i; ...

刁廖残3513用AT89C51单片机的P2口控制8个Led的流水灯的C程序看不懂? -
冉茗逄19597876898 ______ #include void Delay1ms(unsigned int count) /*延时函数,延迟时间为count*1ms)*/{ unsigned int i,j; for(i=0;i<count;i++...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024