Перейти к содержанию
    

Неплохое руководство по CRC. Описана реализация как прямого так и табличного алгоритма wasm.ru/docs/5/crc.zip.
Сенька вери-вери мачч))) Прям в десятку)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прям в десятку)

Но радоваться рано.

 

По информации от автора драйвера, реализация алгоритма однобитовым способом была выбрана из соображений минимального размера кода. Табличный метод с 16-байтной таблицей едва ли будет существенно быстрее по причине не слишком простой адресации flash в AVR. Вариант с 256-байтной таблицей может быть и лучше, но вот (дословно):

 

Real-time computation is out of question, at least at 12 MHz.

Так что, полагаю, вопрос закрыт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По информации от автора драйвера, реализация алгоритма однобитовым способом была выбрана из соображений минимального размера кода. Табличный метод с 16-байтной таблицей едва ли будет существенно быстрее по причине не слишком простой адресации flash в AVR. Вариант с 256-байтной таблицей может быть и лучше, но вот (дословно):
Real-time computation is out of question, at least at 12 MHz.
Так что, полагаю, вопрос закрыт.
ладно, глянем, что получится... Меня CRC интересует теперь по следующим соображениям: Так как вариант с бутом зарезан окончательно, есть море памяти. Табличный способ формирования CRC явно выгоднее по скоростным характеристикам, для меня это существенный плюс. Я и так повысил скорость программатора, об этом говорят те, кто его уже успел собрать. Все же хочется найти способ проверки CRC входящих пакетов, т.к. это повысит надежность, и откроет двери для применения драйвера не только в радиолюбительких поделках...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все же хочется найти способ проверки CRC входящих пакетов, т.к. это повысит надежность, и откроет двери для применения драйвера не только в радиолюбительких поделках...

С точки зрения Профессионалов (а не китайских инженеров) это все равно не вариант для серийной продукции. А с точки зрения моей - лично я никогда бы не полагался на то, что любой канал данных, будь то обычный UART или USB, будет error-free. Я бы все равно проверял достоверность того, что мы получаем. В применении программатора со стандартной оболочкой такое средство - верификация прошивки. В применении со своим собственным протоколом обмена - это верификация на уровне приложения с перезапросом пакетов, пришедших со сбоем.

 

Так что очень серьезных проблем в оговоренных рамках не вижу.

 

Но всё равно - удачи! Чем чёрт не шутит... :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С точки зрения Профессионалов (а не китайских инженеров) это все равно не вариант для серийной продукции. А с точки зрения моей - лично я никогда бы не полагался на то, что любой канал данных, будь то обычный UART или USB, будет error-free. Я бы все равно проверял достоверность того, что мы получаем. В применении программатора со стандартной оболочкой такое средство - верификация прошивки. В применении со своим собственным протоколом обмена - это верификация на уровне приложения с перезапросом пакетов, пришедших со сбоем.Так что очень серьезных проблем в оговоренных рамках не вижу.Но всё равно - удачи! Чем чёрт не шутит... :)
По поводу Професcионалов и Кытайцев: Приходится иногда сталкиваться с такими чудами, рыжими да конопатыми, да толстомордыми, да вумными во всем, о чем мы говорим, но - выпускающими серийные изделия - что кытайцы отдыхают... Если прошитый контроллер внешне будет полностью соответствовать спецификации USB для хоста, и достоверно переваривать данные в обе стороны (USB - функция), чем он будет отличаться от аналогичных по функциональности специализированных МС?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

AVR
Спасибо! А то я сам уже свою тему потерял)
Изменено пользователем prottoss

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 prottos вопрос может не по существу но всеже спрошу, Если замкнуть перемычкой сразу все три контакта, програмотор будет шиться? имеется виду перемычка для переключения ресета.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 prottos вопрос может не по существу но всеже спрошу, Если замкнуть перемычкой сразу все три контакта, програмотор будет шиться? имеется виду перемычка для переключения ресета.
Шиться программатор будет, а работать как программатор нет. В принципе, перемычку J2 можно исключить, замкнув ее накоротко, оставив только J1 для аппаратного сброса по RESET.

 

Кстати, как работается на программаторе, если Вы его собрали, какие кристаллы пробовали программировать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 prottos вопрос может не по существу но всеже спрошу, Если замкнуть перемычкой сразу все три контакта, програмотор будет шиться? имеется виду перемычка для переключения ресета.
Шиться программатор будет, а работать как программатор нет. В принципе, перемычку J2 можно исключить, замкнув ее накоротко, оставив только J1 для аппаратного сброса по RESET.

 

