Reset and Clock Control (RCC) support(rcc.h)
リセットとクロック制御(RCC)をサポート
原文
ヘッダーファイル:libmaple/rcc.h
関連ヘッダーファイル:stm32f1/include/series/rcc.h
概要
リセットとクロック制御(RCC)をサポートしています。
リセット
リセットには、システムリセット、電源リセット、バックアップドメインリセットの 3 種類があります。
データ型
■ struct rcc_reg_map
RCCレジスタマップ型
パブリックメンバー
__io uint32 CR クロック制御レジスタ(RCC_CR)
__io uint32 CFGR クロック設定レジスタ(RCC_CFGR)
__io uint32 CIR クロック割り込みレジスタ(RCC_CIR)
__io uint32 APB2RSTR APB2 ペリフェラルリセットレジスタ(RCC_APB2RSTR)
__io uint32 APB1RSTR APB1 ペリフェラルリセットレジスタ(RCC_APB1RSTR)
__io uint32 AHBENR AHB ペリフェラルクロックイネーブルレジスタ(RCC_AHBENR)
__io uint32 APB2ENR APB2 ペリフェラルクロック有効レジスタ(RCC_APB2ENR)
__io uint32 APB1ENR APB1 ペリフェラルクロック有効レジスタ(RCC_APB1ENR)
__io uint32 BDCR バックアップドメイン制御レジスタ(RCC_BDCR)
__io uint32 CSR 制御/ステータスレジスタ(RCC_CSR)
■ enum rcc_sysclk_src
SYSCLKソース
RCC_CLKSRC_HSI 0x0 HSI オシレータクロック
RCC_CLKSRC_HSE 0x1 HSE オシレータクロック
RCC_CLKSRC_PLL 0x2 PLL クロック
■ enum rcc_pllsrc
STM32F1 PLLクロック・ソース
RCC_PLLSRC_HSE (0x1 << 16)
RCC_PLLSRC_HSI_DIV_2 (0x0 << 16)
■ enum rcc_pll_multiplier
STM32F1 PLLマルチプライヤ
RCC_PLLMUL_2 (0x0 << 18)
RCC_PLLMUL_3 (0x1 << 18)
RCC_PLLMUL_4 (0x2 << 18)
RCC_PLLMUL_5 (0x3 << 18)
RCC_PLLMUL_6 (0x4 << 18)
RCC_PLLMUL_7 (0x5 << 18)
RCC_PLLMUL_8 (0x6 << 18)
RCC_PLLMUL_9 (0x7 << 18)
RCC_PLLMUL_10 (0x8 << 18)
RCC_PLLMUL_11 (0x9 << 18)
RCC_PLLMUL_12 (0xA << 18)
RCC_PLLMUL_13 (0xB << 18)
RCC_PLLMUL_14 (0xC << 18)
RCC_PLLMUL_15 (0xD << 18)
RCC_PLLMUL_16 (0xE << 18)
■ enum rcc_clk_id
周辺機器のバスおよびクロックラインを識別します。
また、その周辺機器(またはその対応するデバイス構造)の一意の識別子として一般的にも有用です。
RCC_ADC1
RCC_ADC2
RCC_ADC3
RCC_AFIO
RCC_BKP
RCC_CRC
RCC_DAC
RCC_DMA1
RCC_DMA2
RCC_FLITF
RCC_FSMC
RCC_GPIOA
RCC_GPIOB
RCC_GPIOC
RCC_GPIOD
RCC_GPIOE
RCC_GPIOF
RCC_GPIOG
RCC_I2C1
RCC_I2C2
RCC_PWR
RCC_SDIO
RCC_SPI1
RCC_SPI2
RCC_SPI3
RCC_SRAM
RCC_TIMER1
RCC_TIMER2
RCC_TIMER3
RCC_TIMER4
RCC_TIMER5
RCC_TIMER6
RCC_TIMER7
RCC_TIMER8
RCC_TIMER9
RCC_TIMER10
RCC_TIMER11
RCC_TIMER12
RCC_TIMER13
RCC_TIMER14
RCC_USART1
RCC_USART2
RCC_USART3
RCC_UART4
RCC_UART5
RCC_USB
■ enum rcc_clk_domain
RCC_APB1
RCC_APB2
RCC_AHB
■ enum rcc_prescaler
プリスケーラ識別子
RCC_PRESCALER_AHB
RCC_PRESCALER_APB1
RCC_PRESCALER_APB2
RCC_PRESCALER_USB
RCC_PRESCALER_ADC
■ enum rcc_adc_divider
ADCプリスケーラ分周器
RCC_ADCPRE_PCLK_DIV_2 0x0 << 14
RCC_ADCPRE_PCLK_DIV_4 0x1 << 14
RCC_ADCPRE_PCLK_DIV_6 0x2 << 14
RCC_ADCPRE_PCLK_DIV_8 0x3 << 14
■ enum rcc_apb1_divider
APB1プリスケーラ分周器
RCC_APB1_HCLK_DIV_1 0x0 << 8
RCC_APB1_HCLK_DIV_2 0x4 << 8
RCC_APB1_HCLK_DIV_4 0x5 << 8
RCC_APB1_HCLK_DIV_8 0x6 << 8
RCC_APB1_HCLK_DIV_16 0x7 << 8
■ enum rcc_apb2_divider
APB2プリスケーラ分周器
RCC_APB2_HCLK_DIV_1 0x0 << 11
RCC_APB2_HCLK_DIV_2 0x4 << 11
RCC_APB2_HCLK_DIV_4 0x5 << 11
RCC_APB2_HCLK_DIV_8 0x6 << 11
RCC_APB2_HCLK_DIV_16 0x7 << 11
■ enum rcc_ahb_divider
AHBプリスケーラ分周器
RCC_AHB_SYSCLK_DIV_1 0x0 << 4
RCC_AHB_SYSCLK_DIV_2 0x8 << 4
RCC_AHB_SYSCLK_DIV_4 0x9 << 4
RCC_AHB_SYSCLK_DIV_8 0xA << 4
RCC_AHB_SYSCLK_DIV_16 0xB << 4
RCC_AHB_SYSCLK_DIV_32 0xC << 4
RCC_AHB_SYSCLK_DIV_64 0xD << 4
RCC_AHB_SYSCLK_DIV_128 0xD << 4
RCC_AHB_SYSCLK_DIV_256 0xE << 4
RCC_AHB_SYSCLK_DIV_512 0xF << 4
デバイス
なし
API関数
(執筆中)
License and Attribution: Portions of this page were adapted from the Arduino Reference Documentation, which is released under a Creative Commons Attribution-ShareAlike 3.0 License.
このドキュメントはleafLabs, LLC.が執筆し、たま吉が翻訳・一部加筆修正したものです。
NAVER、ヤフオク等の営利目的の記事転用、リンク貼りは禁止です。