Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 27, 2022 18:45:52

orochi228
Зарегистрирован: 2022-12-25
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

AD0DE412
serial.Serial('COM4', 9600, timeout=0) начниете с этого ноль конечно … хуцпа … но чему нет шо такого
?

Офлайн

#2 Дек. 27, 2022 18:57:56

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

ну вы просто уменшаете время опроса може поможет (я в этом не в зуб нагой ежеле шо так то. так поиском шото захотелоь попользоваться)



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Дек. 27, 2022 19:02:06)

Офлайн

#3 Дек. 27, 2022 19:25:17

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1372
Репутация: +  122  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

orochi228
Джойстик из набора с ардуинкой
у меня такой же есть и мк ESP32, пишу на micropython, позже выложу что получилось, но быстродействие так-себе

Отредактировано xam1816 (Дек. 27, 2022 22:11:57)

Офлайн

#4 Дек. 27, 2022 19:54:16

orochi228
Зарегистрирован: 2022-12-25
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

А получится потом на другой мк залить что бы работало?(Nano, Uno, Mega)

Офлайн

#5 Дек. 27, 2022 23:21:18

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1372
Репутация: +  122  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

orochi228
А получится потом на другой мк залить что бы работало?(Nano, Uno, Mega)
да micropython устанавливается на них.Конечно судя по вашим вопросам, вам понадобиться очень много терпения и времени, чтобы осознанно писать программы, а не копировать из интернета, а потом на форумах распрашивать, почему в вашем случае не работает.

Если особо не разжевывать, так я подключаюсь к порту:
  
import serial
s=serial.Serial('/dev/ttyUSB1',115200)
time.sleep(2)
print(s)

очищаю входящий буфер перед циклом

 

s.reset_input_buffer()
запускаю цикл чтения порта
 while 1:
	try:# чтобы не падало при исключениях
		data = s.read(4) #читаю 4 байта, т.к с мк отправляются  пакеты по 4 байта
		if data:# если пришли данные
			unpack_data = struct.unpack('>2H', data) # распаковываю данные (import struct)
			process(unpack_data) #отправляю в функцию, которая с ними будет работать
		s.reset_input_buffer() # очищаю буфер для свежих данных, если не очистить может работать с запозданием
	except Exception as e:
		print(e) # сообщение об ошибке

на мк
  
from machine import Pin, UART, ADC 
import time
import struct
uart = UART(1, 115200) # создаю uart, по умолчанию 1 - это 10, 9 вывод, скорость
x_pin = ADC(Pin(34), atten=ADC.ATTN_11DB) # аналоговый вход с джойстика
y_pin = ADC(Pin(35), atten=ADC.ATTN_11DB)# -//-
VALUE = 100 # это для фильтра ацп
def run():
    print('go')
    while 1:
#далее код фильтра, т.к. значения ацп скачут (соединено просто проводами через макетную плату)
# начало фильтра
        sum_x = 0
        sum_y = 0
        for _ in range(VALUE): # считываю 100 значений
            coord_x = x_pin.read() # так считываю "x" с ацп, значения от 0 - 4095,
            coord_y = y_pin.read()# соответственно для "y"
            sum_x += coord_x # суммирую
            sum_y += coord_y
        filter_x = int(sum_x/VALUE) # получаю среднее значение для x
        filter_y = int(sum_y/VALUE) # для y
#конец фильтра
        mess = struct.pack('>2H', filter_x, filter_y) # упаковываю значения
        uart.write(mess) # отправляю

на пк с этими данными игрался как попало, использовал
  
import pyautogui as pg
pg.moveRel(x, y) # смещение курсора относительно текущей позиции

перед этим всяко разно пробовал преобразовывал входящие данные x, y с порта для отправки в метод.
по итогу курсор двигается, но коряво - не так плавно как мышью. Т.е. тут нужно глубже изучать все эти фильтры, преобразования, ну и скорость так себе, хотя если отладить все нюансы, вполне может что-то годное получиться.

Офлайн

#6 Дек. 28, 2022 12:33:16

orochi228
Зарегистрирован: 2022-12-25
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

ValueError: invalid literal for int() with base 10: "b'0"

Так как мне все это соединить в одно целое?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version