У меня проблемы с заменой устройства в / вывод команд, таких как:

echo 100 > /dev/rtmotor_raw_l0   # output 100hz frequency
cat /dev/rtswitch0 # read switch state

выходная задача (питон)

Я попытался заменить эту команду на Python.

file = open('/dev/rtmotor_raw_l0','w')
file.write('100\n')            # I want output in this timing
file.close()                   # output reflected after closing file

Проблема в том, что вывод появляется после закрытия файла. Означает ли это, что мне нужно открывать и закрывать это устройство каждый раз, когда я хочу изменить его значение? Кроме того, изменение 'w' на 'a' не сработало.

входная задача (питон)

Почти такая же проблема возникает при входном наблюдении.

file = open('/dev/rtswitch','r')
file.read()  # works
file.read()  # after first read it does't work anymore
file.close() # need to reopen the file to get newer value

Я мог только прочитать 1 вход в каждом открытии файлов.

Итак, в настоящее время мне приходится заново открывать устройства каждый раз, когда я хочу записать / прочитать новые значения. Есть ли способ избежать этой проблемы?

Спасибо.

0