AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
AG903_SSPMgrSpiDisableTransfer 関数

SPIフォーマットでの送受信停止 (SPIモード用)

Syntax
C++
int32_t AG903_SSPMgrSpiDisableTransfer(AG903_SSPMgrHandle* handle);
引数 
説明 
AG903_SSPMgrHandle* handle 
[in] SSPハンドル 

伝送停止結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
引数異常 
-AG903_EPERM 
許可されていない状態でのアクセス 

SPIフォーマットでの送受信を停止します。 

このときSPIモードの設定時にSPIフラッシュ特化モードが指定されていた場合は SSP_FS信号をネゲートします。 

 

1: int32_t AG903_SSPMgrSpiDisableTransfer(AG903_SSPMgrHandle* handle) 2: { 3: int32_t retval = AG903_ENONE; 4: AG903_SSPPrmIntCtrl* ictrl; 5: AG903_SSPPrmCtrl2* ctrl2; 6: uint8_t ch; 7: 8: retval = SSPMgr_CheckHandle(handle, &ch); 9: if(AG903_ENONE != retval) { 10: return -AG903_EINVAL; 11: } 12: 13: if (AG903_SSP_FORMAT_SPI != SspChStat[ch].format) { 14: return -AG903_EPERM; 15: } 16: 17: ictrl = &SspRegStat[ch].ictrl; 18: ictrl->tfthod = 2; 19: ictrl->rfthod = 2; 20: ictrl->tfdmaen = 0; 21: ictrl->rfdmaen = 0; 22: ictrl->tfthien = 0; 23: ictrl->rfthien = 0; 24: ictrl->tfurien = 0; 25: ictrl->rforien = 0; 26: AG903_SSPPrmSetIntControl(ch, ictrl); 27: 28: ctrl2 = &SspRegStat[ch].ctrl2; 29: ctrl2->fsos = 0; 30: ctrl2->fs = 0; 31: ctrl2->txen = 0; 32: ctrl2->rxen = 0; 33: ctrl2->ssprst = 0; 34: ctrl2->txfclr = 1; 35: ctrl2->rxfclr = 1; 36: ctrl2->txdoe = 0; 37: ctrl2->sspen = 0; 38: AG903_SSPPrmSetControl2(ch, ctrl2); 39: ctrl2->txfclr = 0; 40: ctrl2->rxfclr = 0; 41: 42: return retval; 43: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.