怎样用51单片机的8个I/O口来控制20个LED灯的亮灭,编写程序可以让任何一个或多个LED灯发亮(带电路图一份

作者&投稿:函梵 (若有异议请与网页底部的电邮联系)
请问一下,用单片机的8个I/O口来控制20个LED灯的亮灭。循环亮灭,硬件怎么设计、?最好有份电路图,谢谢您~

你用三个164可以接24个LED灯
每个164占用2个I/O

8个口就等同于8个二进制数,最多可以控制256个LED,可用与门的逻辑器件自己搭建解码电路。

哈哈,用8255扩展
一个8255扩展24个呢】

如果只剩下8个口了。或者有159,

要多详细?


用51单片机汇编语言控制8个发光二极管
KEY1 BIT P3.2 KEY2 BIT P3.3 ORG 00H MOV P3,#255 MOV A,#254 MOV P1,A continue:JNB KEY1,right JNB KEY2,left JMP continue right:RR A MOV P1,A ACALL DELAY JMP continue left:RL A MOV P1,A ACALL DELAY JMP continue DELAY:MOV R7,#250 LP2:MOV R6,#200 LP1:NOP ...

各位大侠 我的老师让我用51单片机设计3个分别是8位 16位 32位 的DI...
我用过8255A,是IO口扩展用的,他有一个8位数据口和一些控制口,可扩展成PA,PB,PCD三个IO口。因为是IC所以其中要对其进行写时序初始化,所以如果你是初学单片机的话不推荐使用。8155和8255类似。51中一个P口就是8位的,P0,P1,P2,P3.P0和P2可合用为16,P0为低8位,P2为高8位。不过要通过...

请问51单片机的8位CPU中的8位是指什么?是工作寄存器的8位吗?请大家一...
就是该型号或系列的CPU(电脑和单片机都适用)所处理的标准(超出要舍弃、忽略某些位,不足要扩展处理)字长(字节长度)是8位(二进制的位)可以这么等效,但最好不要这么理解

采用MCS-51单片机控制8只LED交替闪烁,具体要求如下(1)8只LED分别连接在...
很简单,void main(){ while(1){ P1=0xf0;delayms(500);P1=0x0f;} } delayms两个for循环搞定

51单片机用汇编语言实现八个LED的全亮全灭
;以89c51单片机为例,假定用P1控制LED:IO_LED EQU P1;led_0 BIT P1.0;led_1 BIT P1.1;led_2 BIT P1.2;led_3 BIT P1.3;led_4 BIT P1.4;led_5 BIT P1.5;led_6 BIT P1.6;led_7 BIT P1.7; ;定义开关LED的数据...

如何用51单片机控制(一个锁存器,一个译码器)8位数码管同时显示0~7_百...
位码全选,段码赋值零到七,每赋一次值延时一段时间

用51单片机的一个引脚驱动8个led,怎么加三极管进行放大电流?能给电路...
根据电压不同和LED种类不同,采用串联后并联的方法 如电压12V时,可用4个LED串联加限流电阻组成一组 再两组并联 若电源电压和单片机一样采用5V,只能2个串联,4组并联,并且如果LED工作电压超过2.5V,只能一组一个,白色或 蓝色LED2个串联需电压6V左右才会亮 ...

51单片机8个流水灯,一个按键从左到右,一个按键从右到左,用汇编语言
KEYR EQU P1.0\/\/改下端口 忘记 p3口 是低还是高了KEYL EQU P1.1LED EQU P0ORG 0000HLJMP MAINORG 000BHLJMP T0ISRORG 0030HMAIN: MOV TMOD,#01H MOV TH0,#HIGH(65536-50000) MOV TL0,#LOW(65536-50000) SETB ET0 SETB EA MOV A,#0FEH MOV LED,A MOV...

51单片机如何使用?
这样你就可以使用这款51单片机了。1单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51...

51单片机怎么用汇编语言让8个数码管不停的 显示0-9(最好要接74HC595...
要数码管不停显示,只能用动态显示,但是要看是单片机接数码管是哪个端口,还有是直接接在数码管上还是中间有寄存器,不知74HC595是接在哪的

惠城区13680381674: 用51单片机控制8个二极管依次点亮需要什么材料???然后该怎么做?
鲁制葆宫: 51单片机的IO加三极管就可以了用51单片机的某8个IO来驱动8个LD,想哪个亮就给哪个高电平,比如让第一个亮就赋值0X01, 我在上班,画了个建议的,你看看.

惠城区13680381674: 请问51单片机的I/O口外接8个独立的1瓦LED灯泡的电路应该怎么接?已有12V外接电源来驱动LED -
鲁制葆宫: LED的负极接IO口,例如:P1.0,正极接电源,根据情况接上限流电阻. 然后直接用KEIL软件编一个简单的程序 下载到51单片机上 即可实现.程序很简单 仅仅就是 赋值语句(高低电平)和循环语句.希望对你有帮助.祝你成功!!!

惠城区13680381674: 用51单片机的并行I/O口输出控制8个LED从LED1到LED8、再到LED1......,每次点亮 -
鲁制葆宫: 简单编了一下程序,,, #include<reg52.h> sbit key=P3^4; //按键,按实际再改 void delay(unsigned int t) { while(--t); } void main() { unsigned char q; P1=0xfe;//1111 1110 P1口led灯,实际不是再改 while(1) { P1=0xfe;//1111 1110 for(q=0;q<8;q++...

惠城区13680381674: 51单片机如何控制8个led程序 -
鲁制葆宫: #include<reg51.h> 包含单片机专用头文件 #include<intrins.h> 这个是什么俺也不知道,但这个程序不需要这个头文件 void Delay10ms(unsigned int c); 自定义的延时函数声明 main() 主函数 {unsigned int LED; 建立一个数值型变量,变量名...

惠城区13680381674: 利用AT89C51单片机结合8个发光二极管L0~L7,要求每间隔0.5秒依次点亮一盏 -
鲁制葆宫: 假设高电平点亮LED,LED接在P0口,主要程序语句如下: uchar c=0; uchar i; while(c<3) { for(i=0;i<8;i++} { P0=1<<i; DELAY_MS(500); } c++; } P0=0X00;

惠城区13680381674: 用51单片机汇编语言控制8个发光二极管 -
鲁制葆宫: KEY1 BIT P3.2KEY2 BIT P3.3ORG 00HMOV P3,#255MOV A,#254MOV P1,A continue:JNB KEY1,rightJNB KEY2,leftJMP continue right:RR AMOV P1,AACALL DELAYJMP continue left:RL AMOV P1,AACALL DELAYJMP continue DELAY:MOV R7,#250 LP2:MOV R6,#200 LP1:NOPDJNZ R6,LP1DJNZ R7,LP2RETEND

惠城区13680381674: 汇编语言,利用AT89C51单片机结合8个发光二极管L0~L7,要求每间隔0.5秒依次点亮一盏灯, -
鲁制葆宫: ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV R2,#3 MOV A,#0FEH LOOP: MOV P1,A LCALL DELAY RL A DJNZ R2,LOOP MOV P1,#0FFH SJMP $ DELAY: MOV R3,#10 DLY1: MOV R4,#100 DLY2: MOV R5,#250 DJNZ R5,$ DJNZ R4,DLY2 DJNZ R3,DLY1 RET END

惠城区13680381674: 51单片机中,用八个开关控制一个7段数码管,按一个开关显示一个数,用C语言怎么编程 -
鲁制葆宫: sfr key=P1;//定义八个开关接单片机的p1口的八个引脚,int suma[9]={0x3B,0x4D,,,};//根据数码管的驱动芯片接入单片机接口,查表输出要显示的数字,其中第九个为不显示即清空显示.unsigned char Scankey() {int i,j; i=key; if(key!=0xFF...

惠城区13680381674: 80C51单片机:把一个8位二进制数的各位用 -
鲁制葆宫: unsigned char i,j; j=0x01; for(i=0;i<8;i++){if(byte&j)ram[i]=0x31;elseram[i]=0x30;_crol_(j,1);}

惠城区13680381674: 通过AT89C51单片机控制8个发光二极管发光,实现暗点以1HZ频率由低位到高位循环移动 -
鲁制葆宫: 1HZ就是1秒,AT89C51,你硬件连接的时候把8个发光二极管放在P2口上,晶振用11.0592M的.#include <reg52.h> int ms,tag; void delay_ms(unsigned int ms_number) //ms_number=500,延时1秒 { unsigned int i; unsigned char j; unsigned ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网