找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1434|回复: 3
打印 上一主题 下一主题
收起左侧

为什么这个程序不可以

[复制链接]
跳转到指定楼层
楼主
ID:275404 发表于 2018-5-29 13:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#include<intrins.h>

void Delay( unsigned int t);
void one(unsigned char time);
void two(unsigned char time);

void Delay(unsigned int t)
{
        while(--t);
}

void one(unsigned char time)
{
        unsigned char i;

        for(i=0;i<8;i++)
        {
                P1<<=1;
                Delay(time);

                P3<<=1;
                Delay(time);

                P2<<=1;
                Delay(time);

                P0<<=1;
                Delay(time);
        }
}

void two(unsigned char time)
{
        unsigned char i;
        unsigned char temp;

        temp=0xfc;
        P2=temp;
        for(i=0;i<7;i++)
        {
                Delay(time);
                temp<<=1;
                temp=temp|0x01;
                P2=temp;
        }
        temp=0x3f;
        P2=temp;
        for(i=0;i<7;i++)
        {
                Delay(time);
                temp>>=1;
                temp=temp|0x80;
                P2=temp;
        }
}

void main(void)
{
        while(1)
        {
                one(30000);
                two(20000);
        }
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:91114 发表于 2018-5-29 16:23 | 只看该作者
unsigned char的取值范围是0-255
回复

使用道具 举报

板凳
ID:331575 发表于 2018-5-29 22:48 | 只看该作者
char是有长度的,你好好看看书,会有详细的解释
回复

使用道具 举报

地板
ID:390775 发表于 2018-9-4 18:18 | 只看该作者
void two(unsigned char time)
void Delay( unsigned int t)
unsigned char  是 1个字节  8位 最大为 255;
unsigned int 一般为4个字节  32位  最大为 4294967295  建议你用 unsigned int
加油
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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