[[ファームウェア関数一覧>ファームウェア関数一覧#d399b80f]]
*FSMC_NANDInit [#v5d7b992]
#contents
**ヘッダ宣言 [#pba3c128]

**関数プロトタイプ [#a1cec2cc]
 void FSMC_NANDInit(FSMC_NAND_PCCARDInitTypeDef* FSMC_NANDInitStruct)
**動作 [#r69145e4]
-FSMC_NANDInitStruct構造体で指定されたパラメタにより、FSMC NANDバンクを初期化します。
**引数 [#de0946f0]
-FSMC_NANDInitStruct&br;
FSMC_NAND_PCCARDTimingInitTypeDef と FSMC_NANDInitTypeDef は、'''stm32f10x_fsmc.h'''で定義されています。
--FSMC_NAND_PCCARDTimingInitTypeDef
 typedef struct
 {
  uint32_t FSMC_SetupTime;
  uint32_t FSMC_WaitSetupTime;
  uint32_t FSMC_HoldSetupTime;
  uint32_t FSMC_HiZSetupTime;
 }FSMC_NAND_PCCARDTimingInitTypeDef
---FSMC_SetupTime&br;
NAND Flash メモリの共通・個別又はI/Oメモリスペースへリード又はライトアクセスする前のアドレスセットアップタイムのHCLKサイクル数を定義します(構成するメモリスペースのタイミングに依存します)。このパラメタは0から0xFFの間を取るでしょう。&br;
&br;
---FSMC_WaitSetupTime&br;
NAND Flash メモリの共通・個別又はI/Oメモリスペースへリード又はライトアクセスするコマンドを発行する前のHCLKサイクル数を定義します(構成するメモリスペースのタイミングに依存します)。このパラメタは0から0xFFの間を取るでしょう。&br;
&br;
---FSMC_HoldSetupTime&br;
NAND Flash メモリの共通・個別又はI/Oメモリスペースへリード又はライトアクセスするコマンドを発行した後のアドレスホールドタイムのHCLKサイクル数を定義します(構成するメモリスペースのタイミングに依存します)。このパラメタは0から0xFFの間を取るでしょう。&br;
&br;
---FSMC_HiZSetupTime&br;
NAND Flash メモリの共通・個別又はI/Oメモリスペースへライトアクセスをスタートした時にデータバスがHiZに保たれるHCLKサイクル数を定義します(構成するメモリスペースのタイミングに依存します)。このパラメタは0から0xFFの間を取るでしょう。&br;
&br;
&br;
--FSMC_NANDInitTypeDef
 typedef struct
 {
  uint32_t FSMC_Bank;
  uint32_t FSMC_Waitfeature;
  uint32_t FSMC_MemoryDataWidth;
  uint32_t FSMC_ECC;
  uint32_t FSMC_ECCPageSize;
  uint32_t FSMC_AddressLowMapping;
  uint32_t FSMC_TCLRSetupTime;
  uint32_t FSMC_TARSetupTime;
  /* FSMC Common Space Timing */
  FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_CommonSpaceTimingStruct;
  /* FSMC Attribute Space Timing */
  FSMC_NAND_PCCARDTimingInitTypeDef*
  FSMC_AttributeSpaceTimingStruct;
 }FSMC_NANDInitTypeDef;
---FSMC_Bank&br;
使用するメモリバンクを指定します。&br;
&br;
#include(Macro/FSMC_Bank_NAND,notitle)
&br;
---FSMC_Waitfeature&br;
wiat機能を有効、または無効化します。&br;
&br;
#include(Macro/FSMC_Waitfeature,notitle)
&br;
---FSMC_MemoryDataWidth&br;
メモリデバイスのデータ幅を指定します。&br;
&br;
#include(Macro/FSMC_MemoryDataWidth,notitle)
&br;
---FSMC_ECC&br;
ECC計算を有効、または無効化します。&br;
&br;
#include(Macro/FSMC_ECC,notitle)
&br;
---FSMC_ECCPageSize&br;
拡張ECCのページサイズを設定します。&br;
&br;
#include(Macro/FSMC_ECCPageSize,notitle)
&br;
---FSMC_AddressLowMapping&br;
アドレスA24:16をNAND-フラッシュコントローラアドレスビットの何処に割り付けるか定義します。&br;
&br;
#include(Macro/FSMC_AddressLowMapping,notitle)
&br;
---FSMC_TCLRSetupTime&br;
CLEがLレベルになってREがLレベルになる間の遅延時間をHCLKのサイクル数で定義します。このパラメタは0から0xFFの間の値を取るでしょう。&br;
&br;
---FSMC_TARSetupTime&br;
ALEがLレベルになってREがLレベルになる間の遅延時間をHCLKのサイクル数で定義します。このパラメタは0から0xFFの間の値を取るでしょう。&br;
&br;
**戻り値 [#ua53de7c]
-無し
**出力値 [#df7eafea]
-無し
**呼び出し関数 [#oe7b1ae9]
-無し
**サンプル [#jd473679]
 /* Initialize the FSMC NAND memory Bank2 according to the
 FSMC_NANDInitStructure members */
 FSMC_NANDSRAMInitTypeDef FSMC_NANDSRAMInitStructure;
 FSMC_NAND_PCCARDTimingInitTypeDef FSMC_CommonSpaceTimingStructure;
 FSMC_NAND_PCCARDTimingInitTypeDef
 FSMC_AttributeSpaceTimingStructure;
 FSMC_CommonSpaceTimingStructure.FSMC_SetupTime = 0x4;
 FSMC_CommonSpaceTimingStructure.FSMC_WaitSetupTime = 0x0;
 FSMC_CommonSpaceTimingStructure.FSMC_HoldSetupTime = 0x7;
 FSMC_CommonSpaceTimingStructure.FSMC_HiZSetupTime = 0x0;
 FSMC_AttributeSpaceTimingStructure.FSMC_SetupTime = 0x4;
 FSMC_AttributeSpaceTimingStructure.FSMC_WaitSetupTime = 0x0;
 FSMC_AttributeSpaceTimingStructure.FSMC_HoldSetupTime = 0x7;
 FSMC_AttributeSpaceTimingStructure.FSMC_HiZSetupTime = 0x0;
 FSMC_NANDSRAMInitStructure.FSMC_Bank = FSMC_Bank2_NAND;
 FSMC_NANDSRAMInitStructure.FSMC_Waitfeature =
 FSMC_Waitfeature_Enable;
 FSMC_NANDSRAMInitStructure.FSMC_MemoryDataWidth =
 FSMC_MemoryDataWidth_8b;
 FSMC_NANDSRAMInitStructure.FSMC_ECC = FSMC_ECC_Enable;
 FSMC_NANDSRAMInitStructure.FSMC_ECCPageSize =
 FSMC_ECCPageSize_512Bytes;
 FSMC_NANDSRAMInitStructure.FSMC_AddressLowMapping =
 FSMC_AddressLowMapping_Direct;
 FSMC_NANDSRAMInitStructure.FSMC_TCLRSetupTime = 0x1;
 FSMC_NANDSRAMInitStructure.FSMC_TARSetupTime = 0x1;
 FSMC_NANDSRAMInitStructure.FSMC_CommonSpaceTimingStructure =
 &FSMC_CommonSpaceTimingStructure;
 FSMC_NANDSRAMInitStructure.FSMC_AttributeSpaceTimingStructure =
 &FSMC_AttributeSpaceTimingStructure;
 FSMC_NANDInit(&FSMC_NANDSRAMInitStructure);
**参照 [#c26c293b]
-


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS