FORUM Carcd  

Вернуться   FORUM Carcd > Клуб профи > Клуб программистов

Клуб программистов Раздел только для программистов. Кто задаст глупый вопрос или даст глупый ответ,будет забанен сразу.

Ответ
 
Опции темы
Старый 06.01.2005, 22:20   #1
Модератор
 
Регистрация: 05.02.2004
Сообщений: 575
Вес репутации: 0
Репутация: 0


По умолчанию

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

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

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

Теперь о первых трудностях, если брать на ком порт низкую скорость (типа 9600) то проблем особых нет, но это неприемлемо с моей позиции хотябы потому что я хочу работать и с мегабитным каном, ну хоть изредка, а если в 100 раз ниже скорость будет то никакого кеша не хватит, тем более что памяти в пике мало. Поэтому надо скорость побольше, например 115200 но вылезла другая проблема, достаточно интенсивно поводить мышкой в винде и теряются байты, тоесть надо делать с апаратным контролем приема-передачи, мне это уже не по зубам, по крайней мере пока, так как с контролерами никогда не работал.

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

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

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

Сделать я могу и сам, только получится как из под топора если не хуже , если идея нравится то давайте обсудим, одним словом жду мнений
deniss вне форума   Ответить с цитированием
Старый 07.01.2005, 01:10   #2
Reverse Engineer
 
Аватар для emmibox
 
Регистрация: 06.06.2004
Адрес: Москва
Сообщений: 2,360
Вес репутации: 10


По умолчанию

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



Пик рулит!
emmibox вне форума   Ответить с цитированием
Старый 09.01.2005, 13:23   #3
Местный
 
Регистрация: 22.11.2004
Сообщений: 1,912
Вес репутации: 0


По умолчанию

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

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



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



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

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

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



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

Давай в понедельник пообщаемся.
Konstantin_D вне форума   Ответить с цитированием
Старый 10.01.2005, 03:14   #4
sab
Местный
 
Регистрация: 27.11.2004
Сообщений: 2,406
Вес репутации: 0
Репутация: 0


По умолчанию

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

Я к сожалению не силен в Си.

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

Я вот думаю как конвертнуть прогу на ассемблер.
sab вне форума   Ответить с цитированием
Старый 10.01.2005, 09:09   #5
Модератор
 
Регистрация: 05.02.2004
Сообщений: 575
Вес репутации: 0
Репутация: 0


По умолчанию

Что касается ссылки, это делал не я , да и реализация мне не понравилась, из тех процесоров что поддерживают кан и ком по соотношению цена-качество этот наверное самый лучший. Если я буду писать , то писать буду на паскале для пика, он дает асеблер на выходе, я посмотрел, код достаточно компактный , а скорость написания намного выше, при желании всегда можно в асемблере код поправить.
deniss вне форума   Ответить с цитированием
Старый 04.02.2005, 21:40   #6
Модератор
 
Регистрация: 05.02.2004
Сообщений: 575
Вес репутации: 0
Репутация: 0


По умолчанию

проба пера для контролеров 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

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



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

Ссылка на калькулятор для регистров установки скорости работы кана
deniss вне форума   Ответить с цитированием
Старый 12.02.2005, 12:45   #7
sab
Местный
 
Регистрация: 27.11.2004
Сообщений: 2,406
Вес репутации: 0
Репутация: 0


По умолчанию

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

при написании АСМА активнее пользуйся ТАВ ом.
sab вне форума   Ответить с цитированием
Старый 19.02.2005, 15:10   #8
sab
Местный
 
Регистрация: 27.11.2004
Сообщений: 2,406
Вес репутации: 0
Репутация: 0


По умолчанию

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

Посмотрел, вроде шняга какаято, а вроде и нет...
sab вне форума   Ответить с цитированием
Старый 03.06.2005, 22:08   #9
Модератор
 
Регистрация: 05.02.2004
Сообщений: 575
Вес репутации: 0
Репутация: 0


По умолчанию

малость переписал, исходник тут 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
deniss вне форума   Ответить с цитированием
Старый 21.08.2005, 20:54   #10
Alodin
Гость
 
Сообщений: n/a


По умолчанию

Hi All



Вернулся с отдыха...



Почитал...



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



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



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



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



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



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



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

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



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

или alodin@mail.ru

Сейчас более-менеее буду в он-лайне
  Ответить с цитированием
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблемы с pcmcia-rs232 GOLANt Помощь начинающим 15 20.04.2007 08:13
Pdf на преобразователи Rs232-usb MrQwas Даташиты 0 19.01.2006 07:33
St-lab Cardbus Rs232 Диагностика 0 01.01.1970 03:00


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


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