摘要: 在 C 语言中,static 的字面意思很容易把我们导入歧途,其实它的作用有三条。 (1)先来介绍它的第一条也是最重要的一条:隐藏 当我们同时编译多个文件时,所有未加 static 前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是 a.c,另一个是 阅读全文
posted @ 2020-12-20 22:26 北极星! 阅读(350) 评论(0) 推荐(0) 编辑
摘要: CMSIS 标准及库层次关系 因为基于Cortex 系列芯片采用的内核都是相同的,区别主要为核外的片上外设的差异,这些差异却导致软件在同内核,不同外设的芯片上移植困难。为了解决不同的芯片厂商生产的Cortex 微控制器软件 的兼容性问题,ARM 与芯片厂商建立了CMSIS 标准(CortexMicr 阅读全文
posted @ 2020-12-20 15:44 北极星! 阅读(1008) 评论(0) 推荐(0) 编辑
摘要: 最近笔者开始学习STM32的HAL库,由于以前一直用标准库进行开发,于是发现了HAL库几点好玩的地方,在此分享。 1.句柄在STM32的标准库中,假设我们要初始化一个外设(这里以USART为例)我们首先要初始化他们的各个寄存器。在标准库中,这些操作都是利用固件库结构体变量+固件库Init函数实现的: 阅读全文
posted @ 2020-12-20 15:38 北极星! 阅读(2442) 评论(0) 推荐(0) 编辑
摘要: 1 STM32的三种开发方式 通常新手在入门STM32的时候,首先都要先选择一种要用的开发方式,不同的开发方式会导致你编程的架构是完全不一样的。一般大多数都会选用标准库和HAL库,而极少部分人会通过直接配置寄存器进行开发。网上关于标准库、HAL库的描述相信是数不胜数。可是一个对于很多刚入门的朋友还是 阅读全文
posted @ 2020-12-20 15:12 北极星! 阅读(4558) 评论(0) 推荐(1) 编辑