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

UARTManager初期化

Syntax
C++
int32_t AG903_UARTMgrInit(uint8_t ch);
引数 
説明 
uint8_t ch 
[in] UARTチャネル番号(0~3) 

初期化結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
引数異常 
-AG903_EFAULT 
処理失敗 (割込みハンドラ登録失敗). 

内部状態の初期化と通信パラメータの設定をします。システム起動時にCALLして下さい。 

通信パラメータは以下に従って設定されます。 

AG903_UART_DFLT_BAUD , AG903_UART_DFLT_PARITY , AG903_UART_DFLT_STOPBIT , AG903_UART_DFLT_DATBIT , AG903_UART_DFLT_FLOW 

1: int32_t AG903_UARTMgrInit(uint8_t ch) 2: { 3: AG903_INTMgrHdrPrm inthdr; 4: AG903_UARTMgrParam param; 5: int32_t retval = AG903_ENONE; 6: int32_t hdrid; 7: 8: if(AG903_UART_CH_NUM <= ch) { 9: return -AG903_EINVAL; 10: } 11: 12: UARTMgr_InitState(ch); 13: 14: if(0 >= UartChStat[ch].hdrid) { 15: inthdr.atr = AG903_INT_HLNG; 16: inthdr.intno = AG903_IRQ8_UART0+ch; 17: inthdr.func = (void*)UartIntHdr[ch]; 18: hdrid = AG903_INTMgrSetHandler(&inthdr); 19: if(0 >= hdrid) { 20: return -AG903_EFAULT; 21: } 22: UartChStat[ch].hdrid = hdrid; 23: } 24: 25: AG903_INTMgrEnableInt(AG903_IRQ8_UART0+ch); 26: 27: param.baud = AG903_UART_DFLT_BAUD; 28: param.parity = AG903_UART_DFLT_PARITY; 29: param.stopbit = AG903_UART_DFLT_STOPBIT; 30: param.databit = AG903_UART_DFLT_DATBIT; 31: param.flow = AG903_UART_DFLT_FLOW; 32: retval = UARTMgr_SetParam(ch, &param); 33: 34: return retval; 35: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.