问题:stm32 SysTick_Handler()使用

发布者:MysticalGlow最新更新时间:2018-07-20 来源: eefocus关键字:stm32  SysTick_Handler() 手机看文章 扫描二维码
随时随地手机看文章

我用的是stm32f100,调试SysTick_Handler()时,用以下配置

if (SysTick_Config(SystemCoreClock / 1000))
  { 
    /* Capture error */ 
    while (1);
  } 周期为1ms,

/*******************************************************
**功能:Delay()延时函数
**输入:TimeI,为TimeI个ms;
********************************************************/
void Delay(u32 TimeI)
{
u32 TimeJ;
TimeNum = TimeI;
while(TimeNum);
}
/*******************************************************
**功能:DelayCount()计数函数,放入滴答中断中自减
**输入:无
********************************************************/
void DelayCount(void)
{
if(TimeNum)TimeNum--; 
}

void SysTick_Handler(void)
{
while(TimeNum);
}

调用Delay(10);发现一直死在while(TimeNum);中,调试时看见TimeNum值是可以一直在减小的,真是搞不懂。。。。。


关键字:stm32  SysTick_Handler() 引用地址:问题:stm32 SysTick_Handler()使用

上一篇:Systick中断函数SysTick_Handler的实现引发的思考
下一篇:STM32系统学习——SysTick(系统定时器)

推荐阅读最新更新时间:2024-03-16 16:09

STM32之Bit-Banding
用了不少芯片,就只有51有位操作,这个特性很喜欢,赋值简单、效率又高且节省内存,不必为了一个bool去分配一个uint8. 发现stm32有Bit-Banding,就试了一下,用MDK-ARM环境下的汇编代码做了一些比较。 操作,清零USART1的SR寄存器的TC位: 方法一: //利用USART_TypeDef这个结构寻到SR的地址,再赋值USART1- SR &= ~(1 6); 其汇编代码(-level 0)如下: 用了7条指令。 方法二: 直接用SR的地址操作: *(__IO uint32_t *) 0x40013800 &= ~(1 6); 汇编如下: 可以看到代码跟方法一是一样的,所以以后没有必要用这个方法了,一
[单片机]
STM32开发笔记71: 解决FreeRTOS任务的内存分配问题
单片机型号:STM32F091RCT6 在使用FreeRTOS进行程序设计时,遇到任务不能运行的问题,具体程序如下: DebugOutput( 启动USB通讯线程...rnrn ); osThreadDef(usbTask, StartUsbTask, osPriorityNormal, 0, 128); usbTaskHandle = osThreadCreate(osThread(usbTask), NULL); DebugOutput( 启动雷达红外通讯线程...rnrn ); osThreadDef(irdaTask, StartIrdaTask, osPriorityNormal, 0, 128);
[单片机]
STM32 GPIO 简单操作函数
STM32库函数太多,而且不能识别大小写,经常记错,GPIO简单记忆。 ---第一步--模式配置 void GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); //对应GPIO所在的总线时钟必须打开 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1; //哪个GPIO口 GPIO_InitStructu
[单片机]
STM32学习008_ARM产品浅析
ARM是英国Acorn有限公司设计的基于RSIC的一款微处理器,全称为Acorn RISC Machine,ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。 ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。 1、体积小、低功耗、低成本、高性能; 2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件; 3、大量使用寄存器,指令执行速度更快; 4、大多数数据操作都在寄存器中完成; 5、寻址方式灵活简单,执行效率高; 6、指令长度固定。 ARM处理器共有37个寄存器,被分为若干个组(BANK),这
[单片机]
<font color='red'>STM32</font>学习008_ARM产品浅析
9.TouchGFX界面应用之综合应用--打地鼠
上一节我们学习了自定义组件(容器),这一节我我们使用自定义组件(容器)做一个简易打地鼠的小游戏,再创建一个屏幕,在第三个屏幕上面先放置切换屏幕的按键。 然后百度找两张图片,一个作为土拨鼠,一个作为坑,坑和土拨鼠图片的像素点大小保证一致减少计算。 放置几个按钮表示土拨鼠的坑,用上面表示坑的图片表示背景,这样你按钮的大小就和图片的大小保持一致,每一个按钮设置好编号, 每一个按钮对应一个函数。我们在CustomContainer2.hpp中声明定义这些函数 我们写一个类似于滴答定时器的函数,来作为打地鼠的时钟。在组件(容器)中使用handleTickEvent是没有效果的,组件不会自己产生时钟需要外部提供,那
[单片机]
9.TouchGFX界面应用之综合应用--打地鼠
STM32中IO模式
在STM32中选用IO模式 (1) 浮空输入_IN_FLOATING 浮空输入,可以做KEY识别,RX1 (2)带上拉输入_IPU IO内部上拉电阻输入 (3)带下拉输入_IPD IO内部下拉电阻输入 (4) 模拟输入_AIN 应用ADC模拟输入,或者低功耗下省电 (5)开漏输出_OUT_OD IO输出0接GND,IO输出1,悬空,需要外接上拉电阻,才能实现输出高电平。当输出为1时,IO口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样IO口也就可以由外部电路改变为低电平或不变。可以读IO输入电平变化,实现C51的IO双向功能 (6)推挽输出_OUT_PP IO输出0-接GND, IO输出1 -接VCC,读输入值是未知
[单片机]
stm32学习笔记--串口波特率
这几天的学习有什么问题呢?开始看前几个例程的时候貌似还找到些感觉,学了些东西,比如串口需要配置的波特率是如何计算的,如何通过位段位带别名区的设计实现对I/O口单个位的寻址操作,端口模式如何设置,spi与iic之间各自的优势和劣势,上个周稀里糊涂看了那么多,现在一想就剩下这些了,然后是这个周,这个周的感觉是更加的不扎实,很多东西都是走马观花,看了就忘,比如中断控制,直到看了第二遍才形成框架,看门狗DMA游戏手柄红外通信的各个实验,好吧,这些东西我仅仅知道是怎么回事,对他们的了解甚至不如上个周的模块,至少还有个框架,到了这里,只剩下 哦,这个,我知道 就没了,对!就没了。所以接下来要去改程序,不管改什么程序,当然最好是直接拿三轴加速度
[单片机]
新款STM32U5:让便携产品拥有惊艳图效
凝聚ST超低功耗微控制器技术精华的STM32U5于2021年问世,是一款堪称可改变游戏规则的低功耗MCU。 作为STM32高性能低功耗系列旗舰产品, STM32U5延续STM32F2/F4/F7的应用范围,同时又有更低的能耗,具有更高的性价比。 在工业控制系统中,U5可以承担主控器、系统监控以及图形显示等核心职能。 高性能,低功耗,丰富的数字外设和更高性能的模拟接口,强大的安全特性,以及支持图形加速,让STM32U5在工业控制、工业表计和医疗健康,个人穿戴设备等应用领域取得良好的表现,为泛工业系统创新赋能。在这个视觉统治一切的时代,人们对图形效果的追求永远没有止境,同时也希望实现起来更简单快速,性价比更高。“如果只
[单片机]
新款STM32U5:让便携产品拥有惊艳图效
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved