-
1、 动作标志位的使用
在整个控制中,组合的动作很多,当所有动作定位都通过光电开关控制时,在程序编写上就有一些问题。如要求左手上升到鼓掌位、右手上升到举手位(手初始位置在最下的放...
来自
PIC|by
粽子糖果 |发表时间 2016-09-27
|0个回复
-
硬件堆栈:
或许也可以称作系统堆栈,是位于片内RAM区。有人说,只要能使用PUSH,POP指令的单片机,都可以说含有硬件堆栈。这样的说法我个人觉得不是很全面。通过指令进行压栈和出...
来自
PIC|by
粽子糖果 |发表时间 2016-10-10
|0个回复
-
1 简 述
所有的中档系列PIC单片机,PORTB端口最高的4个引脚(RB7~RB4)在设为输入模式时,当输入电平由高到低或由低到高发生变化时,可以让单片机产生中断。这就是通常所...
来自
PIC|by
粽子糖果 |发表时间 2016-10-13
|0个回复
-
PIC单片机的概述
PIC16F616是一款14引脚、8位的CMOS单片机。采用精简指令集,仅有35条指令,由于采用了数据总线和指令总线分离的哈佛总线结构,使得除少量指令不是单周...
来自
PIC|by
粽子糖果 |发表时间 2016-11-10
|0个回复
-
一、HardFault_Handler问题查找方法
查看几个方面,都会出现HardFault_Handler:1、是否有未初始化的指针、或越界的指针;2、堆、栈分配是否合理,避免...
-
芯片:STM32F103CBT6
IDE:Keil
调试器:J-Link
操作系统:uCOS
从一开始怀疑硬件问题,到最后定义到内存错误的思路,
有些思维...
-
一、HardFault_Handler问题查找方法
查看几个方面,都会出现HardFault_Handler:1、是否有未初始化的指针、或越界的指针;2、堆、栈分配是否合理,避免...
-
一、STM32cube固件库的许可方案是怎样的?答:STM32Cube库主要由STM32 HAL和MiddleWare以及其它应用例程组成。STM32C...
-
我们写嵌入式程序,基本上采用C语言来编写,以main( )作为程序的入口。但实际上,mian()并不是最先要执行的,在这之前需要做一些基本的工作,如堆、栈的定义;mai...
-
因为一个项目中使用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芯片异常的问题,其中有些异常比较严重。比如异常复位,表现为复位脚有电平跳变或者干脆处于复位电平;在做代码调试跟踪时,发现代码根本就进...
-
带大家来一起快速的看懂ZigBee的协议栈的运行流程。
1.读任何程序都需要从main函数入手,那我们先来看Zmain.c中的main函数。
问题:...
-
在嵌入式项目中,经常会用到SD卡升级这一方式来进行产品的软件升级。刚好最近做的项目也需要这一功能,由于之前未接触过IAP开发,刚好在这个时候可以学习一下,于是先到各大网站去搜索相关...
-
栈增长和大端/小端问题是和CPU相关的两个问题.1,首先来看:栈(STACK)的问题.函数的局部变量,都是存放在"栈"里面,栈的英文是:STACK.ST...
-
我在X893的设计基础上重新设计了STM32F103 CMSIS-DAP调试器(名字好长,应该缩写一下:F103-DAP)。下图为X893原版设计。
与原始设计相比,我做...