roboforum.ru

Технический форум по робототехнике.
Текущее время: 23 ноя 2024, 10:58

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 119 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 09:38 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
энкодеры двойные


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 15:58 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
уменьшил размер стека, выкинул некоторые команды.
установил более жесткие ограничения на длины токенов(слов интерпретатора) и их количество.
итог: свободно 65% флеша, 404 байта озу.
добавил отладочные строки, очень хотелось бы посмотреть что выводит реальное устройство
=DeaD= писал(а):
Не понял

мб вы предложили бы суперсложный алгоритм :D вот я и спросил


Вложения:
Комментарий к файлу: файл и прошивка interpreter test
tester.rar [87.14 КиБ]
Скачиваний: 29
Комментарий к файлу: к чему стремимся
1.JPG
1.JPG [ 76.75 КиБ | Просмотров: 2042 ]

_________________
Tomorrow will be. Better
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:09 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
ну так давай новый код, старый ругается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:12 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
Interpreter test.bas
INTERPRETER TEST.HEX
в архиве tester.rar

_________________
Tomorrow will be. Better


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:13 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
и чё не выкладываешь этот волшебный архив?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:15 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
:crazy: а в верхнем сообщении его нет?
странно.


Вложения:
Комментарий к файлу: репост
tester.rar [87.14 КиБ]
Скачиваний: 21

_________________
Tomorrow will be. Better
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:33 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
вот что написало на FS 1

Цитата:
fs 1
GOTCHA! You have entered string:AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0>m0>AVR-DO
S: Ready f0>m0>AVR-DOS: Ready f0
Begin to extract tokens
lpos2, token1:9
token1(pos,len):1,8
lpos2, token2:0
token2(pos,len):10,71
Tokens are extracted
Begin to extract next token as string
Res string:AVR-DOS:
First command token is:AVR-DOS:
Command 'AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0>m0>AVR-DOS:
Ready f0' not recognized

0000>
GOTCHA! You have entered string:
Begin to extract tokens
Tokens are extracted

0000>GOTCHA! You have e00>GOTCHA! You have e00>GOTCHA! You have e00>GOTCHA! You
have


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:44 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
у терминала бод рейт какой? в исходнике 19200, попробуйте перекомпилировать с меньшей скоростью уарт

Добавлено спустя 1 минуту 3 секунды:
да нажатия ентера, он повторяет пользовательский ввод?(бэкспейс работать должен)

_________________
Tomorrow will be. Better


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 16:50 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
себе везде поставил 115200
это теперь стандарт в миниботах

Добавлено спустя 5 минут 40 секунд:
на 19200 тоже самое


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 17:33 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
таакс. теперь при вводе fs 1 он будет возвращать код каждого принятого символа, в том числе ентера.(при этом первоначальный ввод не сохраняется. буквы команды будут висеть перед "getsymbol")
увеличил размер буфера приема уарта, снизил скорость до 2400, добавил задержку 250мс после вывода приглашения.
увеличил стек до неприличия. проверьте частоту мк.
на этом мои рецепты пока закончились

Добавлено спустя 1 минуту 21 секунду:
P.S. выкладывайте плиз скриншот терминала, не видно, выводится ли надпись приветствия :)

Добавлено спустя 1 минуту 48 секунд:
вообще, такое ощущение что он считает юзерским вводом отправленные мною же символы. оч странно для дуплекса


Вложения:
Комментарий к файлу: вот что должно получится.
1.JPG
1.JPG [ 66.57 КиБ | Просмотров: 2021 ]
Комментарий к файлу: новый код
tester2.rar [88.3 КиБ]
Скачиваний: 25

_________________
Tomorrow will be. Better
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 17:37 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
по циклу лупит кучу всего


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 18:08 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
вернул стек к 128,128,128.
убрал строчку с фусибитами, вообщем просто привел конфиги к вашей ver2, разве что буфер по усарту побольше и скорость поменьше. убрал лишние дебаг строки. добавил нехилое ожидание между двумя символами. чуток изменил процедуру ввода команды.

