这是本文档旧的修订版!
银杏科技有限公司旗下技术文档发布平台 |
技术支持电话 | 0379-69926675-801 |
技术支持邮件 | Gingko@vip.163.com |
技术论坛 | http://www.eeschool.org |
版本 | 日期 | 作者 | 修改内容 |
V1.0 | 2019-02-19 | gingko | 初次建立 |
STM32CubeMX教程八——I2C实验
1. 在主界面选择File–>New Project 或者直接点击ACCEE TO MCU SELECTOR
2. 出现芯片型号选择,搜索自己芯片的型号,双击型号,或者点击Start Project进入配置在搜索栏的下面,提供的各种查找方式,可以选择芯片内核,型号,等等,可以帮助你查找芯片。本实验选取的芯片型号为:STM32H750IBKx。
3. 配置RCC,使用外部时钟源
4. 时基源选择SysTick
5. 将PA10,PB7,PB8设置为GPIO_Output
6. 引脚模式配置
7. 时钟源设置,选择外部高速时钟源,配置为最大主频
8. 工程文件的设置, 这里就是工程的各种配置 我们只用到有限几个,其他的默认即可 IDE我们使用的是 MDK V5.27
9. 点击Code Generator,进行进一步配置
Copy all used libraries into the project folder
将HAL库的所有.C和.H都复制到所建工程中
优点:这样如果后续需要新增其他外设又可能不再用STM32CubeMX的时候便会很方便
缺点:体积大,编译时间很长
Copy only the necessary library files
只复制所需要的.C和.H(推荐)
优点:体积相对小,编译时间短,并且工程可复制拷贝
缺点:新增外设时需要重新用STM32CubeMX导入
Add necessary library files as reference in the toolchain project configuration file
不复制文件,直接从软件包存放位置导入.C和.H
优点:体积小,比较节约硬盘空间
缺点:复制到其他电脑上或者软件包位置改变,就需要修改相对应的路径
自行选择方式即可
10. 然后点击GENERATE CODE 创建工程
创建成功,打开工程。
实验八:I2C通信实验——配置板载电源
一、 实验目的与意义
了解STM32 I2C结构
了解STM32 I2C特征
掌握I2C的使用方法
掌握STM32 HAL库中I2C属性的配置方法
掌握KEILMDK 集成开发环境使用方法
二、 实验设备及平台
iCore4T 双核心板
JLINK(或相同功能)仿真器
Micro USB线缆
Keil MDK 开发平台
STM32CubeMX开发平台
装有WIN XP(及更高版本)系统的计算机
三、 实验原理
1.AXP152简介
AXP152是一款高度集成的电源管理芯片,包含 4 路高效 DCDC、7 路 LDO,输出电压可灵活配置。AXP152用于需要多路电源转换的应用场景,并可与本公司其它 PMU 配合构成完整的单芯或多芯锂电池(锂离子或锂聚合物)应用场景电源解决方案,充分满足目前日益复杂的应用处理器系统对于电源多输出、大电流、高精度的要求。
AXP152 内部集成了过压欠压保护(OVP/UVP)、过温保护(OTP)等保护功能,可充分保障供电的安全稳定。
AXP152 提供了一个两线串行通信接口:Two Wire Serial Interface (TWSI),应用处理器可以通过这个接口设置各路输出的电压,打开/关闭某些电源输出,以及配置中断和睡眠唤醒系统。
特性:
4路同步降压转换器 (DC-DC):
DC-DC1:PFM/PWM 两种工作模式,可在1.7-3.5V 之间部分调节,驱动能力 1A
DC-DC2:PFM/PWM 两种工作模式,可在0.7-2.275V 之间调节, 25mV/step,驱动能力 2A,支持 DVM
DC-DC3:PFM/PWM 两种工作模式,可在0.7-3.5V 之间调节, 50mV/step, 驱动能力 1.2A
DC-DC4:PFM/PWM 两种工作模式,可在0.7-3.5V 之间调节, 25mV/step, 驱动能力 1.2A
7 路线性稳压器 (LDO):
LDO0:输出电压可调,驱动能力 1.5A,内部500/900/1500mA 限流
RTCLDO:1 路 RTC31,输出 3.1V(可外灌)。1 路 RTC13,输出电压 1.3/1.8V 可选
ALDO1:Analog LDO, 1.2-3.3V 部分可调,驱动能力 300mA
ALDO2:Analog LDO, 1.2-3.3V 部分可调,驱动能力 300mA
DLDO1:Digtal LDO 或 Swtich, 0.7-3.5V 可调,100mV/step,驱动能力 300mA
DLDO2:Digtal LDO 或 Swtich, 0.7-3.5V 可调,25mV/step,驱动能力 300mA
GPIOLDO:low noise LDO, 1.8-3.3V 可调节,100mV/step, 驱动能力 20mA
系统管理(System Management):
支持软关机和硬关机
支持外部触发源唤醒
支持输出电压监测
输出 PWROK,用于系统复位或关机指示
过/欠压保护 (OVP/UVP)
过温保护 (OTP)
可定制时序和输出电压
管脚定义:
原理图如下所示:
2.AXP152读写时序图
3.AXP152部分寄存器介绍
四、 实验程序
1. 主函数
2. AXP152常量定义
3.AXP152各路输出电压设定函数
五、 实验步骤
把仿真器与iCore4T的SWD调试口相连(直接相连或者通过转接器相连);
把iCore4T通过Micro USB线与计算机相连,为iCore4T供电;
打开Keil MDK 开发环境,并打开本实验工程;
烧写程序到iCore4T上;
也可以进入Debug 模式,单步运行或设置断点验证程序逻辑。
六、 实验现象