[[ファームウェア関数一覧>ファームウェア関数一覧#aa40dd64]] *SPI_Init [#vafadb6f] #contents **ヘッダ宣言 [#xddd117f] **関数プロトタイプ [#r300aebb] void SPI_Init(SPI_TypeDef* SPIx, SPI_InitTypeDef* SPI_InitStruct) **動作 [#md35f48e] -SPIx/I2Sx周辺回路レジスタに値を設定し初期化します。 **引数 [#e148f6d7] -SPIx&br; #include(Macro/SPIx,notitle) -SPI_InitStruct&br; '''stm32f10x_spi.h'''で定義されているSPI_InitTypeDef構造体へのポインタです。 typedef struct { uint16_t SPI_Direction; uint16_t SPI_Mode; uint16_t SPI_DataSize; uint16_t SPI_CPOL; uint16_t SPI_CPHA; uint16_t SPI_NSS; uint16_t SPI_BaudRatePrescaler; uint16_t SPI_FirstBit; uint16_t SPI_CRCPolynomial; } SPI_InitTypeDef; --SPI_Direction #include(Macro/SPI_Direction,notitle) --SPI_Mode #include(Macro/SPI_Mode,notitle) --SPI_DataSize #include(Macro/SPI_DataSize,notitle) --SPI_CPOL #include(Macro/SPI_CPOL,notitle) --SPI_CPHA #include(Macro/SPI_CPHA,notitle) --SPI_NSS #include(Macro/SPI_NSS,notitle) --SPI_BaudRatePrescaler #include(Macro/SPI_BaudRatePrescaler,notitle) --SPI_FirstBit #include(Macro/SPI_FirstBit,notitle) --SPI_CRCPolynomial&br; SPI_CRCPolynomialはCRC計算に使用される多項式を定義します。&br; uint16_t型で指定します。&br; &br; **出力値 [#o681cde7] -無し **戻り値 [#ufaad4d3] -無し **場所 [#kb59de54] **呼び出し関数 [#cb72c02b] -無し **サンプル [#r6b3367e] /* Initialize the SPI1 according to the SPI_InitStructure members */ SPI_InitTypeDef SPI_InitStructure; SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; SPI_InitStructure.SPI_Mode = SPI_Mode_Master; SPI_InitStructure.SPI_DatSize = SPI_DatSize_16b; SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low; SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge; SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_128; SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; SPI_InitStructure.SPI_CRCPolynomial = 7; SPI_Init(SPI1, &SPI_InitStructure); **参照 [#t0efaa1e] -