本章参考资料:《STM32F76xxx参考手册》、库帮助文档《STM32F779xx_User_Manual.chm》。 按键检测使用到GPIO外设的基本输入功能,本章中不再赘述GPIO外设的概念,如您忘记了,可重读前面“GPIO框图剖析”小节,STM32 HAL库中GPIO初始化结构体GPIO_T ...
分类:
其他好文 时间:
2018-07-09 16:35:52
阅读次数:
283
使用cmake构建嵌入式程序工程时遇到的问题,在此记录以下。 工程框架想把芯片相关的功能抽象出一个hal层,向上屏蔽芯片的API。 每个芯片相关文件会输出一个hal库。 APP相关代码编译后与hal库链接,生成最终的elf可执行文件。 不同于一般在.S汇编文件中编写中断向量表及中断处理函数, 我采用 ...
分类:
其他好文 时间:
2018-06-22 13:36:52
阅读次数:
1096
从今天起,每天开始连载一章《STM32 HAL 库开发实战指南—基于F7》。欢迎各位阅读、点评、学习。 第1章 如何使用本书 1.1 本书的参考资料 本书参考资料为:《STM32F76xxx参考手册》和《Cortex®-M7内核编程手册》,这两本是ST官方的手册,属于精华版,面面俱到,无所不包。限于 ...
分类:
其他好文 时间:
2018-06-02 20:38:07
阅读次数:
143
Technorati Tags: stm32 模块资料对于线性CCD而言,开发着更多的是基于飞思卡尔系列单片机进行开发,前几天在做项目的时候需要用到该传感器,故使用了蓝宙CCD的驱动历程,然后对蓝宙的驱动历程进行修改,移植到了stm32F103的平台下。先将.c和.h分享如下:.c文件源码如下:本次... ...
分类:
其他好文 时间:
2018-05-19 16:55:42
阅读次数:
1013
1、芯片输出PWM波形打码步骤 1.0主函数 1.1初始化输出PWM波形的定时器和IO口(例程使用定时器1的通道1,输出在PA8) 1.2初始化定时器1,HAL库中,使用定时器的 PWM 输出功能时, HAL 库为我们提供了一个独立的定时器初始化函数 HAL_TIM_PWM_Init () 1.3初 ...
分类:
其他好文 时间:
2018-05-06 18:02:44
阅读次数:
477
上次开发一个项目,使用一个小容量的STM32 ARM CORTEX核心的单片机,使用STM32CUBEMX自动生成配置代码,正准备编写程序的时候,发现容量竟然有6K多。这个容量在使用大容量FLASH的单片机时不感到什么,可是使用小容量单片机的时候,就明显不够用了。? ? 没有办法,只好打算回去使用原来的StdLib库,前两年不就这么干的嘛,也没什么难
分类:
其他好文 时间:
2018-05-04 18:25:04
阅读次数:
7824
在 HAL 库中,很多回调函数前面使用__weak 修饰符,这里我们有必要给大家讲解__weak 修饰符的作用。 weak 顾名思义是“弱”的意思,所以如果函数名称前面加上__weak 修饰符,我们一般称 这个函数为“弱函数”。加上了__weak 修饰符的函数,用户可以在用户文件中重新定义一个同 名 ...
分类:
其他好文 时间:
2018-02-19 11:35:41
阅读次数:
162
(一)、uart / usart 要注意的 API使用方法。 1.__HAL_UART_GET_FLAG 是获取 SR 寄存器标志位状态 2.__HAL_UART_CLEAR_FLAG 是清除 SR 寄存器标志位状态 3.__HAL_UART_CLEAR_xxFLAG ,xx为PE FE NE OR ...
分类:
其他好文 时间:
2018-01-19 14:08:15
阅读次数:
346
功能需求: (1)对接收的字符串原样返回(每10个字符一次)。 (2)发送一个字符串完成后改变LED的状态。 1.创建工程 使用的是F407Discovery,4个LED对应PD12-PD14。 (1)使用外部高速时钟 (2)推挽输出4个LED输出端口 (3)使用usart2 (4)外部8M,使用H ...
分类:
其他好文 时间:
2017-08-09 18:33:57
阅读次数:
170
在软件调试的时候发现Watch窗口中无法观察局部变量的值,总是显示<unavailable>设置IAR中的"Options—c/c++compiler—Optimization—Level"选项None全局变量、静态局部变量、局部变量的值都可以看到HAL库获取系统时钟的函数sys_wcpclk=HAL_RCC_GetHCLKFreq();cubeMXLL(Lo..
分类:
其他好文 时间:
2017-08-09 01:13:12
阅读次数:
231