STM32芯片学习
文章平均质量分 57
Moon~
这个作者很懒,什么都没留下…
展开
-
STM32F103VC串口做输入打印到终端
STM32F103VC下将串口作为输入打印到终端定义两个文件,一个是uart.c 一个是uart.huart.h的代码:/*uart.h code*/#ifndef UART_H#define UART_Hvoid uart1_init(void);#endif对外调用的初始化函数进行声明。uat.c的代码:要包含的头文件#include原创 2020-06-12 16:59:02 · 403 阅读 · 0 评论 -
Cortex-M4 HardFault原因查找方法
Cortex-M4 HardFault原因查找方法文章目录Cortex-M4 HardFault原因查找方法写此博客背景思想简说我的做法Step 1:Step 2:Step 3:Step 4:Step 5:Step 5:结果分析写此博客背景最近几日在Github上看到一个叫Armink的大神做了一个追踪Cortex-M系列的HardFault项目,具体连接:请点击这里看完之后感觉很是方便,大大的简化了我们查找出现HardFault的原因,由于我手边有的是一个STM32F407IG的开发板,便想尝试一原创 2020-06-11 16:27:56 · 2600 阅读 · 0 评论 -
“*** error 65: access violation at 0x40021000 : no 'read' permission”错误的解决
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-12-05 17:16:53 · 5972 阅读 · 0 评论 -
μCOS_II移植到STM32F103VC过程
μC/OS-II移植STM32F103VC一.μCOS-II源码文件结构介绍下载地址:https://www.micrium.com/download/micrium_stm32xxx_ucos-ii/这个地址下载的源码是Micrium官方提供移植给内核ARM Cortex-M3的,我们所要移植的STM32F103VC芯片的内核是ARM Cortex-M3,因此我们下载这个源码文件原创 2016-03-06 23:17:29 · 4295 阅读 · 4 评论 -
STM32系统启动文件分析
STM32启动代码分析(汇编代码)启动代码的选择根据自己芯片的选型不同,选择下面不同的启动文件,由于不同容量的启动文件里面所定义的外设中断向量地址在数量上不同,比如小容量的定义了USART1~3而大容量里面却是USART1~5,这样,所定义的4和5的串口中断机在向量表中找不到,会跳转到B. 处死循环。 startup_stm32f10x_ld.s startup_stm32f10x_md.原创 2016-12-31 15:02:45 · 867 阅读 · 0 评论 -
STM32F103系统时钟配置
STM32F103系统时钟配置时钟树的理解确定分频倍频之后再做STM32F103时钟树假设外接晶振8MHz,现在需要配置出系统72MHz时,需要配置代码(外部晶振8MHz配置系统时钟为72MHz)/*RCC config*/void RCC_Configuration(void){ RCC_DeInit(); RCC_HSEConfig(RCC_HSE_ON);原创 2016-12-31 11:17:33 · 12281 阅读 · 1 评论 -
STM32F407系统时钟配置
STM32F407系统时钟配置时钟树方法一,采用官方库提供的配置(这里外部晶振25MHz,系统配置为168MHz)STM32F4启动与STM32F10X不同,时钟已经默认配置好启动代码,文件:startup_stm32f4xx.sReset handler Reset_Handler PROC EXPORT Reset_Handler原创 2016-12-25 20:05:04 · 20735 阅读 · 2 评论 -
Keil工具使用逻辑分析仪
Keil 模拟调试使用逻辑分析仪前言 目前在做STM32芯片的开发,有时候不一定能及时拿到硬件,或者有时候没条件直接用J-Link调试,于此,可以使用Keil自带的逻辑分析仪进行模拟测试,查看引脚输出输入的电平是否正常。 接下来简单的记录一下操作步骤。 设置模拟模式在使用模拟模式的时候,首先要进行Debug模式的设置。 Tips:这里默认程序代码是已经编写好了的,不再理原创 2016-12-25 09:19:11 · 22988 阅读 · 3 评论 -
SPI协议内容及STM32 SPI的操作
SPI总线协议简介及内容简介 SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全/半双工,同步的通信总线,并且在芯片的管脚上只占用三/四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。SPI特征 3根/4根线全双工同步传输原创 2016-12-22 21:52:18 · 2244 阅读 · 0 评论 -
Contiki移植到STM32F103VC
Contiki系统简单介绍 Contiki 是一个小型的,开源的,极易移植的多任务电脑操作系统。它专门设计以适用于一系列的内存受限的网络系统,包括从8位电脑到微型控制器的嵌入系统。它的名字来自于托尔·海尔达尔的康提基号。 Contiki只需几kilobyte的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持。Contiki官网下载V2.5源码http://www.conti原创 2016-04-04 09:43:35 · 1596 阅读 · 0 评论 -
STM32F103VC串口做输入打印到终端
STM32F103VC下将串口作为输入打印到终端定义两个文件,一个是uart.c 一个是uart.huart.h的代码:/*uart.h code*/#ifndef UART_H#define UART_Hvoid uart1_init(void);#endif对外调用的初始化函数进行声明。uat.c的代码:要包含的头文件#include "stm32f10x.h"#incl原创 2016-05-22 23:23:41 · 1273 阅读 · 0 评论 -
STM32 EXTI(外部中断)和NVIC(嵌套向量中断控制器)学习
STM32 EXTI(外部中断)和NVIC(嵌套向量中断控制器)学习 在STM32中EXTI有0~18个事件/中断,0~4各自都是单独的一个通道,5~9是共一个通道,10~15共享一个通道,16/17/18各自独立用到一个通道 在STM32中NVIC是嵌套向量中断控制器,分为0~4五个组,称之为(Group) NVIC_PriorityGroup_0 ~ NVIC_PriorityG原创 2016-06-25 15:52:37 · 4759 阅读 · 0 评论 -
STM32进入HardFault_Handler处理办法
STM32进入HardFault_Handler处理办法方法一在中断HardFault_Handler中的while()处打上断点,让程序执行到此处停止。 在Registers里面找到R14(LR)的值,我的这里是:0xFFFFFFF9 说明一下: 0xFFFFFFF9对应的是要看MSP寄存器0xFFFFFFFD对应的是要看PSP寄存器 所以这里需要查找的内存地址是MSP的值:0x200原创 2016-03-19 15:46:54 · 41957 阅读 · 1 评论 -
STM32串口中断接收和中断发送
STM32串口USART1中断接收和中断发送 先贴出中断函数:void USART1_IRQHandler(void){ if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) { USART_ClearITPendingBit(USART1, USART_IT_RX原创 2016-03-12 15:12:14 · 80696 阅读 · 14 评论