使用Python和SpiD输出到NMEA设备

2024-06-16 13:56:24 发布

您现在位置:Python中文网/ 问答频道 /正文

使用spi.xfer2()函数,我想从我的raspberry pi将一个句子以NMEA格式发送到一个设备上,它有一些传感器连接到它以用于划船。 下面是我想传达的句子的一般形式:

'$--VHW,,T,,M,5.0,N,10.0,K*hh'

有没有办法把这个字符串转换成这个函数所需的格式?我是否应该使用另一个函数将这些数据输出到我们的设备?在


Tags: 数据函数字符串spi格式hhpi传感器
1条回答
网友
1楼 · 发布于 2024-06-16 13:56:24

您需要查找传感器的接口描述。他们将有一个非常特殊的规范来说明如何通过SPI线路来处理它们。 频率,定时,极性,等等,然后主要是SPI寄存器格式。没有普遍的解决办法。在

如果你想传输一个字节的附加信息,你可以用一个字节来传输。在

以下是我如何将数据传输到DA转换器(它是读取,而不是写入,但这并不重要):

  self.spi.cshigh=False
  self.spi.max_speed_hz=500000
  self.spi.mode=0
  self.spi.bits_per_word=8

  self.spi.open(0,0)

  for i in range(len(values)):
    xferWord = [0x01,0x80,0x00]#single ended, channel 0
    self.spi.xfer(xferWord)
    values[i]  = (0x03 & xferWord[1])<<8
    values[i] |= (0xff & xferWord[2])
    time.sleep(0.01)
  self.spi.close()

相关问题 更多 >