Closed okada-tetsuya closed 11 years ago
この週末に追加させていただきます。 しばしお待ちください。
大変遅くなり申し訳ございません。
サンプルにすべての機能をチェックするプロジェクトを追加しました。 この中の CommViewController.m にI2Cの送受信のサンプルが入っています。
I2Cでreadするために、まずイベントハンドラを以下のように登録します。
- (void)viewDidLoad
{
[super viewDidLoad];
// I2C系のイベントハンドラ
[self.i2cSetting addTarget:self action:@selector(onChageI2cSetting:) forControlEvents:UIControlEventValueChanged];
[Konashi addObserver:self selector:@selector(onI2cRecv) name:KONASHI_EVENT_I2C_READ_COMPLETE];
}
そして、readする場合は i2cRecv の内容を実行します。以下の例では、アドレス0x1Fから18バイトのデータを取得しています。
- (IBAction)i2cRecv:(id)sender {
[Konashi i2cStartCondition];
[NSThread sleepForTimeInterval:0.01];
[Konashi i2cReadRequest:18 address:0x1F];
}
- (void)onI2cRecv
{
unsigned char data[18];
[Konashi i2cRead:18 data:data];
[NSThread sleepForTimeInterval:0.01];
[Konashi i2cStopCondition];
int i;
for(i=0; i<18; i++){
NSLog(@"I2C Recv data: %d", data[i]);
self.i2cRecvText.text =
[self.i2cRecvText.text stringByAppendingString:[NSString stringWithFormat:@"%d ", data[i]]];
}
}
現状のI2Cサンプルはwriteのみを使用しているようですが、readを使うサンプルも あれば助かります。 i2cRestartCondition、i2cReadRequestあたりのタイミング的な配慮など。