Кстати, как работается на программаторе, если Вы его собрали, какие кристаллы пробовали программировать?

 

Вот и я подума что если вообще исключить J2 а котда надо сменить прошиву замыкать J1, кстати по той схеме какую я приводил раньше не заработало вот теперь переделываю. (поспешил и сам посмеялся).

 

и еще вопрос а можноли еще и транслятор USB в RS 232 туда добавить, вообще класнобы получилось чтоб отладку по принтф можно было делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот и я подума что если вообще исключить J2 а котда надо сменить прошиву замыкать J1, кстати по той схеме какую я приводил раньше не заработало вот теперь переделываю. (поспешил и сам посмеялся).

 

Я не понял, схема которая со стабилитронами?

 

 

 

и еще вопрос а можноли еще и транслятор USB в RS 232 туда добавить, вообще класнобы получилось чтоб отладку по принтф можно было делать.
Если использовать полностью совместимый интерфейс с AVRProg b совместимых с ней программ, то нет. Если же ввести команды для перевода девайса в режим COM-порта, то да. Но для этого надо будет написать отдельную программку-арбитр , которая будет переводить программатор в режим последовательного порта...Геморно все это, лучше уж иметь отдельный переходник USB-RS232...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот и я подума что если вообще исключить J2 а котда надо сменить прошиву замыкать J1, кстати по той схеме какую я приводил раньше не заработало вот теперь переделываю. (поспешил и сам посмеялся).

 

Я не понял, схема которая со стабилитронами?

 

 

 

и еще вопрос а можноли еще и транслятор USB в RS 232 туда добавить, вообще класнобы получилось чтоб отладку по принтф можно было делать.
Если использовать полностью совместимый интерфейс с AVRProg b совместимых с ней программ, то нет. Если же ввести команды для перевода девайса в режим COM-порта, то да. Но для этого надо будет написать отдельную программку-арбитр , которая будет переводить программатор в режим последовательного порта...Геморно все это, лучше уж иметь отдельный переходник USB-RS232...

 

Да именно эта схема. Да имеено так как с арбитром. А там она по месту поместиться ????

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да именно эта схема.
А кто то спорил, что со стабилитронами все отлично будет работать)

 

Да имеено так как с арбитром. А там она по месту поместиться ????
Легко

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да именно эта схема.
А кто то спорил, что со стабилитронами все отлично будет работать)

 

 

 

Да имеено так как с арбитром. А там она по месту поместиться ????
Легко

 

 

не не я не спорил просто спросил знающих людей. и кстати шиться при питалове 3.5 он отказывался, а вот когда 4 и выше все ок, может из за того что мега не L.

 

а может не загоняться с арбитром, может юзануть PD 5 для выбора програмер или транслятор.

 

Следующий текст может звучать нагловато: может поделитесь сурцом ? может я что накропаю в эту сторону я думаю этой функции все обрадуються а особенно я, так как айс соберать неохота. потомучто нечем большим пока незанимался.

Изменено пользователем TamTam

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот еще вопрос, сейчас глянул, к буку подключен USB видео ввод потребление 350 мА. что натолкнуло на мысль юзать питалово от USB для таргета, в следствие чего было решено всеже поставить предохранитель но не простой а самовостонавливающийся, знающие люди подскажите какой доставабельный С.В. предохранитель туда можно поставить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если использовать полностью совместимый интерфейс с AVRProg b совместимых с ней программ, то нет. Если же ввести команды для перевода девайса в режим COM-порта, то да. Но для этого надо будет написать отдельную программку-арбитр , которая будет переводить программатор в режим последовательного порта...Геморно все это, лучше уж иметь отдельный переходник USB-RS232...

 

Насколько я понял, в программаторе от ObDev сделана эмуляция со стороны PC двух независимых COM-портов. Одни управляет программатором, который далее шьет target через SPI. Второй независимо от первого поддерживает отладочный вывод, который target может выводить через свой UART, подключенный к UART'у кристалла программатора, трансилируемый на второй виртуальный (CDC) COM порт. Только там поддержан только вывод (по схеме, по софту не смотрел), а надо поддержать и ввод. И получится именно то, что нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...