找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

我想点亮第三个LED程序怎么写。

查看数: 9753 | 评论数: 21 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-4-10 15:30

正文摘要:

我是初学者想要答案。

回复

ID:188531 发表于 2017-4-11 16:56
那要看你用什么单片机,一般将你与LED连接的脚注1
ID:74868 发表于 2017-4-11 16:29
可以首先设置I0通过IO控制LED
ID:137408 发表于 2017-4-11 12:23
可以位定义setb   P1.2
ID:188365 发表于 2017-4-11 10:05
将P1口全部置低电平,然后P0口将哪个引脚置高对应的那个灯就会亮
ID:184498 发表于 2017-4-11 10:03
谢谢以上各位朋友的热心帮助,我用你们的程序实操了一下。实现了我想要的效果!
ID:188336 发表于 2017-4-11 08:58
你应该看看驱动怎么使用
ID:171948 发表于 2017-4-11 03:22
你那个电路图,也看不出led具体接在74hc573的那个脚。
ID:188209 发表于 2017-4-10 20:18
void main()
{
  P1 = 0x04;
}
ID:188186 发表于 2017-4-10 19:37
直接把sbit led=p1^3,把P1=0xfd去掉就行了
ID:47286 发表于 2017-4-10 19:09
本帖最后由 dzbj 于 2017-4-10 19:12 编辑
yxf20170329 发表于 2017-4-10 16:33
前面图子错了。这张才是。

干嘛弄这么复杂啊 看都看晕了 刚才回的不算

程序里你把led指定到P1.1上了 你操作led等于只操作P1.1啊
两个方法


1. 分别定义8个led
sbit led0=P1.1;
.......
sibt led7=P1.7;

void main()
{
led0=0;
...
led7=0;

while(1)
{
led(0~7之一)=1;
led(0~7之一)=1;
led(0~7之一)=1;
}
}
就是三个亮

另外一个方法是
sibt led=P1;  //直接写P1=xxxx不就行了 干嘛非弄个led名呢

void main()
{
led=0x00;      //全关
while(1)
{
led=0x07;   //高位在左低位在右 用win的计算器 程序员模式 2禁止到16禁止自己转换
}
}
ID:47286 发表于 2017-4-10 18:59
yxf20170329 发表于 2017-4-10 16:33
前面图子错了。这张才是。

你是用单片机推led 对吧

看你画的图 P0.0对 LED-BLUE 对么

如果让上面3个亮 最高位在左 最低位在右 就是1110 0000=0xe0
如果让下面3个亮 最高位在左 最低位在右 就是0000 0111=0x07

你想让水亮 按上面的例子给P0口赋值就可以了 比如 1010 1000=0xa8 也是3个亮

你这图画的 看着是真费劲啊。。。。。。。。
ID:182942 发表于 2017-4-10 18:28
不懂你那个573芯片是干嘛用的,本来可以很简单的一个电路,为啥要搞那么复杂,直接上拉电阻,p1.2=0,反正我是那么接的
ID:157238 发表于 2017-4-10 17:33
0xdf你试一下
ID:188110 发表于 2017-4-10 16:54
第二个灯应该是 0xFD吧
ID:172431 发表于 2017-4-10 16:45
灯亮   灯灭
ID:184498 发表于 2017-4-10 16:15
不行呀还是第一灯亮呀。
ID:184498 发表于 2017-4-10 16:11
好的我试一下。
ID:186936 发表于 2017-4-10 16:08
16进制发   0xfb

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表