Забыл сказать, помимо чтения примерно 300 линий надо еще и в обратную сторону примерно 50-60 линий управлять (выдавать земельку). Тогда и правда может ModBus использовать (USART)?! А по SPI я буду с Ethernet-модулем общаться.
Забыл сказать, помимо чтения примерно 300 линий надо еще и в обратную сторону примерно 50-60 линий управлять (выдавать земельку).
Ну я тоже управляю. И что? Какая разница, в какую сторону информация передается?
Димаn писал(а):
Тогда и правда может ModBus использовать (USART)?!
А при чем здесь ModBus? У меня обмен с подчиненными процессорами выглядит просто:
Цитата:
Протокол обмена: Параметры настройки UART следующие: длина слова - 9 бит четность - нет скорость обмена - 115200 бод Пакет имеет следующий вид: 1. Адрес подчиненного процессора 2. Код команды для выполнения 3. Количество байт данных в пакете 4. Собственно байты данных Адрес подчиненного процессора передается с единичным 9-м битом, остальная часть пакета передается с нулевым 9-м битом. Количество байт данных в пакете может быть нулевым. Ответ передается с нулевым 9-м битом и имеет следующий вид: 1. Количество байт данных в пакете 2. Собственно байты данных
Леонид Иванович Спасибо большое! Опередили меня - я следующим вопросом хотел спросить про протокол как раз. А про ModBus я просто в личке с Jack_A разговаривал....
ModBus - очень древний, можно сказать, устаревший протокол. Держится лишь за счет того, что на нем работает куча промышленного оборудования. Сам по себе в настоящее время он абсурден. Когда в собственных задачах стала задача сделать замену ModBus, я сделал Wake: http://digit-el.com/files/open/wake/wake.html
"Че-то мне твое лицо знакомо - ну прямо как мое!" (С) "Свадьба в Малиновке"
Это я к тому, что мой протокол был очень похож 1. Длина пакета ( включая его самого и CRC ) = 5...255 2. Адрес ( обычный, 8-битный ) . (1...127) "Всехный" адрес - 0 3. Команда 4. Данные 5. CRC
Поскольку количество элементов ( кроме данных ) фиксировано, выделять длину блока данных не стал - она определяется вычитанием - 5. В ответе 7-й бит = 1 ( 80h ... FFh ) - чтобы сидящие на шине слейвы знали, что это ответ и не реагировали. Команда = переданной команде + 80h , если ошибка. Без затей - просто, надежно, и никаких терок со Шнайдер Электрик за лицензию Про Б.Гейтса - отдельная песня
Заголовок сообщения: Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пт авг 24, 2012 12:06:30
Держит паяльник хвостом
Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24 Сообщений: 906 Откуда: ВО
Рейтинг сообщения:0
Да похоже все идут похожим путём. Правда у меня команд на 255 не тянуло и процессоров 8 в подчинении , поэтому я "слил" адрес и команду вместе. Правда был префекс перед началом основной посылки и ответ проца , если он префекс правильно получил. Это как бы занят не занят.
Привет всем котам. Обращаюсь с таким вопросом: Прошивал микросхемы 24C64W6 и 24C64WP всё проходит вроде неплохо- код записывается и считывается, но при установке в стиральную машинку чипа начинает без конца выполнять программу. Подскажите в чём тут может быть дело микросхемы в корпусе soic, прошивались через колодку- переходник. Программатор вот этот http://www.5v.ru/extrapic.htm
Правда у меня команд на 255 не тянуло и процессоров 8 в подчинении , поэтому я "слил" адрес и команду вместе.
Был у меня такой печальный опыт. Я тогда работал в паре с одним молодым программером, делавшим верхний уровень. Исходя из здравого смысла : короче пакет - быстрее передача - меньше вероятность ошибки, я тоже слил. Но молодой коллега заявил : расцепи, а то я не могу применить в проге верх. уровня оператор case . На мое недоумение : у тебя могучий Селерон, тебе проще приспособиться к ресурсам маленького 8535 - он ответил : Я ЗДЕСЬ ГЛАВНЫЙ. И я понял, что ему уже бесполезно доказывать, что 99% выпущенных нами дивайсов работают ( и будут работать ) в автономе вообще без всякого сетевого интерфейса, поэтому главным ты не можешь быть по определению . Трудно было работать, когда как минимум 3 сверху_стоящих точно знали, как я должен проектировать интерфейсный протокол, хотя никто из них в жизни не написал и строчки кода
Леонид Иванович Пните пожайлуйста, где почитать про мультипроцессорный режим работы USART микроконтроллеров. А то у Евстифеева что то мало написано... Я раньше только комп с Meg'ой соединял. Или кусочек программы где посмотреть.... Пожалуйста!
Да похоже все идут похожим путём. Правда у меня команд на 255 не тянуло и процессоров 8
Команд то получается тоже 127 как я понял.в команде первый бит ведь ноликом должен быть, чтобы отличать от адреса, если адрес не передается.
Цитата:
Но молодой коллега заявил : расцепи, а то я не могу применить в проге верх. уровня оператор case .
Печально когда коллега нуб. Решается вопрос с case добавлением всего одной строчки перед каждым switch. Не знаю конечно как там точно, но предполагаю что все равно адрес и команда отдельно рассматриваются в программе.
Если применить RS-485, то там 2 линии А и Б с терминаторами на концах, а на них через преобразователь вешаются TxD,RxD , и каждый может быть как передатчиком, так и приемником , и кто в конкретный момент будет передатчиком - определяется протоколом сети.
Здраствуйте, уважаемые форумчане! Кто-нибуть работал с Atmega16u4? Есть ли какие-то подводные камни, о которых не написано в даташите? И правда, что в нем зашит бутлоадер, позволяющий запрограмировать его без программатора?
Заголовок сообщения: Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Сб авг 25, 2012 23:39:30
Держит паяльник хвостом
Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24 Сообщений: 906 Откуда: ВО
Рейтинг сообщения:0
DrHlus писал(а):
Здраствуйте, уважаемые форумчане! Кто-нибуть работал с Atmega16u4? Есть ли какие-то подводные камни, о которых не написано в даташите?
Всегда есть
DrHlus писал(а):
И правда, что в нем зашит бутлоадер, позволяющий запрограмировать его без программатора?
The 8 bits mega AVR with USB interface devices are factory configured with a USB bootloader located in the on-chip flash boot section of the controller..
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения