LinuxでMM-CP-2112A又はCP2112 クラシック USB ブリッジを動作させる事が出来るプログラムです
# pepocp2112ctl
** Welcome to pepocp2112ctl Version-0.1 Copyright Yamauchi.Isamu compiled:Jan 7 2018 **
usage:pepocp2112ctl port:0-9 0|1 [timer:0-300000ms]
出力ポート 0-3
入力ポート 4-7
に固定されています
ポートNo 0番目の読み取り
# pepocp2112ctl 0
0
ポートNo 0番目を 1 へ設定
# pepocp2112ctl 0 1
1
ポートNo 0番目を5秒間 1 へ設定
# pepocp2112ctl 0 1 5000
0
I2C接続のAM2320の温度・湿度表示
# pepocp2112ctl 5
23.0 55.4
動作例動画
https://twitter.com/kujiranodanna/status/965173068044828672
download
https://osdn.net/projects/pepolinux/downloads/69544/pepocp2112ctl.tar.gz/
製品情報
詳細情報
https://jp.silabs.com/products/interface/usb-bridges/classic-usb-bridges/device.cp2112
MM-CP-2112A でポート0を20μsecだけ1にすることはできそうですか?
ソースコードのmsleep()関数をミリsecからマイクロsecに書き換えたら出来そうだが、MM-CP-2112Aのチップが処理出来るかどうか分かりません、オシロスコープで確認してみたらどうでしょうか
/*
* msleep function
*/
int msleep(int ms){
struct timeval timeout;
timeout.tv_sec = ms / 1000000;
timeout.tv_usec = (ms % 1000000) * 1;