HAL库
HAL库学习
jcsm__
个人邮箱:[email protected]
展开
-
HAL库——踩坑记
用了一个多月hal库,不能完全给好评了。要在hal库添加自己的bsp程序,真的有点麻烦,找各种函数,而且不同版本的hal库,函数还不一样,这个真的巨坑。还有就是编译真的是有点慢了。。。现在每次点击编译按钮,都习惯性的拿起手机,刷个半小时。。。。。这篇就记录下我在使用hal库中遇到的一些问题(好像大部分问题都是因为自己太菜了,太真实了)在使用串口中断的时候,hal库貌似是没有加入对DMA...原创 2019-11-21 10:52:01 · 2747 阅读 · 2 评论 -
HAL库——UART的DMA发送(对比接收)
前面讲到的UART接收执行过程:启动UART的DMA接收(这里面还定义了DMA回调函数):HAL_UART_Receive_DMA 接收完成后,请求DMA中断(判断中断的类型):HAL_DMA_IRQHandler 调用DMA接收完成回调函数(同时关闭了DMA接收):UART_DMAReceiveCplt 调用UART接收回调函数(处理数据,启动DMA接收):HAL_UART_RxCpl...原创 2019-10-23 21:10:10 · 4538 阅读 · 1 评论 -
HAL库——UART的DMA接收中的一些问题
上篇简单的说明了如何通过DMA的方式接收UART数据,看着这个UART的DMA接收很简单,为了弄明白DMA中断和UART中断之间的关系,还是要看一下程序是如何完成这些看似简单的操作。首先先说一下整个接收的过程:启动UART的DMA接收(这里面还定义了DMA回调函数):HAL_UART_Receive_DMA 接收完成后,请求DMA中断(判断中断的类型):HAL_DMA_IRQHandler...原创 2019-10-23 16:48:43 · 10512 阅读 · 5 评论 -
HAL库——UART的DMA接收
一:USART协议基础USART:Universal Synchronous/Asynchronous Receiver/Transmitter,通用同步/异步收发器。可配置成同步或者异步通信的方式,通常使用异步方式 全双工通信 独立的高精度波特率发生器,不占用定时/计数器 数据帧包括:起始位、数据段、校验位、停止位 在STM32中,挂载在APB2时钟上 可以通过轮询、中断、DM...原创 2019-10-23 15:33:18 · 6166 阅读 · 0 评论 -
HAL库——CAN通信的中断接收
一:CAN协议基础CAN:Controller Area Network,控制器局域网络。这方面的参考资料很多,不详细写了。说几个在开发过程的特点:CAN总线上所有连接节点并没有地址的概念,通过发送数据中的标识符ID进行区分,多个单元同时发送消息时也通过标识符的优先级来仲裁优先发送方。 CAN总线的信号是通过两根信号线之间的电压差值来确定信号类型,显性电平对应逻辑0,隐形电平对应逻辑1。...原创 2019-10-23 09:22:36 · 22913 阅读 · 5 评论 -
HAL库——写在学习之前
研究生阶段打算从事嵌入式方向,打算从stm32搞起,本科期间接触了一点标准库,并没有多少实践的经验,算是小白。正好实验室导师有一门机器人方向的课程,借用了RoboMaster比赛的步兵(使用的stm32F4)作为实验平台,老师让我来负责整理之前比赛时步兵的程序,并且打算抛弃之前的标准库,使用ST目前主推的hal库。于是乎,独自一人走上了hal库的学习之路。由于自己脑袋瓜不太好使,好多东西看...原创 2019-10-22 13:24:23 · 2432 阅读 · 5 评论