roboforum.ruТехнический форум по робототехнике. |
|
|
vovan@vovan-laptop:~/src/pyor$ orintro.py /dev/rfcomm0
PyOR version: 0.1.3
Serial Gate protocol version: 1.0
Selected device: 0x10
Drivers:
#1 <pyor.introspection.MotorInfo object at 0x7fb4b47f9dd0>
RoboMD2 motor driver.
PWMn — channel n speed register (0x00-0xFF), r/w
DIRn — channel n direction register (0/1), r/w
UID: 0x0060
Version: 1.0
Registers: 0x60, 0x61, 0x62, 0x63
DIR1: 0x62
DIR2: 0x63
PWM1: 0x60
PWM2: 0x61
#2 <pyor.introspection.SPIInfo object at 0x7fb4b47f9e10>
RoboBus SPI driver.
UID: 0x0001
Version: 1.0
Registers: 0x51, 0x52
#3 <pyor.introspection.PortInfo object at 0x7fb4b47f9e50>
RoboGPIO digital driver.
PORTc — i/o port register, r/w
DDRc — direction register, wo
UID: 0x0020
Version: 1.0
Registers: 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B
DDRA: 0x48
DDRB: 0x49
DDRC: 0x4A
DDRD: 0x4B
PORTA: 0x44
PORTB: 0x45
PORTC: 0x46
PORTD: 0x47
#4 <pyor.introspection.IntrospectionInfo object at 0x7fb4b47f9e90>
ORFA Introspection driver.
UID: 0x0000
Version: 1.0
Registers: 0x00
vovan@vovan-laptop:~/src/pyor$
Vooon писал(а):Кстати пришла вот какая идея:
Пусть драйверу все его регистры передаются от 0 до n-1
А реальный адрес при этом может быть любым.
Vooon писал(а):Минусы: реальный адрес неизвестен драйверу.
Vooon писал(а):Для типовых готовых прошивок предлагаю прилагать листинг результатов интроспектора.
Vooon писал(а):Кстати пришла вот какая идея:
Пусть драйверу все его регистры передаются от 0 до n-1
А реальный адрес при этом может быть любым.
Вычисление простое: (reg - driver.reg_start)
Плюсы этого решения: драйвер может не знать свой стартовый адрес,
можно сделать проверки статическими.
Минусы: реальный адрес неизвестен драйверу.
blindman писал(а):Vooon писал(а):Минусы: реальный адрес неизвестен драйверу.
Драйверу это и не должен знать. Внутри драйвера нумерация с нуля. Реальный адрес во внутренний транслирует ядро
blindman писал(а):Vooon писал(а):Для типовых готовых прошивок предлагаю прилагать листинг результатов интроспектора.
+1
vovan@vovan-laptop:~/src/orfa$ orintro.py /dev/rfcomm0
PyOR version: 0.1.3
Serial Gate protocol version: 1.0
Selected device: 0x10
Drivers:
#1 <pyor.introspection.MotorInfo object at 0x7f8dc68dbd90>
RoboMD2 motor driver.
PWMn — channel n speed register (0x00-0xFF), r/w
DIRn — channel n direction register (0/1), r/w
UID: 0x0060
Version: 1.0
Registers: 0x0C, 0x0D, 0x0E, 0x0F
DIR1: 0x0E
DIR2: 0x0F
PWM1: 0x0C
PWM2: 0x0D
#2 <pyor.introspection.SPIInfo object at 0x7f8dc68dbdd0>
RoboBus SPI driver.
UID: 0x0001
Version: 1.0
Registers: 0x0A, 0x0B
#3 <pyor.introspection.PortInfo object at 0x7f8dc68dbe10>
RoboGPIO digital driver.
PORTc — i/o port register, r/w
DDRc — direction register, wo
UID: 0x0020
Version: 1.0
Registers: 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09
DDRA: 0x06
DDRB: 0x07
DDRC: 0x08
DDRD: 0x09
PORTA: 0x02
PORTB: 0x03
PORTC: 0x04
PORTD: 0x05
#4 <pyor.introspection.IntrospectionInfo object at 0x7f8dc68dbe50>
ORFA Introspection driver.
UID: 0x0000
Version: 1.0
Registers: 0x00
vovan@vovan-laptop:~/src/orfa$
Vooon писал(а):ПС: у меня сели аккумуляторы, на зарядку нужно 24 ч.
(12 ч. на 4 батарейки, а всего их 8 )
Vooon писал(а):Кстати есть задача:
нужно написать драйвер АЦП.
Думаю прерывания там не нужны:
достаточно схемы запрос->преобразование->ответ
желательно иметь возможность настраивать разрядность.
Vooon писал(а):Также желательно добавить битовый доступ к GPIO.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2