здесь он принимает символ:
Код:
Do
  Gbinp = Waitkey()                                         ' get user input
  If Gbinp <> 0 Then                                        ' something typed in?
      If Gbinp = 27 Then                                    ' use ESC for exit from interpreter
         Exit Do
      End If
      Waitms 500
      Print "get symbol:" ; Gbinp
      Waitms 500
      Getinput Gbinp                                        ' give input to interpreter
  End If
Loop       

здесь он обрабатывает символы и составляет из них большую строку Gspcinput:
Код:
Sub Getinput(pbbyte As Byte)
   ' stores bytes from user and wait for CR (&H13)
   Select Case Pbbyte
      Case &H0A                                             ' do nothing
      Case &H0D                                             ' Line-end?
         Print Chr(&H0d) ; Chr(&H0a) ;
               Print "GOTCHA! You have entered string:" ; Gspcinput
         Docommand                                          ' analyse command and execute
         Gbpcinputpointer = 1                               ' reset for new user-input
         Gspcinput = ""
         Printprompt
      Case &H08                                             ' backspace ?
         If Gbpcinputpointer > 1 Then
            Print Chr(&H08);
            Decr Gbpcinputpointer
         End If
      Case Else                                             ' store user-input
         If Gbpcinputpointer <= Cpcinput_len Then
            Mid(gspcinput , Gbpcinputpointer , 1) = Pbbyte
            Incr Gbpcinputpointer
            Mid(gspcinput , Gbpcinputpointer , 1) = &H00    ' string-terminator
            Print Chr(pbbyte);                              ' echo back to user
         End If
   End Select
End Sub


где-то в этих процедурах происходит ошибка. об этом можно судить по тому что у вас в терминале
EdGull писал(а):
GOTCHA! You have entered string:AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0>m0>AVR-DOS: Ready f0

это строка пользовательского ввода :shock: , что очень странно, поскольку эхо работает(или нет? среда должна получится такая же как и в виндоус командной строке (пуск, выполнить, cmd))
если этот тест не пройдет, то просто перепишу пользовательский ввод(например, команда Input должна работать как раз так же, как и эти две процедуры, только бэкспейс и ескейп поддерживаться не будут)


Вложения:
Комментарий к файлу: что должно выводить
1.JPG
1.JPG [ 45.87 КиБ | Просмотров: 2019 ]
Комментарий к файлу: последняя
tester4.rar [83.41 КиБ]
Скачиваний: 23

_________________
Tomorrow will be. Better
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 18:17 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
снова по циклу лупит
вот кусок
Цитата:
get symbol:99
cget symbol:111
oget symbol:109
mget symbol:109
mget symbol:97
aget symbol:110
nget symbol:100
dget symbol:115
sget symbol:13

GOTCHA! You have entered string:AVR-DOS: Ready for commands
Command 'AVR-DOS: Ready for commands' not recognized

0000>get symbol:10
get symbol:13

GOTCHA! You have entered string:

0000>get symbol:10
get symbol:48
0get symbol:48
0get symbol:48
0get symbol:48


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 18:49 
Не в сети
Аватара пользователя

Зарегистрирован: 29 окт 2007, 18:11
Сообщения: 1866
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript
ну вот видите. опять та же ситуация: то что я печатаю на выход чудесным образом превращается во вход :crazy: так, вначале вывожу первую строку
Цитата:
AVR-DOS: Ready for commands
.
принимаю её обратно(как если бы пользователь её ввел):
Цитата:
get symbol:99
cget symbol:111
oget symbol:109
mget symbol:109
mget symbol:97
aget symbol:110
nget symbol:100
dget symbol:115
sget symbol:13

прослеживается слово commands(читая по вертикали). далее процесс повторяется:
Цитата:
get symbol:10
get symbol:48
0get symbol:48
0get symbol:48
0get symbol:48

начинает выводить строку: 0000>get symbol:10

как будто rx-tx закоротили :crazy:

переписал процедуру ввода. должна работать 100%. иначе :shock:


Вложения:
Комментарий к файлу: :shock:
t5.rar [83.42 КиБ]
Скачиваний: 20

_________________
Tomorrow will be. Better
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR-DOS для МиниБота
СообщениеДобавлено: 11 янв 2009, 18:51 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
да, так и есть rx-tx закорочен
нужно отключать rx при передаче


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 119 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO