匿名
未登录
登录
百问网嵌入式Linux wiki
搜索
查看“VREFBUF internal peripheral”的源代码
来自百问网嵌入式Linux wiki
名字空间
页面
讨论
更多
更多
页面选项
Read
查看源代码
历史
←
VREFBUF internal peripheral
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
==Article purpose== The purpose of this article is to * briefly introduce the VREFBUF peripheral and its main features * indicate the level of security supported by this hardware block * explain how each instance can be allocated to the three runtime contexts and linked to the corresponding software components * explain, when needed, how to configure the VREFBUF peripheral. ==Peripheral overview== The '''VREFBUF''' peripheral is an internal voltage regulator. ===Features=== The VREFBUF is supplied via the VDDA pin. When enabled, it can provide a reference voltage in the range of: 1,5V, 1,8V, 2,048V or 2,5V. The VREFBUF can be used to provide an analog voltage reference for: * ADC internal peripheral<ref name="adc_internal">[[ADC internal peripheral]]</ref> * DAC internal peripheral<ref name="dac_internal">[[DAC internal peripheral]]</ref> * External components through the dedicated VREF+ pin. The VREFBUF can be left unused. In this case, an external voltage regulator can provide reference voltage to VREF+ pin. Refer to the [[STM32MP15 resources#Reference manuals|STM32MP15 reference manuals]] for the complete list of features, and to the software components, introduced below, to know which features are really implemented. ===Security support=== The VREFBUF is a '''non-secure''' peripheral. ==Peripheral usage and associated software== ===Boot time=== The VREFBUF is usually not used at boot time. But it may be needed by the SSBL (see [[Boot chain overview]]), to supply the internal ADC<ref name="adc_internal"/> for example. ===Runtime=== ====Overview==== The VREFBUF can be allocated to the Arm<sup>®</sup> Cortex<sup>®</sup>-A7 non-secure to be used under Linux<sup>®</sup> with regulator framework<ref name="regulator">[[Regulator overview]], Linux<sup>®</sup> regulator framework overview</ref>. {{Info|The VREFBUF is a system resource<ref name="resource manager">[[Resource_manager_for_coprocessing#The_system_resources|Resource manager for coprocessing]], focus on system resources</ref> which needs to be also controlled by the resource manager<ref name="resource manager"/> in case its consumers (e.g. ADC<ref name="adc_internal"/>, DAC<ref name="dac_internal"/> or an external device connected to VREF+ pin) are spread across: * the Arm<sup>®</sup> Cortex<sup>®</sup>-A7 non-secure context * the Arm<sup>®</sup> Cortex<sup>®</sup>-M4 context For this reason, the direct control of VREFBUF from the Arm<sup>®</sup> Cortex<sup>®</sup>-M4 is not recommended in STM32Cube<ref name="STM32Cube">[[STM32CubeMP1 architecture]]</ref> by default.<br/> It's recommended to implement it in STM32Cube '''only if''' all consumers and the VDDA supply pin are controlled in the Arm<sup>®</sup> Cortex<sup>®</sup>-M4 context. }} The [[#Peripheral assignment|Peripheral assignment]] chapter describes which peripheral instance can be assigned to which context. ====Software frameworks==== {{:Internal_peripherals_software_table_template}} | Analog | [[VREFBUF internal peripheral|VREFBUF]] | | Linux [[Regulator overview|regulator]] framework | | |- |} ====Peripheral configuration==== The configuration is applied by the firmware running in the context to which the peripheral is assigned. The configuration by itself can be performed via the [[STM32CubeMX]] tool for all internal peripherals. It can then be manually completed (especially for external peripherals) according to the information given in the corresponding software framework article. * For the Linux kernel configuration, please refer to [[Regulator_overview#Microcontroller_device_internal_regulator|device internal regulator]]. An example can be found also in [[ADC_device_tree_configuration#DT_configuration_example|ADC DT configuration example]] * In case the control of VREFBUF consumers are spread across the various cores, see also [[Resource manager for coprocessing]] ====Peripheral assignment==== {{:Internal_peripherals_assignment_table_template}} <onlyinclude> | rowspan="1" | Analog | rowspan="1" | [[VREFBUF internal peripheral|VREFBUF]] | VREFBUF | | <span title="assignable peripheral" style="font-size:21px">☐</span> | | Assignment (single choice) |- </onlyinclude> |} ==References== <references/>
该页面使用的模板:
Internal peripherals assignment table template
(
查看源代码
)
Internal peripherals software table template
(
查看源代码
)
模板:Info
(
查看源代码
)
模板:STDarkBlue
(
查看源代码
)
模板:STLightBlue
(
查看源代码
)
模板:STLightGrey
(
查看源代码
)
模板:STPink
(
查看源代码
)
返回至
VREFBUF internal peripheral
。
导航
导航
WIKI首页
官方店铺
资料下载
交流社区
所有页面
所有产品
MPU-Linux开发板
MCU-单片机开发板
Linux开发系列视频
单片机开发系列视频
所有模块配件
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志