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

割り込み設定

Syntax
C++
int32_t AG903_DSPMgrSetIntParam(AG903_DSPMgrHandle * handle, AG903_DSPMgrIntParam * param);
引数 
説明 
AG903_DSPMgrHandle * handle 
[in] DSPハンドル 
AG903_DSPMgrIntParam * param 
[in] 割込みパラメータ 

エラーコード

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
パラメータ異常 
-AG903_EBUSY 
表示回路動作中 

表示割り込みの設定を変更します.

ウィンドウアトリビュートリストは8Byte境界に配置する必要があります.

1: int32_t AG903_DSPMgrSetIntParam(AG903_DSPMgrHandle *handle, AG903_DSPMgrIntParam *param) 2: { 3: int32_t rc = AG903_ENONE; 4: uint8_t ch; 5: 6: if ((handle == NULL) || (param == NULL)) 7: return -AG903_EINVAL; 8: 9: rc = DSPMgrCheckHandle(handle, &ch); 10: 11: if (rc == AG903_ENONE) { 12: rc = AG903_DSPMgrCheckStopped(handle); 13: } 14: 15: if (rc == AG903_ENONE) { 16: DSPPrmParamMOD mod; 17: AG903_DSPPrmGetMOD(ch, &mod); 18: mod.bmr = param->bmureq_timing; 19: AG903_DSPPrmSetMOD(ch, &mod); 20: 21: DSPPrmParamINT intprm = { 22: .line = param->int_line_no, 23: .fcnt = param->int_framecount, 24: .hline = param->int_hrz_line, 25: .vblk = param->int_vt_blank, 26: }; 27: AG903_DSPPrmSetINT(ch, &intprm); 28: 29: DSPPrmParamINTMASK intmask = { 30: .vblk = param->mask_vt_blank, 31: .hline = param->mask_hrz_line, 32: .doff = param->mask_dspoff, 33: .err = param->mask_error, 34: }; 35: AG903_DSPPrmSetINTMASK(ch, &intmask); 36: 37: AG903_DSPPrmSetTRIGGER(ch, 38: param->trigger_out, 39: param->trigger_hrz, 40: param->trigger_vt); 41: } 42: 43: return rc; 44: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.