野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12945|回复: 7

火哥的视频教程里的程序有问题 ???

[复制链接]
发表于 2017-7-25 13:14:56 | 显示全部楼层 |阅读模式

/* Includes ------------------------------------------------------------------*/
#include "stm32f10x.h"
#include "stm32f10x_conf.h"

#include "led.h"
#include "core_cm3.h"

void delay(uint32_t count)
{
        for(;count !=0 ;count--) ;
}

void SysTick_Delay_ms(uint32_t ms)
{
        uint32_t i;
        SysTick_Config(72000);
       
        for(i=0; i<ms; i++)
        {
                while( !((SysTick->CTRL) & (1<<16)) );
        }
       
        SysTick->CTRL &= ~ SysTick_CTRL_ENABLE_Msk;
}
int main(void)
{       
        //SysClock_Config( RCC_PLLMul_9 ) ;       
        LED_GPIO_Config() ;

    while(1)
    {                       
                        //delay(0XFFFFF);
                        SysTick_Delay_ms( 100 );
                       
                        LED_TOGGLE;
                }       
}
灯就是不闪   换成delay(0XFFFFF)   就闪了。SysTick_Delay_ms  是复制火哥教学里面的    有什么鬼?

BEL11L{}41H4I(D6A@Y{0VJ.png
回复

使用道具 举报

发表于 2017-7-25 16:13:28 | 显示全部楼层
是 72000000,少了3个0
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-25 17:17:40 | 显示全部楼层
fire 发表于 2017-7-25 16:13
是 72000000,少了3个0

加了三个0  还是一样   好像程序死在SysTick_Delay_ms里了;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-25 17:19:49 | 显示全部楼层
fire 发表于 2017-7-25 16:13
是 72000000,少了3个0

烧写你视频里面的程序也有问题   ,无法自己启动  要按复位键才能运行   配置里面都勾选了复位自动运行了
回复 支持 反对

使用道具 举报

发表于 2017-7-25 17:31:46 | 显示全部楼层
桂林狂奔的蜗牛 发表于 2017-7-25 17:19
烧写你视频里面的程序也有问题   ,无法自己启动  要按复位键才能运行   配置里面都勾选了复位自动运行了

那你用 配套的 systick的试一试,没理由出问题啊 亲
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-25 17:34:43 | 显示全部楼层
fire 发表于 2017-7-25 16:13
是 72000000,少了3个0

void delay(uint32_t count)
{
        for(;count !=0 ;count--) ;
}

void SysTick_Delay_ms(uint32_t ms)
{
        uint32_t i;
        SysTick_Config(72000000);
       
        for(i=0; i<ms; i++)
        {
                while( !((SysTick->CTRL) & (1<<16)) );
        }
       
        SysTick->CTRL &= ~ SysTick_CTRL_ENABLE_Msk;
}
int main(void)
{       
        //SysClock_Config( RCC_PLLMul_9 ) ;       
        LED_GPIO_Config() ;

    while(1)
    {                       
                        //delay(0XFFFFF);
                        SysTick_Delay_ms( 1000 );
                       
                        LED_TOGGLE;
                }       
}


还是不行  
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-25 17:54:37 | 显示全部楼层
fire 发表于 2017-7-25 17:31
那你用 配套的 systick的试一试,没理由出问题啊 亲

试了可以  就是这个程序不行
回复 支持 反对

使用道具 举报

发表于 2017-7-25 18:02:24 | 显示全部楼层
桂林狂奔的蜗牛 发表于 2017-7-25 17:54
试了可以  就是这个程序不行

回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-16 10:53 , Processed in 0.034325 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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