roboforum.ru

Технический форум по робототехнике.

Обсуждение реализации шлюз-контроллера [ORFA]

Правила форума
Правила раздела OpenRobotics

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 06 июл 2009, 21:27

А чего под документацией понимается? Документирование программного кода или какие как регистры юзать?

Re: Обсуждение реализации шлюз-контроллера [ORFA]

Vooon » 06 июл 2009, 22:12

Описание API для написания своих модулей,
описание системы сборки, описание модели регистров.
Не забыть описать что происходит при последовательном чтении.
Дать рекомендации по оформлению исходного кода.
Кратко сказать как мы принимаем патчи (hg export).

Пользовательская документация: как работать с шлюзом, с драйверами.
Привести примеры команд. Подробно рассказать как пользоваться интроспектором, не забыть инкрементное чтение,
т.к. этот способ намного быстрее.

Добавлено спустя 2 минуты 47 секунд:
При чем имхо это все должно быть в одном пдфе,
сначала для пользователя, потом для программиста.

А т.к. делать пдф то и рекомендую верстать в латехе.
С ним и меркуриал удобно использовать.

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 06 июл 2009, 22:16

Чего-то я потерялся среди разных латехов, у меня какой-то LyX поставлен - судя по всему это не оно. Blindman какой-то вариант пользовал, но нужен кроссплатформенный и достаточно функциональный, я даже не знаю как оно друг от друга отличается не то что как выбрать нужный :)

Re: Обсуждение реализации шлюз-контроллера [ORFA]

Vooon » 06 июл 2009, 22:52

LaTeX: \LaTeX штука кроссплатформенная, но есть несколько дистрибутивов.
Для винды самый распространенный MiKTeX.

А вообще достаточно почитать [[w:ru:LaTeX]] чтоб этот вопрос больше не возникал.

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 07 июл 2009, 21:24

Какая-то заморочка с makefile похоже.

При смене "BAUD=B115200" в local_config.mk и перекомпиляции ничего не происходит - выдаёт .hex тот же самый

А вот при вызове Rebuild All меняется. Это глюк или фича?

Добавлено спустя 1 час 20 минут 16 секунд:
Сделал описалово к драйверу двигателей: [[ORFA Motors driver]]

Сделайте кто-нить плиз описалово к драйверу SPI?
Я в нём вообще ни в зуб ногой, АЦП еще как-нибудь наверное разгребу, а тут совсем ноль.

Re: Обсуждение реализации шлюз-контроллера [ORFA]

Vooon » 08 июл 2009, 10:53

Просто при смене BAUD нужно удалять все обьектники,
что делает make clean.

Из меню Rebuild All он делает последовательно make clean && make all

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 08 июл 2009, 11:02

Ну это же не очевидно :roll:
Может пофиксить?

Добавлено спустя 3 минуты 18 секунд:
Я просто не представляю где это задокументировать, чтобы не забыли

Или может тогда этот конфиг включить в репо и там коммент написать?

Re: Обсуждение реализации шлюз-контроллера [ORFA]

Vooon » 08 июл 2009, 11:12

Нет включать в репо нельзя.
Нужно написать, что любые изменения в файле local_config.mk требуют полной перекомпиляции.

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 08 июл 2009, 11:21

Ок, пойду в вике подпишу.

Добавлено спустя 5 минут 17 секунд:
Вот, дописал:
wiki/ORFA#.D0.A1.D0.B1.D0.BE.D1.80.D0.BA.D0.B0_ORFA_.D0.BF.D0.BE.D0.B4_AVR_Studio_.2B_WinAVR

Re: Обсуждение реализации шлюз-контроллера [ORFA]

blindman » 08 июл 2009, 15:27

http://hg.vehq.ru/orfa/rev/b3717edd8725

Теперь все пересобирается если local_config.mk изменён

Добавлено спустя 2 минуты 9 секунд:
local_config.mk должен присутствовать, хотя бы пустой

Добавлено спустя 7 минут 42 секунды:
Теперь не должен, будет создан если не найден
http://hg.vehq.ru/orfa/rev/dfafc1be6335

Re: Обсуждение реализации шлюз-контроллера [ORFA]

Vooon » 08 июл 2009, 19:24

Похоже ты что-то поломал.

