-
硬件堆栈:
或许也可以称作系统堆栈,是位于片内RAM区。有人说,只要能使用PUSH,POP指令的单片机,都可以说含有硬件堆栈。这样的说法我个人觉得不是很全面。通过指令进行压栈和出...
来自
PIC|by
粽子糖果 |发表时间 2016-10-10
|0个回复
-
1 简 述
所有的中档系列PIC单片机,PORTB端口最高的4个引脚(RB7~RB4)在设为输入模式时,当输入电平由高到低或由低到高发生变化时,可以让单片机产生中断。这就是通常所...
来自
PIC|by
粽子糖果 |发表时间 2016-10-13
|0个回复
-
电梯产品质量方面产生的抖动
1、主机曳引轮、导向轮的轴承不良产生抖动
主机曳引轮、导向轮的轴承间隙大;曳引轮和导向轮自身的动态平衡不良;曳引机或齿轮箱内的轴承不良;曳引机减速箱...
来自
PIC|by
粽子糖果 |发表时间 2017-03-13
|0个回复
-
一、HardFault_Handler问题查找方法
查看几个方面,都会出现HardFault_Handler:1、是否有未初始化的指针、或越界的指针;2、堆、栈分配是否合理,避免...
-
芯片:STM32F103CBT6
IDE:Keil
调试器:J-Link
操作系统:uCOS
从一开始怀疑硬件问题,到最后定义到内存错误的思路,
有些思维...
-
一、HardFault_Handler问题查找方法
查看几个方面,都会出现HardFault_Handler:1、是否有未初始化的指针、或越界的指针;2、堆、栈分配是否合理,避免...
-
我们写嵌入式程序,基本上采用C语言来编写,以main( )作为程序的入口。但实际上,mian()并不是最先要执行的,在这之前需要做一些基本的工作,如堆、栈的定义;mai...
-
一、在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。
①HSI是高速内部时钟,RC振荡器,频率为8MHz。
②HSE是高速外...
-
因为一个项目中使用malloc函数动态分配内存400多个字节,返回为0,分配失败,查找失败原因,为堆空间不足分配导致。查看堆和栈分别设置了2K,按正常情况看应能满足分配...
-
Keil IDE的编译信息在工程文件夹的xx.map文件中,STM32的RAM分区从0x0200 0000开始,静态区、堆、栈。
所有的全局变量,包括静态变量之类的,全部存储在静...
-
一、什么是PendSV
PendSV是可悬起异常,如果我们把它配置最低优先级,那么如果同时有多个异常被触发,它会在其他异常执行完毕后再执行,而且任何异常都可以中断它。更详细的内容...
-
在ucos中调用printf调试浮点数的时候,在内存中表示正确,但是打印数据就都为0.00,其他整形数据表示正常。
定义了一个float类型的变量i,在内存中的数据是这样的,如下...
-
某日,有位STM32用户咨询如下问题:
“在使用stm32f411CE芯片,编译环境是keil mdk 5.15.仿真器使用Jlink。利用st官网标准库...
-
一般来讲,微处理器的用户程序运行前总有个启动文件或类似的文件先行启动,完成微处理器从复位过渡到运...
-
我们在从事MCU应用开发过程中,难免会碰到MCU芯片异常的问题,其中有些异常比较严重。比如异常复位,表现为复位脚有电平跳变或者干脆处于复位电平;在做代码调试跟踪时,发现代码根本就进...
-
栈增长和大端/小端问题是和CPU相关的两个问题.1,首先来看:栈(STACK)的问题.函数的局部变量,都是存放在"栈"里面,栈的英文是:STACK.ST...
-
经过查资料和看视频教程,摸索出了STM32F103ZET6的方法。
废话少说,上步骤。
1.在MDK下工程管理按钮下多建立一个调试模式。
2.选中刚才建立的RAM调试模式...
-
看完了DJYOS以后想把它移植到自己手中的开发板中,开发板是原子的ALIENTEK,其实自己也想买一块论坛里讲到的板子,但是自己手上目前有一块,就没必要浪费MONEY了,这块板子是...
-
关于堆和栈已经是程序员的一个月经话题,大部分有是基于os层来聊的。
那么,在赤裸裸的单片机下的堆和栈是什么样的分布呢?
以下是网摘:
&nbs...
-
STM32启动代码
编译器:keil MDK4.1
进入到嵌入式领域,main函数之前还有一段启动代码!
究竟在main函数之前,...