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

IICnSARのレジスタWrite

Syntax
C++
void AG903_I2CPrmSetSlaveAddr(uint8_t ch, uint16_t saddr);
引数 
説明 
uint8_t ch 
[in] I2Cチャネル 
uint16_t saddr 
[in] スレーブアドレス 

void

IICnSARのレジスタWrite

レジスタをリードモディファイライトします。

1: void AG903_I2CPrmSetSlaveAddr(uint8_t ch, uint16_t saddr) 2: { 3: ASSERT(AG903_I2C_CH_NUM > ch); 4: 5: if(0x0380 & saddr) { 6: AG903_I2C_SET_REG(ch,SAR,(1<<AG903_IICn_SAR_EN10_POS)); 7: AG903_I2C_CLR_REG(ch,SAR,AG903_IICn_SAR_SAR_MSK); 8: AG903_I2C_SET_REG(ch,SAR,(saddr<<AG903_IICn_SAR_SAR_POS)); 9: } 10: else { 11: AG903_I2C_CLR_REG(ch,SAR,AG903_IICn_SAR_EN10_MSK); 12: AG903_I2C_CLR_REG(ch,SAR,AG903_IICn_SAR_SAR_MSK); 13: AG903_I2C_SET_REG(ch,SAR,(saddr<<AG903_IICn_SAR_SAR_POS)); 14: } 15: return; 16: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.