单片机一个p1.0口怎么驱动多个LED灯
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/22 07:39:42
这里373不是做锁存器用,纯粹用来增加驱动电流,因为OE脚接高电平,这样373输出完全和输入一致.这样做,是因为51的驱动能力弱,当作为数码管位驱动时能力不够,位电流是所有的段电流之和,比如显示数字8
你外面加个上拉电阻理解就可以了
绿色的贴片发光二极管导通压降通常为为1.75-1.82V,电流约3-5mA,你的电路中二极管的电流约为(5-1.8)/1K=3.2mA.需要在74138后再加一个锁存器如74HC573,只有这样控制发
你可以使用第一:全局变量,如果P1工作,P0停止,.或者:定义P0口的同时,定义P1口,比方说原来是P0=255;delay();P0=128;delay();...改成P0=255;P1=255;d
“^”是取位符号,去P1口的第0位
P0需要加上拉,其他口不需要
P1=P1|0x80其实说白就是位操作.把第7位置1,通常写法P1|=0x80;位操作:P1&=0x80;把第7位置0P1|=0x80;把第7位置1P1^=0x80;把第7位取反,比如当前是0b100
单片机输出口都没有向片外输出大电流的能力(输出1时),但有较强的吸收电流的能力(输出0时),所以加上拉后,扩大了输出能力,但输出0时端口要吸收上从上拉电阻过来的电流,负荷较大,单片机易发热可靠性降低.
p1口是不用上拉电阻的,只有p0口要用,因为他是开漏机构,上拉电阻要10k吧
sbitKey1=P0^1;sbitKey2=P0^2;sbitKey3=P0^3;sbitKey4=P0^4;sbitLED=P2^0;#defineON1#defineOFF0unsignedch
P0口驱动共阳极数码管,不需要上拉电阻.只需要数码管阳极接电源正,P0.7--P0.0接数码管的dp--a,就可以驱动.单片机P0输出低电平点亮数码管.所说的上拉电阻指的是在信号线上接个电阻到电源上.
P1^0是表示用单片机上的第一个管脚.图片的意思是在使用仿真的时候,需要给相应的数组分配地址以实现合理的调用,dx516[3]这个数组就是定义在ROM的0x003b这个地址上
1 你没讲清楚具体的连线方式: 是IO口的 高电平驱动灯亮,此时二极管加限流电阻接地;还是IO的低电平驱动灯亮,此时二极管 加限流电阻接+5v.2学习51,数字
按照一个LED工作电流5mA计算,50个就是250mA,超出了绝大多数单片机IO口的输出能力(我还没见过能输出这个电流的单片机呢),因此必须使用晶体管、继电器、芯片等器件间接驱动.如果电源电压是5V,
变成的问题,是P1.0置1或者置0就行了,中间加个延时!
keil中无法直接使用二进制数,就是说你写的10101010是十进制.可以找个头文件#include,之后就能写P1=b10101010了
没研究过,这个你需要去看它的内部结构才行.P1口它内部已经有上拉电阻了,阻值是30K.书上说让P1、P2、P3(内部都有30K的上拉电阻)流出10~20mA,不容易!像驱动电机、继电器都需要驱动器的.
单片机的IO口高电平输出电流不大一般只有300~500uA左右,有的还不到300uA.如果只接一个1千欧电阻,测量电压时可能只有0.几V.所有当输入用时可以接一个按钮,按下时为0V.再问:我怀疑应该是
这是数码管的仿真图,用的 P0 & P2,换成 P0 & P1 也是可以的,在实际应用时 亮度 
1,图中的电路没有必要加R3及那12V电压.2,由于8051单片机输出高电平时是靠内部的上拉电阻提供电流,所以引脚输出的电流不会好大,所以没有必要在单片机I/o口与三极管基极间接一个电阻到地,即可以不