FORUM Carcd

FORUM Carcd (https://carcd.ru/forum/index.php)
-   Клуб программистов (https://carcd.ru/forum/19/)
-   -   Проэкт can <> rs232 (https://carcd.ru/forum/19/thread1249/)

deniss 06.01.2005 22:20

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

Хочу взять пик 18f258 (цена 6 $) пик имеет апаратный кан и uart на борту, и написать программу которая будет пересылать пакеты туда обратно (типа елм)

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

Теперь о первых трудностях, если брать на ком порт низкую скорость (типа 9600) то проблем особых нет, но это неприемлемо с моей позиции хотябы потому что я хочу работать и с мегабитным каном, ну хоть изредка, а если в 100 раз ниже скорость будет то никакого кеша не хватит, тем более что памяти в пике мало. Поэтому надо скорость побольше, например 115200 http://www.carcd.ru/forum/public/sty...IR#>/smile.gif но вылезла другая проблема, достаточно интенсивно поводить мышкой в винде и теряются байты, тоесть надо делать с апаратным контролем приема-передачи, мне это уже не по зубам, по крайней мере пока, так как с контролерами никогда не работал.

Если делать серьезный протокол в котором все это будет учтено то ресурсов пика может и не хватить, я так понимаю что почти вся свободная озу (1.5 Кб) пойдет под кеш.

Подобный проэкт уже есть и реализован, вот только реализация мне не нравится http://www.canpic.com/CANPIC_software1.htm

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

Сделать я могу и сам, только получится как из под топора если не хуже , если идея нравится то давайте обсудим, одним словом жду мнений

emmibox 07.01.2005 01:10

Поставь своей проге приоритет реалтайм и ничего не будет терятся. Кстати байты могут терятся если ты пытаешься одновременно еще и монитор кома юзать. Аппаратно не надо ничего делать.



Пик рулит!

Konstantin_D 09.01.2005 13:23

Год назад делал КАН в КОМ.

Апаратная база старая 51 контроллер внешний КАН и внешняя ОЗУ.



Сейчас вплотную работаю с процессорами СИГНАЛ.



Это улучшеный 51-й.

На борту у них есть и кан и два КОМа но цена около 150 гр.

на мой взгляд плюс его в том что отладчик под сигналы стоит 400гр.



вообще тема очень интересная.

Давай в понедельник пообщаемся.

sab 10.01.2005 03:14

Денис, а ты это сделал уже, что в ссылке написанно?

Я к сожалению не силен в Си. http://www.carcd.ru/forum/public/sty..._DIR#>/sad.gif

Пик мона найти и с памятью поболее.

Я вот думаю как конвертнуть прогу на ассемблер.

deniss 10.01.2005 09:09

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

deniss 04.02.2005 21:40

проба пера для контролеров pic18f258 кан в rs232

Команды идут в ascii

PW и PR соответственно запись и чтение регистра пика

O Режим работы после команды следует 2 числа (например O80 режим настройки контролера) , равнозначно pw6f80

B установка скорости кана , пример В01f805 (это 3 команды pw7001, pw71f8, pw7205)

R чтение cancon и canstat регистров , (PR6e и PR6f)

M и F маски и фильтра сообщений соответственно, формат MnMask где n номер маски (1 или 0) Mask 4 байта, фильтр аналогичен, только n от 0 до 5



T , вид TidDldata где Id 4 байта DL 1 байт (длинна сообщения) и data до 8 байт

1 байт 2 ascii символа, ввод команды по коду 13

данные от контролера идут просто байтами, без преобразования в ascii , програма написана без использования прерываний, если приходит сообщение то оно просто передается в rs232

пожелания по протоколу обмена принимаются, если это конечно комуто интересно



ссылка на русское описание кана для этого пика

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

sab 12.02.2005 12:45

Пока одно пожелание:

при написании АСМА активнее пользуйся ТАВ ом.

sab 19.02.2005 15:10

Для Дениса от другого Дениса, как обещал .

Посмотрел, вроде шняга какаято, а вроде и нет...

deniss 03.06.2005 22:08

малость переписал, исходник тут http://deniss.kiev.ua/progrramers/

почти все команды передаются в ascii и заканчиваются кодом 0dh (перевод строки)

команды :



'B' установка скорости, вид BXXYYZZ + 0dh где xx первый делитель yy второй и zz третий



'M' маска приемника вид MxXXYYZZKK + 0dh где x номер маски 0 или 1 для каждого из приемных буферов, XXYYZZKK сама маска



'F' аналогично маске, только № фильтра от 0 до 5



'O' запись управляющего регистра контролера Oxx + 0dh где хх значение (00 открыть, 80 закрыть, режим настройки) все выше перечисленые команды доступны только в режиме настройки



'T' передача сообщения, вид T1HHHHHHHHLLDATA + 0dh HH-заголовок, LL длинна сообщения и дальше сообщение(data)



'R' чтение статусного регистра



'S' програмирование быстрой передачи , SmHHHHHHHHLLDATA + 0dh HH-заголовок, LL длинна сообщения и дальше сообщение(data)

m-id передачи в диапазоне 90h-BFh



быстрая передача , это вызов заранее запрограмированой строки путем передачи 2 байт а именно Id + 0dh

Alodin 21.08.2005 20:54

Hi All



Вернулся с отдыха... http://www.carcd.ru/forum/public/sty...O_DIR#>/11.gif



Почитал... http://www.carcd.ru/forum/public/sty...O_DIR#>/11.gif



Предлагаю не изобретать велосипед и использовать мною разработанный протокол...



Это не текстовый протокол, а пакетный... с контрольными суммами и синхронизацией...



Мое железо я уже предлагаю... стоимость 100 USD, сделано на AT90CAN128



Интерфейс - USB to COM - скорость 921600



Предусмотрен режим асинхронного захвата пакетов из сети для мониторинга...



Посмотреть пример проги можно здесь - http://carcd.ru/forum/index.php?showtopic=8444



Для разработчиков протокол прилагается к железу...

Возможна консультация по организации буферов в Windows для исключения потерь пакетов



Если будут вопросы - ICQ 47108904

или alodin@mail.ru

Сейчас более-менеее буду в он-лайне


Текущее время: 19:02. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot