STM32
changeyourmind
从事物联网工作
展开
-
Cortex-M3启动代码分析
之前写过一篇类似的文章,对CORTEX-M3启动代码做了简要分析,现在对CORTEX-M3启动代码做一个更加详尽的分析目标1.掌握嵌入式应用程序设计的基本知识2.掌握starup_stm32f10x_cl.s中常见汇编指令3.能分析starup_stm32f10x_cl.s启动代码嵌入式应用系统中的存储映射1.在设计嵌入式应用系统时,为了追求最好的性能价格比,系转载 2016-07-10 19:10:00 · 3919 阅读 · 0 评论 -
STM32F103ZET XXX.map的可执行映像分析
可执行映像文件的逻辑结构,总共分7大部分:Section Cross References 交叉引用部分Removing Unused input sections from the image. 删除映像中未使用的输入部分Image Symbol Table 映像符号表Memory Map of the image 映像在存储器中的映射Image component size原创 2016-07-10 17:45:15 · 3709 阅读 · 0 评论 -
时序图读法
时序图读法 从上到下,从左到右,高电平在上,低电平在下,高阻态在中间。双线表示可能高也可能低,视数据而定。交叉线表示状态的高低变化点,可以是高变低,也可以是低变高,也可以不变。 竖线是生命线,代表时序图的对象在一段时期内的存在,时序图中每个对象和底部中心都有一条垂直段的虚线,这就是对象的生命线,对象的消息存在于两条生命线之间。时序要满足建立时间和原创 2017-06-07 23:44:28 · 8108 阅读 · 6 评论 -
STM32中断向量表的位置,重定向
http://blog.csdn.net/u012722571/article/details/47295245lanmanck原创】这篇文章已经说了STM32的启动过程:http://blog.csdn.net/lanmanck/article/details/8252560我们也知道怎么跳到main函数了,那么,中断发生后,又是怎么跑到中断入口地址的呢?从stm转载 2017-10-12 15:41:57 · 23388 阅读 · 3 评论 -
上拉输入、下拉输入、模拟输入、浮空输入、推挽输出、开漏输出、复用输出的区别
关于上拉输入、下拉输入、模拟输入、浮空输入、推挽输出、开漏输出、复用输出的区别1、上拉输入:上拉就是把电位拉高,比如拉到Vcc。上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!弱强只是上拉电阻的阻值不同,没有什么严格区分。2、下拉输入:就是把电压拉低,拉到GND。与上拉原理相似。3、浮空输入:浮空(floating)就是逻辑器件的输入引脚即不接高电平,也不接转载 2017-11-07 16:02:37 · 4683 阅读 · 0 评论 -
STM32学习之路-AIRCR寄存器PRIGROUP位的配置<NIVC
原文出处:http://blog.csdn.net/demetered/article/details/26044693AIRCR是NIVC配置中一个关键的寄存器.而PRIGROUP又是AIRCR中关键的位让我们看看CM3技术手册中该为是怎么配置的上面说得很清楚,PRIGROUP的值是代表一个从LSB左边开始的小数值.怎么理解呢?看看下面CM3使用8bi转载 2017-02-24 20:28:30 · 5528 阅读 · 0 评论 -
STM32的四种输出模式
1、普通推挽输出(GPIO_Mode_Out_PP): 使用场合:一般用在0V和3.3V的场合。线路经过两个P_MOS 和N_MOS 管,负责上拉和下拉电流。 使用方法:直接使用 输出电平:推挽输出的低电平是0V,高电平是3.3V。 2、普通开漏输出(GPIO_Mode_Out_OD): 使用场合:一般用在电平不匹配的转载 2016-12-29 14:08:16 · 7722 阅读 · 0 评论 -
STM32之bootloader .
项目需要编写了STM32的bootloader,其实编写bootloader主要事项有以下:1、为你的bootloader程序选择存储器地址,因为STM32的存储器FLASH存储程序代码空间为512K,需要进行划分。2、如果需要使用JTAG在线调试,则需要配置区域:3、为您的用户程序选择合适的存储空间:同时配置在线调试区域:4、bootloader程转载 2016-06-15 11:08:04 · 3728 阅读 · 0 评论 -
STM32F10xxx支持三种复位
STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。一、系统复位除了时钟控制器的RCC_CSR寄存器中的复位标志位和备份区域中的寄存器(见图4)以外,系统复位将复位所有寄存器至它们的复位状态。当发生以下任一事件时,产生一个系统复位:1. NRST引脚上的低电平(外部复位) 2. 窗口看门狗计数终止(WWDG复位) 3. 独立看门狗计数终止原创 2016-07-13 23:12:42 · 15546 阅读 · 1 评论 -
ARM CORTEX-M3简介
http://blog.163.com/dsp_lnint/blog/static/1031674342013616504320/ARM公司于2006年推出了Cortex-M3微处理器核,ARM公司中国总裁谭军博士介绍,如果按ARM公司原来的ARM7,ARM9,ARM11等方式来命名,这款芯片的名称应该为ARM12,但是ARM已经决定用Cortex系列来命名,最新推出的第一款产品是Co转载 2016-07-03 13:13:00 · 21006 阅读 · 0 评论 -
ST意法半导体官方库启动文件 startup_stm32f10x_hd.s的分析
说明,此启动文件是高密度版本的CORTEX-M3的启动文件;使用的库是STM32F10x_StdPeriph_lib_V3.5.0;******************** (C) COPYRIGHT 2011 STMicroelectronics ********************;* File Name : startup_stm32f10x_hd.s原创 2016-07-03 14:59:39 · 2361 阅读 · 0 评论 -
STM32/ARM Cortex-M3复位序列
在离开复位状态后,CM3做的第一件事就是读取下列两个32位整数的值:1)从地址0x0000 0000 处取出MSP的初始值2)从地址0x0000 0004 处取出PC的初始值——这个值是复位向量,LSB必须是1.然后从这个值所对应的地址处取指,如下图1所示。图1请注意,这与传统的ARM架构不同——其实也和其它大多数的单片机不同。传统的ARM架构总是从0地址开始执行第一条指令原创 2016-07-16 13:18:00 · 5001 阅读 · 1 评论 -
keil4_MDK"编译报错"--- Error: User Command terminated, Exit-Code = 1
详细信息:FromELF: creating hex file...User command #1: D:\Keil\ARM\BIN40\fromelf.exe --bin ..\Obj\Bootloader.axf -o ..\Obj\Bootloader.bin--- Error: User Command terminated, Exit-Code = 1原因及原创 2016-06-16 15:00:24 · 17339 阅读 · 0 评论 -
Keil MDK中的Code, RO-data , RW-data, ZI-data分别代表什么意思?
一 基础知识字节 8位半字 16位字 32位 二 解惑Code, RO-data,RW-data,ZI-dataRO就是readonly,RW就是read/write,ZI就是zeroCode为程序代码部分RO-data 表示程序定义的常量const temp;RW-data 表示已初始化的全局变量,变量还是全局变量???ZI-data转载 2016-06-22 08:49:39 · 8437 阅读 · 0 评论 -
Keil MDK V5简介及初次体验
uVision5时代来临,MDK v5开发工具已发布,下面对其做一个介绍以及个人的初次体验:2013年10月,Keil公司(ARM公司之一)正式推出Keil MDK v5,该版本使用uVision5 IDE集成开发环境,是目前针对ARM微控制器,尤其是ARM Cortex-M内核微控制器最佳的一款集成开发工具。 Keil uVision5桌面图标MDK V5 概述MDK原创 2016-08-13 17:14:39 · 32861 阅读 · 0 评论 -
窗口看门狗的真正作用
STM32有2个看门狗:独立看门狗和窗口看门狗。独立看门狗IWDG--独立于系统之外,因为有独立时钟,所以不受系统影响的系统故障探测器,主要用于监视硬件错误。窗口看门狗WWDG----系统内部的故障探测器,时钟与系统相同。如果系统时钟不走了,这个狗也就失去了作用了,主要用于监视软件错误。简单的讲,看门狗就是检测系统故障的,如果因为系统故障而没有及时喂狗,则引发复位重启。对于一般的看转载 2017-10-25 09:02:41 · 4289 阅读 · 1 评论