随笔分类 -  STM32

摘要:剖析startup_stm32f407xx.s文件 感谢gcc编译环境下ARM汇编语法(伪指令)提供的相关ARM伪指令功能的介绍,本文据此详细介绍STM32F407芯片所使用的startup_stm32f407xx.s文件 文件头注释 文件开头是关于文件的描述,先粘过来后面解释: /** ***** 阅读全文
posted @ 2021-05-27 21:22 回归的世界线 阅读(2888) 评论(0) 推荐(1) 编辑
摘要:背景 迁移华为的liteOS到STM32F4的开发板上,按照官方的步骤修改makefile后报错: 解决过程 根据Makefile的报错地点可以看出是在对.S文件的编译过程中找不到文件所致,将结果打印出来: 注意这里 ,".d"后面紧跟着./Middlewares,这说明本该分开的两个参数被合并到一 阅读全文
posted @ 2020-02-12 01:04 回归的世界线 阅读(1332) 评论(0) 推荐(1) 编辑
摘要:[TOC] STM32 搭建CUBE.AI的demo工程 ST公司在自家的CubeMX中加入了Cube.AI人工智能神经网络开发工具包,这次来试试如何在自己的这个资源紧张的小开发板上使用下神经网络吧:joy: 我在这里用cube.ai的主要目的是得到工具包文件,以便后续迁移其他环境时使用。 准备工作 阅读全文
posted @ 2020-02-05 18:40 回归的世界线 阅读(4424) 评论(0) 推荐(0) 编辑
摘要:STM32 一种参数检查用法介绍 是一个在代码中很常见的写法,这个函数的功能一般是对函数参数的合法性进行检查,这里以一个例子进行分析: assert_param(IS_GPIO_ALL_PERIPH(GPIOx)) 函数的参数是 ,原型为: 这个宏定义的作用就是检查参数PERIPH,判断参数PERI 阅读全文
posted @ 2020-01-16 23:24 回归的世界线 阅读(1200) 评论(0) 推荐(0) 编辑
摘要:中断和事件(Interrupts and events) 嵌套向量中断控制器(Nested vectored interrupt controller NVIC) 中断是相对CPU而言的,因此例如IIC、定时器这些芯片内产生的中断也被称为外部中断,不能狭隘的理解为由芯片外的信号触发 EXTI被称为外 阅读全文
posted @ 2020-01-16 22:56 回归的世界线 阅读(1306) 评论(0) 推荐(0) 编辑
摘要:[TOC] STM32 OV2640将数据缓存至SRAM 流程设计 流程如下: 1. 初始化OV2640后,初始化DCMI和DMA,DCMI的初始化代码与原子开发板的代码一致,这里主要是区分在DMA的初始化上: RGB565是16个比特,2个字节,因此采用半字传输,总量为 ,存储器地址递增,初始化代 阅读全文
posted @ 2019-12-02 23:45 回归的世界线 阅读(1735) 评论(0) 推荐(0) 编辑
摘要:[TOC] STM32 .ld链接文件分析及一次bug解决过程 问题描述 原子板的代码中含有一个关于使用外部SRAM的功能,由于本人的开发板的SRAM只有512K,因此稍微修改了一下代码,同时使用GCC进行编译,但是这里却报错了,源码如下: 这里的 指的是4字节对齐,这是个MDK的用法,换到GCC只 阅读全文
posted @ 2019-12-02 00:00 回归的世界线 阅读(15676) 评论(4) 推荐(5) 编辑
摘要:[TOC] Makefile 直接附上Makefile的内容: makefile target TARGET = demo_project debug build? DEBUG = 1 optimization OPT = O1 Build path BUILD_DIR = Output sourc 阅读全文
posted @ 2019-11-20 21:01 回归的世界线 阅读(1472) 评论(1) 推荐(1) 编辑
摘要:[TOC] STM32 Win10下搭建嵌入式ARM开发环境 一个嵌入式应用的开发一般由如下几个环节构成: 创建工程,将中间件、应用代码、驱动代码添加至工程中 配置工程的编译选项,编译并连接,生成二进制目标码 将PC通过仿真器与开发板连接,将二进制目标码通过仿真器传输至芯片flash 测试并修改bu 阅读全文
posted @ 2019-11-17 15:18 回归的世界线 阅读(5134) 评论(0) 推荐(0) 编辑
摘要:[TOC] 浅谈MCU的DMA技术 DMA技术简介 DMA外设和存储器(或存储器和存储器)直接通过总线进行数据交换而不经过CPU的技术。在MCU中,DMA是一项十分重要的技术,它可以降低CPU的处理压力,提高外设数据的处理效率。 概念: 通道:DMA的通道表示一组外设对存储器的请求, 数据对齐:源和 阅读全文
posted @ 2019-11-03 17:54 回归的世界线 阅读(4215) 评论(0) 推荐(0) 编辑
摘要:配置前首先要选择是否是外部输入时钟,在CubeMX中可以先在RCC中选择,包括选择是否输出时钟。 该图为CubeMX的时钟配置界面,SYSCLK即为系统时钟,HSI和HSE分别表示内部高速时钟和外部高速时钟,LSI和LSE表示低速内部时钟和低速外部时钟,图中标记可以看出: SYSCLK可以选择HSI 阅读全文
posted @ 2019-10-17 23:39 回归的世界线 阅读(625) 评论(0) 推荐(0) 编辑
摘要:片内资源 开发板使用的STM32F407ZGT6在手册里是这样的: 片内FLASH:1M,片内RAM:192K,这两个跟程序运行和下载密切相关。 FLASH 地址分配如图,因此FLASH下载地址从0x8000 0000开始,大小为0x0010 0000(1M) RAM RAM的两段需要注意的是只有0 阅读全文
posted @ 2019-10-14 22:07 回归的世界线 阅读(775) 评论(0) 推荐(0) 编辑
摘要:OV2640的引脚定义与正点原子的定义相同,这里主要说几个注意事项 硬件部分 关于SCCB OV2640或者是OV7670等等摄像头需要外部时钟送入,如果SCCB通信不通的话首先检查下时钟XCLK是否存在?如果时钟存在的话SCCB的设备ID是否填对?其他时序上的问题一般不大 关于供电 供电的VCC的 阅读全文
posted @ 2019-10-14 20:41 回归的世界线 阅读(2221) 评论(0) 推荐(0) 编辑
摘要:目前网上的STM32的程序基本上都是从正点或者野火开发板为基础搞的,由于开发板的例程是基于正点的,但是板子的接线却不一致,这使得烧程序后液晶屏无法显示的问题。开发板的原理图如图 FSMC FSMC,即灵活的静态存储控制器,STM32F4 的FSMC 接口支持包括SRAM、NAND FLASH、NOR 阅读全文
posted @ 2019-10-13 20:27 回归的世界线 阅读(2200) 评论(0) 推荐(0) 编辑
摘要:入手了一个小开发板,STM32F4ZGT6的主控芯片,有几个外设如网口,can口,485等等 原理图 电源部分的原理图如图所示 这里面 是外界的DC电源输入,9 16V,由于存在两路电源输入,一个一个的看: USB接口 接的是标准USB接口,这里的 和`D+ USB_HS`,即高速USB,这与一般的 阅读全文
posted @ 2019-10-13 19:36 回归的世界线 阅读(14436) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示