Код: Выделить всёРазвернуть
vovan@vovan-laptop:~/src/orfa$ make clean 
rm -rf ./drivers/adc/adc_driver.o ./drivers/spi/spi_driver.o ./drivers/motor/motor_driver.o ./drivers/ports/ports_driver.o ./drivers/servo_gpio/servo_driver.o ./main.o                                                                                                                                                           
rm -f doxygen.log tags                                                                                                                                           
vovan@vovan-laptop:~/src/orfa$ make     
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o main.o main.c                 
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o drivers/motor/motor_driver.o drivers/motor/motor_driver.c
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o drivers/spi/spi_driver.o drivers/spi/spi_driver.c
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o drivers/ports/ports_driver.o drivers/ports/ports_driver.c
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o drivers/servo_gpio/servo_driver.o drivers/servo_gpio/servo_driver.c
avr-gcc -DOR_AVR_M32_D -DHAVE_MOTOR -DHAVE_SPI -DHAVE_PORTS -DHAVE_SERVO -DHAVE_ADC -DBAUD=B115200 -DNDEBUG  -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -c -o drivers/adc/adc_driver.o drivers/adc/adc_driver.c
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
touch local_config.mk
avr-gcc -std=gnu99 -I.  -Idrivers/motor -Idrivers/spi -Idrivers/ports -Idrivers/servo_gpio -Idrivers/adc -Wall -Os -Wstrict-prototypes  -Werror -mmcu=atmega32 -DF_CPU=7372800UL -DAVR_IO -g -funsigned-char -funsigned-bitfields -ffunction-sections -fdata-sections -fmerge-all-constants -fstrict-aliasing -fpack-struct -fshort-enums -ffreestanding -o orfa.elf main.o drivers/motor/motor_driver.o drivers/spi/spi_driver.o drivers/ports/ports_driver.o drivers/servo_gpio/servo_driver.o drivers/adc/adc_driver.o  core/libcore.a serialgate/libserialgate.a
avr-gcc: core/libcore.a: Нет такого файла или каталога
avr-gcc: serialgate/libserialgate.a: Нет такого файла или каталога
make: *** [orfa.elf] Ошибка 1
zsh: exit 2     make
vovan@vovan-laptop:~/src/orfa$ hg pull -u
pulling from http://hg.vehq.ru/orfa
searching for changes
no changes found
vovan@vovan-laptop:~/src/orfa$

Re: Обсуждение реализации шлюз-контроллера [ORFA]

blindman » 08 июл 2009, 19:32

Починил

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 11 июл 2009, 12:32

/*
* ADC configuration register
*
* Bits 0..2
* 00 - External reference
* 01 - AVCC reference
* 10, 11 - Internal reference
*
* Bit 3
* 0 - 8-bit
* 1 - 11-bit
*/

Подозреваю, что тут Bits 0..1 и Bit 2 ?

Добавлено спустя 5 минут 31 секунду:
Правильно ли я понял, что с АЦП работаем так:
1. конфигурацию пишем в 0-й регистр, данные читаем из 1-го регистра (по 2 байта на каждый канал, старший+младший, если 11 бит, иначе по 1 байту, если 8 бит);
2. конфигурация состоит из 2 байт - настройки АЦП + маска - какие каналы АЦП включаем;

?

Добавлено спустя 17 секунд:
Инструкцию пишу в вику: [[ORFA ADC driver]]

Добавлено спустя 6 минут 7 секунд:
Кстати, а сколько времени цикл опроса всех линий АЦП идёт? Надо в инструкции указать - через сколько уже можно читать чего там наконфигурировали.

Re: Обсуждение реализации шлюз-контроллера [ORFA]

chernogorsky » 18 июл 2009, 13:31

Очень не хватает инструкции для чайника (извините пользователя)
Не хватает самого простого. Что делать после того как залил прошивку. КАК можно протестировать. каким По пользоваться.

П.С. сижу второй день пытаясь понять куда вводить V, чтобы получить V1.0 ^-)

Re: Обсуждение реализации шлюз-контроллера [ORFA]

=DeaD= » 18 июл 2009, 13:41

Так вроде любой терминал берете и соединяетесь с нужным портом на нужной скорости...

Или вопрос с выбором терминала? Наверное какой-нибудь выложим с примерами подключения тогда.


Rambler\'s Top100 Mail.ru counter