SPIによりデータを1ms間隔で取得する必要があるので
下記のコードでRaspberryPiの評価を行いました。
ところが、10秒間で2890回と想定を下回る結果でした。
(5回実行させた行った平均です。)
ちなみにpy_compileでコンパイルしても結果は変わりませんでした。
SPIによりデータを1ms間隔で取得するには
RaspberryPiでは実現することは難しいのでしょうか?
コードに遅くしている原因があるのか
できればpythonで実現させたいのですが、Cで記述すれば実現できるのか?
教えていただけないでしょうか?
よろしくお願い致します。
python code
python
1 2import time 3import sys 4import spidev 5 6CE = 0 7spi = spidev.SpiDev() 8spi.open(0, CE) 9spi.mode = 0b01 10spi.max_speed_hz = 1000000 11 12def getdata(channel): 13 result = spi.xfer([0]) 14 data = result[0] 15 return data 16 17if __name__ == '__main__': 18 try: 19 cnt=0 20 start = time.time() 21 while (time.time()-start)<10: 22 a = getdata(0) 23 cnt += 1 24 25 print(cnt) 26 27 except KeyboardInterrupt: 28 spi.close() 29 sys.exit(0) 30
回答2件
あなたの回答
tips
プレビュー