【1】工程模板如下
本来不打算写这一篇的,为了系列的完整性吧,也为了有一个好的过度,但我只能说个大概,具体还要看我给的资料哦!
【2】什么是标准固件库?
其实标准固件库没有什么神秘的,里面无非是包含了一些源文件和头文件,由于文件作用不同分了好几个文件夹而已,命名这一点值得学习,一定要做到见名知意,那么你就是成功的。
【3】标准库的关键文件
那些我们只使用不用修改的文件我们就不用在意了,我这里说的是与内部外设相关的部分。也就是下面这些:
因为我们以后每次编程都要和它们打交道,所以这些便是我们研究的关键!这里不得不提一个文档,里面包含库里的所有函数,关键是说明了每个函数的作用,可传的值用枚举的方式列举了出来,并且每个函数下面都有一个调用示例,简直就是贴心小棉袄啊!
这些文档我打包放在这里了,希望可以帮助大家!
链接:https://pan.baidu.com/s/19-2Z0P4DNqaMcDr2l-k36g
提取码:ci8m
【4】我们该如何看待库函数编程方式?
不用理解函数如何实现的就可以调用,试图去理解也可以让你C语言和对ARM的理解加深!为以后的嵌入式学习打下基础。
关键字:STM32 工程模板
引用地址:
STM32标准库编程之工程模板介绍
推荐阅读最新更新时间:2024-10-30 03:05
正点原子 第6讲 STM32芯片解读
1.芯片的资源 选型手册可以看到 芯片的资源 Flash size 是 片上flash的大小 这样一直对应 下去。都可以在 选型手册中来查找 比如他们的内核都是用的 cortex m3内核 一般情况下外部晶振用8M DMA用于高速的数据传输 系统定时器 通常用于ucos的延时 APB2 一般挂载高速外设 APB1挂载低速外设 芯片的引脚与功能是怎么定义的 我们可以在数据手册中找到 引脚对应的功能。 端口的功能会在后面进行介绍。 标注FT的引脚代表容忍5V VDD 连到 3.3V VBAT接电源 VDDA 也是接到3.3V VDD 和 VSS就是数字
[单片机]
STM32学习笔记9——stm32L072 SD卡程序移植记录
项目使用stm32L072,需要将采样的数据保存到SD卡中。SD卡程序参考ST公司的官方STM32L073Z_EVAL开发板的例程。需要修改的地方如下: 1、 修改stm32L073z_eval.h中SPI的管脚配置、AF配置; 2、 官方开发板使用了一片STM32L152CCT6扩展了STM32L073的IO口,并通过I2C接口连接。在SD卡例程中,扩展IO口用于检测SD卡是否连接好。我们的板子中没有设计SD卡硬件检测的功能,所以在stm32L073z_eval_sd.c的BSP_SD_Init函数中将有关SD卡detect的代码屏蔽,只保留调用SD_IO_Init函数和return。 3、 在stm320L0xx_
[单片机]
STM32小白入门(第九天)-------温湿度模块
型号:DHT11,测量范围在温度0-50度,湿度20-90%RH,4针单排直插式 注意事项: 1.如果想去跟踪温湿度代码跑到哪个位置,禁止使用串口打印输出,因为你们使用115200bps的时候,每打印一个字节都占用86us,会导致温湿度的检测超时。 开发板总共有4盏LED灯,代表16种状态,因为IO口速度是100MHz,所花的时间是10ns。
[单片机]
STM32的结构和组成
2.5 芯片里面有什么 STM32F103采用的是Cortex-M3内核,内核即CPU,由ARM公司设计。 ARM公司并不生产芯片,而是出售其芯片技术授权。 芯片生产厂商(SOC)如ST、TI、Freescale,负责在内核之外设计部件并生产整个芯片,这些内核之外的部件被称为核外外设或片上外设。 如:GPIO、USART(串口)、I2C、SPI等都在做片上外设。 ICode总线 ICode中的I表示Instruction,及指令。 我们写好的程序编译之后都是一条条指令,存放在FLASH中,内核要读取这些指令来执行程序就必须通过ICode总线。 驱动单元 DCode总线 D表示Data,即数据,这要总线是用来取数的。 D
[单片机]
STM32串口实验printf输出问题
问题1(与编译软件无关):在程序中加入printf语句实现串口输出,但未写重定向函数fputc,出现编译无任何警号和错误直接下载无法运行,软件仿真可以运行至MAIN函数,硬件仿真在汇编窗口看到停留在 0x0800XXXX BEAB BKPT 0xAB //进入调试模式 处无法继续运行。 解决办法:编写fputc函数如下: int fputc(int ch, FILE *f) { USART_SendData(USART1, (uint8_t) ch); while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET) {} re
[单片机]
STM32串口的设置和库函数的介绍
串口设置的一般步骤可以总结为如下几个: 1) 串口时钟使能, GPIO时钟使能 2) 串口复位 3)GPIO 端口模式设置 4) 串口参数初始化 5) 开启中断并且初始化 NVIC(如果需要开启中断才这个步骤) (如果需要开启中断才这个步骤) 6) 使能串口 使能串口 7) 编写中断处理函数 下面,我们就简单介绍这几个与串口基本配置直接相关的固件库函数。这些函数和 定义主要分布在 stm32f10x_usart.h ,stm32f10x_usart.c 文件中。 1.串口时钟使能。串口是挂载在APB2上的,所以使能函数为: RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1) 2.串
[单片机]
STM32学习之路:I2C的基本读写
宏定义: /*I2C传输速度,最高为400kHz*/ #define I2C_SPEED 400000 /* STM32 自身的 I2C 地址, 这个地址只要与 STM32 外挂的 I2C 器件地址不一样即可 */ #define I2C_OWN_ADDR 0x77 /*EEPROM地址*/ #define EEPROM_ADDR (0x50 1) //0xA0 #define EEPROM_SCL_GPIO_CLK RCC_AHB1Periph_GPIOB #define EEPROM_SCL_PIN GPIO_Pin_6 #define EEPROM_SCL_GPIO_PORT GPIOB #de
[单片机]
stm32的软件架构问题
1、 架构组成:程序代码分为四种结构 a) 顺序执行代码 定义:按照顺序逐行执行的代码 优点:是思路简单,代码可靠不易被干扰。 缺点:占用资源 用途:只用来各种变量、函数的定义,硬件的初始化程序 位置:main.c的开始一直到main函数的while函数之前 b) 空闲执行代码 定义:在CPU空闲的时候才执行的代码 优点:不占用资源 缺点:执行的实时性不能保证 用途:非实时任务,调试信息输出,不重要的状态指示 位置:main.c的main函数的while函数内部 c) 中断执行代码 定义:由软硬件事件打断整个程序而执行的代码 优点:可以保证实时性,各种中断可以安排优先顺序 缺点:关系相对复杂,互相之
[单片机]