标题:
初学者不太懂,单片机流水灯p2++什么意思啊?
[打印本页]
作者:
dsfdwf
时间:
2020-8-27 13:50
标题:
初学者不太懂,单片机流水灯p2++什么意思啊?
单片机流水灯p2++什么意思啊
批注 2020-08-27 134754.png
(62.54 KB, 下载次数: 53)
下载附件
2020-8-27 13:48 上传
为什么按下独立键盘后8个灯全亮啊,能告诉我运算过程吗?
作者:
lovezjf234
时间:
2020-8-27 15:42
写P2++的人本身就不知道怎么去控制P2通道上的信号,P2++也没啥意思,就是单位+1。
作者:
塞北江南
时间:
2020-8-27 15:53
资料不够全,可以将代码都放上来,
作者:
山水间
时间:
2020-8-27 15:59
p2++的意思在这里是p2端口的寄存器值每按一下P3.1上的独立按键就加一,至于按一下独立按键灯全亮,你的程序不完整,也没有电路图,不好回答呢。我猜测LED应该是连接在P2口上,按一下独立按键P2+1,P2的值刚好是0xff(我猜测是共阴)。
作者:
Conlin不喝饮料
时间:
2020-8-27 19:30
你这代码不全啊。
作者:
hantu
时间:
2020-8-27 19:40
P2++就是P2=P2+1
作者:
mengzhixinheng
时间:
2020-8-28 09:57
逻辑都有问题,有什么好追究的呢!!!
作者:
1255230
时间:
2020-8-30 00:47
跟a++是一个意思,代表这个数每循环一次就加一
作者:
Xiyo
时间:
2020-9-2 15:43
循环一次P2单位加一,也就是说到了这步就要P2=P2+1,你这代码前面也不全,不知道P2的初值。
作者:
梁廷明
时间:
2020-9-4 17:11
P2+1,P2的寄存器数值加1
作者:
TTQ001
时间:
2020-9-5 10:24
就是P2自加1
作者:
jinsheng7533967
时间:
2020-9-5 12:03
本帖最后由 jinsheng7533967 于 2020-9-5 12:31 编辑
你程序本身就有问题,不要说你按键按下了P2的8个灯全亮,你就是没按也是全亮!因为51单片机你初始化时
P1,P2,P3高电平
另外你的按键是没有起到作用的,也就是说P2更本没有++
下面是正确代码与仿真
#include <REG52.H>
#define uint unsigned int
#define uchar unsigned char
sbit k1=P3^1;
void delay (uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=112;j>0;j--);
}
void main()
{
P2 = 0;;
while(1)
{
if(k1 == 0)
{
delay(10);
if(k1 == 0)
{
while(k1 == 0);
P2++;
}
}
}
}
开关控制流水流.rar
(17.32 KB, 下载次数: 10)
2020-9-5 12:31 上传
点击文件名下载附件
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1