找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

这段用单片机函数来实现流水灯的代码为什么只执行了一次,请各位看看

查看数: 1980 | 评论数: 8 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-12-14 14:23

正文摘要:

求助各位大佬,单片机源程序如下: #include <STC12C5A60S2.H> #include<INTRINS.h> void main() {         P0M0=0xff;         P0M1= ...

回复

ID:1055423 发表于 2022-12-14 20:01
cccc888 发表于 2022-12-14 19:26
改成这样,如图。

请问大佬为什么用temp储存和直接用io口不一样呢,求解答,麻烦你了
ID:1055423 发表于 2022-12-14 19:48
wulin 发表于 2022-12-14 19:03
延时函数要声明
#include
#include

抱歉,这是我从一个工程上弄下来的,有点小错误。。感谢的解答了
ID:258566 发表于 2022-12-14 19:26


改成这样,如图。
ID:213173 发表于 2022-12-14 19:07

P0=_crol_(P0,1);是循环左移,与<<不同。
ID:213173 发表于 2022-12-14 19:03
延时函数要声明
#include <STC12C5A60S2.H>
#include<INTRINS.h>

void delay(unsigned char count);

void main()
{
        P0M0=0xff;
        P0M1=0x00;//io口模式配置,删掉也一样       
        P0=0x01;//将共阴led第一个点亮
        while(1)
        {
                P0=_crol_(P0,1);//调用crol函数实现流水灯
                delay(500);
        }
}
//delay函数为count毫秒
void delay(unsigned char count)
{
        unsigned char i, j;
        while(count--)
        {
                i = 2;
                j = 239;
                do
                {
                        while (--j);
                } while (--i);
        }
}
ID:388929 发表于 2022-12-14 18:43
_crol_带循环 <<是位左移,后面补0
然后一直是0。。。
ID:1055423 发表于 2022-12-14 16:32
coody_sz 发表于 2022-12-14 15:39
不是执行了一次,是一直在执行,只不过后面P0输出的都是0x00。

大佬,细说?
ID:1034262 发表于 2022-12-14 15:39
不是执行了一次,是一直在执行,只不过后面P0输出的都是0x00。

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

Powered by 单片机教程网

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