你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

谁写过Systick寄存器的配置方法啊

[复制链接]
在路上11111111 提问时间:2016-11-26 16:00 /
小白在这里写了个,但是验证没通过,大佬们过来看看这个程序那边错了啊



void SysTick_Handler(void)
{
   if(Timing!=0x00)
   {
      Timing--;
   }
}

void Delay_Us(uint32_t nTime)
{
   SysTick->LOAD = 72*nTime;//设置时间初试时间的
   Timing = nTime;
   SysTick->CTRL = 7;//
   while(Timing!=0x00);
   SysTick->CTRL = 6;
}

int main()
{         
    uint32_t i;
    LED_Init();
        while(1)
        {
           GPIO_ResetBits(GPIOD,GPIO_Pin_2);//输出低电平
           for(i=0;i<1000;i++)
             Delay_Us(1000);
           GPIO_SetBits(GPIOD,GPIO_Pin_2);//输出高电平
           for(i=0;i<1000;i++)
             Delay_Us(1000);
        }

}


收藏 1 评论4 发布时间:2016-11-26 16:00

举报

4个回答
leo121_3006061 回答时间:2016-11-27 15:18:19
本帖最后由 leo121_3006061 于 2016-11-27 15:27 编辑

在void SysTick_Handler(void)里调用toggle就可以闪灯了另外你的时钟都没有初始化
1.先设置系统时钟(看您自己的库是什么函数,一般都是包含System_Clock之类的关键字)
2.LED_Init();
3.设置SysTick_Config(SystemCoreClock),你自己看函数名称可能不一样
这三步式必须的,然后systick_handler中断才能被调用

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

在路上11111111 回答时间:2016-11-26 16:13:19
自己顶一下
peter001 回答时间:2016-11-27 14:08:36
直接在st库的例程里看
在路上11111111 回答时间:2016-11-27 16:06:00
leo121_3006061 发表于 2016-11-27 15:18
在void SysTick_Handler(void)里调用toggle就可以闪灯了另外你的时钟都没有初始化
1.先设置系统时钟(看您自 ...

已解决,谢啦

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版