OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2361|回复: 4

关于正点官方给的延迟函数

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2018-9-26
在线时间
10 小时
发表于 2018-10-10 09:26:18 | 显示全部楼层 |阅读模式
1金钱
入下,为什么我在延迟函数里面直接写参数的时候下载到板上就出错呢?要是用注释部分的循环的话就是对的,难道是延迟函数不能用形参么?

int main(void)
{        
        u16 time=1;
//                                u16 i;
                                u8 change=1;     
                                Stm32_Clock_Init(9);//系统时钟设置
                                delay_init(72);                        //延迟初始化
        LED_Init();                           //初始化与LED连接的硬件接口                    
        while(1)
        {
                                        LED0=1;
                                        LED1=1;
                                        delay_us(time);                       
//                                        for(i=0;i<=time;i++)
//                                        {                                       
//                                        delay_us(1);
//                                        }
          LED0=0;
                                        LED1=0;
                                        delay_us(1100-time);
//                                        for(i=0;i<=(1100-time);i++)
//                                        {
//                                                delay_us(1);
//                                        }            
                if(change) time++;
                else time--;

                if(time>1100)change=0;
                if(time==1)change=1;
                       
        }
}


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

756

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4163
金钱
4163
注册时间
2017-10-24
在线时间
251 小时
发表于 2018-10-10 11:22:06 | 显示全部楼层
楼主混淆了形参和实参的概念。当然,这个与问题无关。

我觉得楼主的不加注释部分的程序应当是正确的。不明白楼主所说的“下载到板子上出错”,具体是什么现象?
十六进制带我飞。
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2018-9-26
在线时间
10 小时
 楼主| 发表于 2018-10-11 08:24:43 | 显示全部楼层
DreamWaterPro 发表于 2018-10-10 11:22
楼主混淆了形参和实参的概念。当然,这个与问题无关。

我觉得楼主的不加注释部分的程序应当是正确的。不 ...

执行LED0=1;LED1=1之后就不执行了,也就是两个led灯都是常亮的状态,delay函数并没有执行。。
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2018-10-11 08:26:14 | 显示全部楼层
Sunlight丶 发表于 2018-10-11 08:24
执行LED0=1;LED1=1之后就不执行了,也就是两个led灯都是常亮的状态,delay函数并没有执行。。

学学C语言吧,顺便学学人眼分辨时间,就你那点时间,人类还察觉不到
学无止境
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2018-9-26
在线时间
10 小时
 楼主| 发表于 2018-10-11 08:40:25 | 显示全部楼层
jermy_z 发表于 2018-10-11 08:26
学学C语言吧,顺便学学人眼分辨时间,就你那点时间,人类还察觉不到

这是个呼吸灯。。。可是我给换成注释部分的语句就可以吖,注释部分意思不就和delay_ns(time)效果一样么。。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 14:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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