[[STM32]] *ファームウェア関数一覧 [#x153f89c] -最新のバージョンはV3.5.0 英語版の解説→[[STM32F10x Standard Peripherals Library 3.5.0>http://stm32.kosyak.info/doc/index.html]] #contents **STM32ファームウェア名称 [#t3934ccf] -STM32 Standard Peripheral Library (標準的な周辺回路) -STM32 USB Libray (USB関係) **初期化 [#e9e6a739] +ヘッダファイルをインクルード +クロックと割り込みを初期化 +周辺回路へクロックを供給 +周辺回路の割り込みを初期化する +GPIOを初期化する +メインルーチンを作る **RCC リセット・クロック・コントロール((Reset and Clock Control)) [#ab20bb5e] -[[RCC_DeInit]] P.130 -[[RCC_HSEConfig]] P.130 -[[RCC_WaitForHSEStartUp]] P.130 -[[RCC_AdjustHSICalibrationValue]] -[[RCC_HSICmd]] -[[RCC_PLLConfig]] P.130 -[[RCC_PLLCmd]] P.133 -[[RCC_SYSCLKConfig]] P.134 -[[RCC_GetSYSCLKSource]] P.134 -[[RCC_HCLKConfig]] P.132 -[[RCC_PCLK1Config]] P.132 -[[RCC_PCLK2Config]] P.132 -[[RCC_ITConfig]] -[[RCC_USBCLKConfig]] -[[RCC_ADCCLKConfig]] -[[RCC_LSEConfig]] -[[RCC_LSICmd]] -[[RCC_RTCCLKConfig]] -[[RCC_RTCCLKCmd]] -[[RCC_GetClocksFreq]] -[[RCC_AHBPeriphClockCmd]] -[[RCC_APB2PeriphClockCmd]] -[[RCC_APB1PeriphClockCmd]] -[[RCC_APB2PeriphResetCmd]] -[[RCC_APB1PeriphResetCmd]] -[[RCC_BackupResetCmd]] -[[RCC_ClockSecuritySystemCmd]] -[[RCC_MCOConfig]] -[[RCC_GetFlagStatus]] P.133 -[[RCC_ClearFlag]] -[[RCC_GetITStatus]] -[[RCC_ClearITPendingBit]] **[[GPIO]] 汎用入出力((General purpose I/O)) [#x6569942] -[[GPIO_DeInit]] -[[GPIO_AFIODeInit]] -[[GPIO_Init]] -[[GPIO_StructInit]] -[[GPIO_ReadInputDataBit]] -[[GPIO_ReadInputData]] -[[GPIO_ReadOutputDataBit]] -[[GPIO_ReadOutputData]] -[[GPIO_ResetBits]] -[[GPIO_SetBits]] -[[GPIO_WriteBit]] -[[GPIO_Write]] -[[GPIO_PinLockConfig]] -[[GPIO_EventOutputConfig]] -[[GPIO_EventOutputCmd]] -[[GPIO_PinRemapConfig]] -[[GPIO_EXTILineConfig]] -[[GPIO_ETH_MediaInterfaceConfig]] **[[TIM]] 高機能((Advanced-control timer))・汎用((general-purpose timer))・基本タイマ((basic timer))[#d5c56b4f] -[[TIM_DeInit]] -[[TIM_TimeBaseInit]] -[[TIM_OC1Init]] -[[TIM_OC2Init]] -[[TIM_OC3Init]] -[[TIM_OC4Init]] -[[TIM_ICInit]] -[[TIM_PWMIConfig]] -[[TIM_BDTRConfig]] -[[TIM_TimeBaseStructInit]] -[[TIM_OCStructInit]] -[[TIM_ICStructInit]] -[[TIM_BDTRStructInit]] -[[TIM_Cmd]] -[[TIM_CtrlPWMOutputs]] -[[TIM_ITConfig]] -[[TIM_GenerateEvent]] -[[TIM_DMAConfig]] -[[TIM_DMACmd]] -[[TIM_InternalClockConfig]] -[[TIM_ITRxExternalClockConfig]] -[[TIM_TIxExternalClockConfig]] -[[TIM_ETRClockMode1Config]] -[[TIM_ETRClockMode2Config]] -[[TIM_ETRConfig]] -[[TIM_PrescalerConfig]] -[[TIM_CounterModeConfig]] -[[TIM_SelectInputTrigger]] -[[TIM_EncoderInterfaceConfig]] -[[TIM_ForcedOC1Config]] -[[TIM_ForcedOC2Config]] -[[TIM_ForcedOC3Config]] -[[TIM_ForcedOC4Config]] -[[TIM_ARRPreloadConfig]] -[[TIM_SelectCOM]] -[[TIM_SelectCCDMA]] -[[TIM_CCPreloadControl]] -[[TIM_OC1PreloadConfig]] -[[TIM_OC2PreloadConfig]] -[[TIM_OC3PreloadConfig]] -[[TIM_OC4PreloadConfig]] -[[TIM_OC1FastConfig]] -[[TIM_OC2FastConfig]] -[[TIM_OC3FastConfig]] -[[TIM_OC4FastConfig]] -[[TIM_ClearOC1Ref]] -[[TIM_ClearOC2Ref]] -[[TIM_ClearOC3Ref]] -[[TIM_ClearOC4Ref]] -[[TIM_OC1PolarityConfig]] -[[TIM_OC1NPolarityConfig]] -[[TIM_OC2PolarityConfig]] -[[TIM_OC2NPolarityConfig]] -[[TIM_OC3PolarityConfig]] -[[TIM_OC3NPolarityConfig]] -[[TIM_OC4PolarityConfig]] -[[TIM_CCxCmd]] -[[TIM_CCxNCmd]] -[[TIM_SelectOCxM]] -[[TIM_UpdateDisableConfig]] -[[TIM_UpdateRequestConfig]] -[[TIM_SelectHallSensor]] -[[TIM_SelectOnePulseMode]] -[[TIM_SelectOutputTrigger]] -[[TIM_SelectSlaveMode]] -[[TIM_SelectMasterSlaveMode]] -[[TIM_SetCounter]] -[[TIM_SetAutoreload]] -[[TIM_SetCompare1]] -[[TIM_SetCompare2]] -[[TIM_SetCompare3]] -[[TIM_SetCompare4]] -[[TIM_SetIC1Prescaler]] -[[TIM_SetIC2Prescaler]] -[[TIM_SetIC3Prescaler]] -[[TIM_SetIC4Prescaler]] -[[TIM_SetClockDivision]] -[[TIM_GetCapture1]] -[[TIM_GetCapture2]] -[[TIM_GetCapture3]] -[[TIM_GetCapture4]] -[[TIM_GetCounter]] -[[TIM_GetPrescaler]] -[[TIM_GetFlagStatus]] -[[TIM_ClearFlag]] -[[TIM_GetITStatus]] -[[TIM_ClearITPendingBit]] **[[ADC]] アナログ・デジタル・コンバータ ((Analog Digital Converter)) [#p05d83d5] -[[ADC_DeInit]] -[[ADC_Init]] -[[ADC_StructInit]] -[[ADC_Cmd]] -[[ADC_DMACmd]] -[[ADC_ITConfig]] -[[ADC_ResetCalibration]] -[[ADC_GetResetCalibrationStatus]] -[[ADC_StartCalibration]] -[[ADC_GetCalibrationStatus]] -[[ADC_SoftwareStartConvCmd]] -[[ADC_GetSoftwareStartConvStatus]] -[[ADC_DiscModeChannelCountConfig]] -[[ADC_DiscModeCmd]] -[[ADC_RegularChannelConfig]] -[[ADC_ExternalTrigConvCmd]] -[[ADC_GetConversionValue]] -[[ADC_GetDualModeConversionValue]] -[[ADC_AutoInjectedConvCmd]] -[[ADC_InjectedDiscModeCmd]] -[[ADC_ExternalTrigInjectedConvConfig]] -[[ADC_ExternalTrigInjectedConvCmd]] -[[ADC_SoftwareStartInjectedConvCmd]] -[[ADC_GetSoftwareStartInjectedConvCmdStatus]] -[[ADC_InjectedChannelConfig]] -[[ADC_InjectedSequencerLengthConfig]] -[[ADC_SetInjectedOffset]] -[[ADC_GetInjectedConversionValue]] -[[ADC_AnalogWatchdogCmd]] -[[ADC_AnalogWatchdogThresholdsConfig]] -[[ADC_AnalogWatchdogSingleChannelConfig]] -[[ADC_TempSensorVrefintCmd]] -[[ADC_GetFlagStatus]] -[[ADC_ClearFlag]] -[[ADC_GetITStatus]] -[[ADC_ClearITPendingBit]] **[[DAC]] デジタル・アナログ・コンバータ ((Digital Analog Converter)) [#l255bb6f] -[[DAC_DeInit]] -[[DAC_Init]] -[[DAC_StructInit]] -[[DAC_Cmd]] -[[DAC_DMACmd]] -[[DAC_SoftwareTriggerCmd]] -[[DAC_DualSoftwareTriggerCmd]] -[[DAC_WaveGenerationCmd]] -[[DAC_SetChannel1Data]] -[[DAC_SetChannel2Data]] -[[DAC_SetDualChannelData]] -[[DAC_GetDataOutputValue]] **[[EXTI]] 外部割込み・イベント・コントローラ ((External interrupt/event controller)) [#rc3e7042] -[[EXTI_DeInit]] -[[EXTI_Init]] -[[EXTI_StructInit]] -[[EXTI_GenerateSWInterrupt]] -[[EXTI_GetFlagStatus]] -[[EXTI_ClearFlag]] -[[EXTI_GetITStatus]] -[[EXTI_ClearITPendingBit]] **NVIC ネスト型ベクタ割り込みコントローラ ((Nested vectored interrupt controller))[#ydece7d3] -[[NVIC_DeInit]] -[[NVIC_SCBDeInit]] -[[NVIC_PriorityGroupConfig]] -[[NVIC_Init]] -[[NVIC_StructInit]] -[[NVIC_SETPRIMASK]] -[[NVIC_RESETPRIMASK]] -[[NVIC_SETFAULTMASK]] -[[NVIC_RESETFAULTMASK]] -[[NVIC_BASEPRICONFIG]] -[[NVIC_GetBASEPRI]] -[[NVIC_GetCurrentPendingIRQChannel]] -[[NVIC_GetIRQChannelPendingBitStatus]] -[[NVIC_SetIRQChannelPendingBit]] -[[NVIC_ClearIRQChannelPendingBit]] -[[NVIC_GetCurrentActiveHandler]] -[[NVIC_GetIRQChannelActiveBitStatus]] -[[NVIC_GetCPUID]] -[[NVIC_SetVectorTable]] -[[NVIC_GenerateSystemReset]] -[[NVIC_GenerateCoreReset]] -[[NVIC_SystemLPConfig]] -[[NVIC_SystemHandlerConfig]] -[[NVIC_SystemHandlerPriorityConfig]] -[[NVIC_GetSystemHandlerPendingBitStatus]] -[[NVIC_SetSystemHandlerPendingBit]] -[[NVIC_ClearSystemHandlerPendingBit]] -[[NVIC_GetSystemHandlerActiveBitStatus]] -[[NVIC_GetFaultHandlerSources]] -[[NVIC_GetFaultAddress]] **SysTick システム・タイマ((Cortex system timer)) [#hdeaf8eb] -[[SysTick_CLKSourceConfig]] -[[SysTick_SetReload]] -[[SysTick_CounterCmd]] -[[SysTick_ITConfig]] -[[SysTick_GetCounter]] -[[SysTick_GetFlagStatus]] **[[BKP]] バックアップ・レジスタ ((Backup registers))[#k4f94425] -[[BKP_DeInit]] -[[BKP_TamperPinLevelConfig]] -[[BKP_TamperPinCmd]] -[[BKP_ITConfig]] -[[BKP_RTCOutputConfig]] -[[BKP_SetRTCCalibrationValue]] -[[BKP_WriteBackupRegister]] -[[BKP_ReadBackupRegister]] -[[BKP_GetFlagStatus]] -[[BKP_ClearFlag]] -[[BKP_GetITStatus]] -[[BKP_ClearITPendingBit]] **[[RTC]] リアル・タイム・クロック ((Real Time Clock))[#i5485a63] -[[RTC_ITConfig]] -[[RTC_EnterConfigMode]] -[[RTC_ExitConfigMode]] -[[RTC_GetCounter]] -[[RTC_SetCounter]] -[[RTC_SetPrescaler]] -[[RTC_SetAlarm]] -[[RTC_GetDivider]] -[[RTC_WaitForLastTask]] -[[RTC_WaitForSynchro]] -[[RTC_GetFlagStatus]] -[[RTC_ClearFlag]] -[[RTC_GetITStatus]] -[[RTC_ClearITPendingBit]] **CAN コントロール・エリア・ネットワーク(車載用)((Controller Area Network)) [#n7b42187] -[[CAN_DeInit]] -[[CAN_Init]] -[[CAN_FilterInit]] -[[CAN_StructInit]] -[[CAN_SlaveStartBank]] -[[CAN_ITConfig]] -[[CAN_Transmit]] -[[CAN_TransmitStatus]] -[[CAN_CancelTransmit]] -[[CAN_FIFORelease]] -[[CAN_MessagePending]] -[[CAN_Receive]] -[[CAN_DBGFreeze]] -[[CAN_Sleep]] -[[CAN_WakeUp]] -[[CAN_GetFlagStatus]] -[[CAN_ClearFlag]] -[[CAN_GetITStatus]] -[[CAN_ClearITPendingBit]] **CEC 家電用コントロール((Consumer Electronics Control)) [#eaf0ca5b] バリュー・ラインに含まれるHDMI規格に含まれるConsumer Electronics Control (CEC)プロトコル用のハードウェア・サポート用関数。古いファームウェアには含まれていません。 //-[[CEC_DeInit]] //-[[CEC_Init]] //-[[CEC_Cmd]] //-[[CEC_ITConfig]] //-[[CEC_OwnAddressConfig]] //-[[CEC_SetPrescaler]] //-[[CEC_SendDataByte]] //-[[CEC_ReceiveDataByte]] //-[[CEC_StartOfMessage]] //-[[CEC_EndOfMessageCmd]] //-[[CEC_GetFlagStatus]] //-[[CEC_ClearFlag]] //-[[CEC_GetITStatus]] //-[[CEC_ClearITPendingBit]] **CRC チェックサム[#df15c5d3] -[[CRC_ResetDR]] -[[CRC_CalcCRC]] -[[CRC_CalcBlockCRC]] -[[CRC_GetCRC]] -[[CRC_SetIDRegister]] -[[CRC_GetIDRegister]] **DEBUG MCU デバッグ用[#m34af414] -[[DBGMCU_GetREVID]] -[[DBGMCU_GetDEVID]] -[[DBGMCU_Config]] **[[DMA]] ダイレクト・メモリ・アクセス[#o079713f] -[[DMA_DeInit]] -[[DMA_Init]] -[[DMA_StructInit]] -[[DMA_Cmd]] -[[DMA_ITConfig]] -[[DMA_GetCurrDataCounter]] -[[DMA_GetFlagStatus]] -[[DMA_ClearFlag]] -[[DMA_GetITStatus]] -[[DMA_ClearITPendingBit]] **Flash フラッシュ・メモリ[#udd0c846] ***all STM32F10x devices [#z4c1b448] -[[FLASH_SetLatency]] -[[FLASH_HalfCycleAccessCmd]] -[[FLASH_PrefetchBufferCmd]] -[[FLASH_Unlock]] -[[FLASH_Lock]] -[[FLASH_ErasePage]] -[[FLASH_EraseAllPages]] -[[FLASH_EraseOptionBytes]] -[[FLASH_ProgramWord]] -[[FLASH_ProgramHalfWord]] -[[FLASH_ProgramOptionByteData]] -[[FLASH_EnableWriteProtection]] -[[FLASH_ReadOutProtection]] -[[FLASH_UserOptionByteConfig]] -[[FLASH_GetUserOptionByte]] -[[FLASH_GetWriteProtectionOptionByte]] -[[FLASH_GetReadOutProtectionStatus]] -[[FLASH_GetPrefetchBufferStatus]] -[[FLASH_ITConfig]] -[[FLASH_GetFlagStatus]] -[[FLASH_ClearFlag]] -[[FLASH_GetStatus]] -[[FLASH_WaitForLastOperation]] //***New function used for all STM32F10x devices [#r5d16a4a] //-[[FLASH_UnlockBank1]] //-[[FLASH_LockBank1]] //-[[FLASH_EraseAllBank1Pages]] //-[[FLASH_GetBank1Status]] //-[[FLASH_WaitForLastBank1Operation]] //***STM32F10X_XL New Functions used only with STM32F10x_XL density devices [#x16ad9b3] //-[[FLASH_UnlockBank2]] //-[[FLASH_LockBank2]] //-[[FLASH_EraseAllBank2Pages]] //-[[FLASH_GetBank2Status]] //-[[FLASH_WaitForLastBank2Operation]] //-[[FLASH_BootConfig]] **FSMC 可変型SRAMコントローラ((Flexible static memory controller))[#d399b80f] -[[FSMC_NORSRAMDeInit]] -[[FSMC_NANDDeInit]] -[[FSMC_PCCARDDeInit]] -[[FSMC_NORSRAMInit]] -[[FSMC_NANDInit]] -[[FSMC_PCCARDInit]] -[[FSMC_NORSRAMStructInit]] -[[FSMC_NANDStructInit]] -[[FSMC_PCCARDStructInit]] -[[FSMC_NORSRAMCmd]] -[[FSMC_NANDCmd]] -[[FSMC_PCCARDCmd]] -[[FSMC_NANDECCCmd]] -[[FSMC_GetECC]] -[[FSMC_ITConfig]] -[[FSMC_GetFlagStatus]] -[[FSMC_ClearFlag]] -[[FSMC_GetITStatus]] -[[FSMC_ClearITPendingBit]] **[[I2C]] ((Inter-integrated circuit))[#u5cbf254] -[[I2C_DeInit]] -[[I2C_Init]] -[[I2C_StructInit]] -[[I2C_Cmd]] -[[I2C_DMACmd]] -[[I2C_DMALastTransferCmd]] -[[I2C_GenerateSTART]] -[[I2C_GenerateSTOP]] -[[I2C_AcknowledgeConfig]] -[[I2C_OwnAddress2Config]] -[[I2C_DualAddressCmd]] -[[I2C_GeneralCallCmd]] -[[I2C_ITConfig]] -[[I2C_SendData]] -[[I2C_ReceiveData]] -[[I2C_Send7bitAddress]] -[[I2C_ReadRegister]] -[[I2C_SoftwareResetCmd]] -[[I2C_SMBusAlertConfig]] -[[I2C_TransmitPEC]] -[[I2C_PECPositionConfig]] -[[I2C_CalculatePEC]] -[[I2C_GetPEC]] -[[I2C_ARPCmd]] -[[I2C_StretchClockCmd]] -[[I2C_FastModeDutyCycleConfig]] -[[I2C_GetLastEvent]] -[[I2C_CheckEvent]] -[[I2C_GetFlagStatus]] -[[I2C_ClearFlag]] -[[I2C_GetITStatus]] -[[I2C_ClearITPendingBit]] **IWDG 独立型ウォッチドッグタイマ ((Independent watchdog))[#s0df8aa1] -[[IWDG_WriteAccessCmd]] -[[IWDG_SetPrescaler]] -[[IWDG_SetReload]] -[[IWDG_ReloadCounter]] -[[IWDG_Enable]] -[[IWDG_GetFlagStatus]] **PWR 電源管理 ((Power control))[#g4c40750] -[[PWR_DeInit]] -[[PWR_BackupAccessCmd]] -[[PWR_PVDCmd]] -[[PWR_PVDLevelConfig]] -[[PWR_WakeUpPinCmd]] -[[PWR_EnterSTOPMode]] -[[PWR_EnterSTANDBYMode]] -[[PWR_GetFlagStatus]] -[[PWR_ClearFlag]] **[[SDIO]] SDIOコントローラ[#z9fb476e] -[[SDIO_DeInit]] -[[SDIO_Init]] -[[SDIO_StructInit]] -[[SDIO_ClockCmd]] -[[SDIO_SetPowerState]] -[[SDIO_GetPowerState]] -[[SDIO_ITConfig]] -[[SDIO_DMACmd]] -[[SDIO_SendCommand]] -[[SDIO_CmdStructInit]] -[[SDIO_GetCommandResponse]] -[[SDIO_GetResponse]] -[[SDIO_DataConfig]] -[[SDIO_DataStructInit]] -[[SDIO_GetDataCounter]] -[[SDIO_ReadData]] -[[SDIO_WriteData]] -[[SDIO_GetFIFOCount]] -[[SDIO_StartSDIOReadWait]] -[[SDIO_StopSDIOReadWait]] -[[SDIO_SetSDIOReadWaitMode]] -[[SDIO_SetSDIOOperation]] -[[SDIO_SendSDIOSuspendCmd]] -[[SDIO_CommandCompletionCmd]] -[[SDIO_CEATAITCmd]] -[[SDIO_SendCEATACmd]] -[[SDIO_GetFlagStatus]] -[[SDIO_ClearFlag]] -[[SDIO_GetITStatus]] -[[SDIO_ClearITPendingBit]] **[[SPI]] シリアル・ペリフェラル・インターフェイス ((Sirial Peripheral Interface))[#aa40dd64] -[[SPI_I2S_DeInit]] -[[SPI_Init]] -[[I2S_Init]] -[[SPI_StructInit]] -[[I2S_StructInit]] -[[SPI_Cmd]] -[[I2S_Cmd]] -[[SPI_I2S_ITConfig]] -[[SPI_I2S_DMACmd]] -[[SPI_I2S_SendData]] -[[SPI_I2S_ReceiveData]] -[[SPI_NSSInternalSoftwareConfig]] -[[SPI_SSOutputCmd]] -[[SPI_DataSizeConfig]] -[[SPI_TransmitCRC]] -[[SPI_CalculateCRC]] -[[SPI_GetCRC]] -[[SPI_GetCRCPolynomial]] -[[SPI_BiDirectionalLineConfig]] -[[SPI_I2S_GetFlagStatus]] -[[SPI_I2S_ClearFlag]] -[[SPI_I2S_GetITStatus]] -[[SPI_I2S_ClearITPendingBit]] **[[USART]] 汎用シリアル通信((Universal Synchronous asynchronous reciver transmitter))[#q5c66355] -[[USART_DeInit]] -[[USART_Init]] -[[USART_StructInit]] -[[USART_ClockInit]] -[[USART_ClockStructInit]] -[[USART_Cmd]] -[[USART_ITConfig]] -[[USART_DMACmd]] -[[USART_SetAddress]] -[[USART_WakeUpConfig]] -[[USART_ReceiverWakeUpCmd]] -[[USART_LINBreakDetectLengthConfig]] -[[USART_LINCmd]] -[[USART_SendData]] -[[USART_ReceiveData]] -[[USART_SendBreak]] -[[USART_SetGuardTime]] -[[USART_SetPrescaler]] -[[USART_SmartCardCmd]] -[[USART_SmartCardNACKCmd]] -[[USART_HalfDuplexCmd]] -[[USART_OverSampling8Cmd]] -[[USART_OneBitMethodCmd]] -[[USART_IrDAConfig]] -[[USART_IrDACmd]] -[[USART_GetFlagStatus]] -[[USART_ClearFlag]] -[[USART_GetITStatus]] -[[USART_ClearITPendingBit]] **[[WWDG]] (ウィンドウ型ウォッチドッグタイマ) [#jf61f540] ウォッチドッグタイマ機能の特別なサブセットです。 -[[WWDG_DeInit]] -[[WWDG_SetPrescaler]] -[[WWDG_SetWindowValue]] -[[WWDG_EnableIT]] -[[WWDG_SetCounter]] -[[WWDG_Enable]] -[[WWDG_GetFlagStatus]] -[[WWDG_ClearFlag]]