51单片机,给P0.7~P0.0赋值1110 0001,如何编写使得1110中的0和0001中的1

51单片机,给P0.7~P0.0赋值11100001,如何编写使得1110中的0和0001中的1如何编写使得1110中的0和0001中的1分别在P0.7~P0.4和P0.... 51单片机,给P0.7~P0.0赋值1110 0001,如何编写使得1110中的0和0001中的1如何编写使得1110中的0和0001中的1分别在P0.7~P0.4和P0.3~P0.0之间不断左移,达到循环滚动的效果?(即1110 0001到1101 0010到1011 0100到0111 1000到1110 0001的情况)最好运用位移的方法实现 展开
 我来答
百度网友55fc1cd
2016-10-04 · TA获得超过616个赞
知道小有建树答主
回答量:213
采纳率:100%
帮助的人:248万
展开全部

希望采纳,参考代码:

#include<reg51.h>

void main()
{
    unsigned char i;
    while(1)
    {
        for(i=0;i<4;i++)
        {
            P0=(1<<i)|(~(1<<i)<<4);
            //延时n秒
        }
    }
}

 更简练的

while(1)
{
     P0=(1<<i)|(~(1<<i)<<4);
     //延时n秒
     i=++i%4;   
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
意法半导体(中国)投资有限公司
2023-06-12 广告
STM32F103是一款高性能的嵌入式芯片,由意法半导体(STMicroelectronics)公司生产。它是STM32系列芯片之一,具有紧凑、低功耗、高性能等特点,被广泛应用于嵌入式系统中。STM32F103的主要特点包括:1. 集成了A... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
zhxiufan
2017-10-24 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38375
国家科技进步奖

向TA提问 私信TA
展开全部
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV A,#11100001B

LOOP:
MOV P0,A

RLC A

PUSH ACC

MOV ACC.4,C

MOV B,A

POP ACC

MOV C,ACC.4

MOV A,B

MOV ACC.0,C

LCALL DELAY

SJMP LOOP

DELAY:
MOV R2,#200

DLY:
MOV R3,#250

DJNZ R3,$

DJNZ R2,DLY

RET

END
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式