Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: DAlexV, ivan_fd  
Форум Picbasic.ru » Программирование МК » Swordfish » Обновление каталога статей по теме SwordFish
Обновление каталога статей по теме SwordFish
DAlexV Дата: Вт, 30.03.2010, 15:07  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

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

На подходе:

1. Propeller clock или передача данных через вращающийся трансформатор.
2. Обмен данных между устройствами или опять RS485

Пишите какие еще темы Вам будут интересны, или неинтересны. Будем пополнять каталог статей.

Жду предолжений wink


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
ЯНДЕКС Дата: 30.03.2010
vv Дата: Вт, 30.03.2010, 18:11  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Продвинутый
Сообщений: 132
Репутация: 6   ±
Замечания:   ±
На сайте с 13.11.2009

Статус: Offline

Интересует чтение/запись внешних eeprom 93c46. Был бы признателен)
DAlexV Дата: Ср, 31.03.2010, 23:04  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Quote (vv)
Интересует чтение/запись внешних eeprom 93c46

В Шпротеусе нет к сожалению данного чипа как и самой линейки то же, попробуй 25lc010A он вроде совпадаеть должен. У меня в свое время их горы было, но потом выбросил за ненадобностью.
Скинул тестовую прогу из каталога Samples что идет в комплекте с Рыбой, если есть возможность проверь на железе. Если все гуд. Там только подпраить максимальное значение Адреса. Если нет, придеться писать библиотеку.
Жду ответа
Прикрепления: SPI_EPROM_Forum.rar (48.6 Kb)


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
deskjet Дата: Вс, 15.08.2010, 16:04  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Продвинутый
Сообщений: 143
Репутация: 5   ±
Замечания:   ±
На сайте с 20.06.2009

Статус: Offline

Ув. DAlexV, интересует тема загрузчиков - bootloader-ов. Есть какие нибудь наработки по теме?

За 20 8 дней ни одного сгоревшего микроконтроллера.
PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
DAlexV Дата: Вс, 15.08.2010, 18:47  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Quote (deskjet)
интересует тема загрузчиков - bootloader-ов. Есть какие нибудь наработки по теме?

Ни когда не интересовался, насколько знаю загрузчики стандартные от Microchip. Рыба вроде как позволяет ими пользоваться. Сам пользуюсь PICKIT2 и в качестве программера и отладчика(USART tool)


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
demanik Дата: Вс, 15.08.2010, 19:11  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 448
Репутация: 10   ±
Замечания:   ±
На сайте с 11.12.2007

Статус: Offline

Quote (DAlexV)
Рыба вроде как позволяет ими пользоваться

Лежат в папке рыбы в:"MCLoader" для очень многих пиков


Попробуй всё и вся... может быть пол...

DAlexV Дата: Вс, 15.08.2010, 19:16  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Спасибо Николай, просветил book bash book

Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
DAlexV Дата: Вт, 19.10.2010, 14:55  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Выкладываю недоконченный вариант, про RS485. Примеры будут позже. Нет времени.

Code

Обмен данными между устройствами, или опять rs485.  
Давно планировал написать про это, но о нем и так народом уже полно написано. Даже передумал, но возросший интерес на форуме же вдохновил взяться за эту тему снова.  
Начнем:
Как и в usart в 485 в основном используется тот же протокол. Вариантов передачи данных здесь два: либо двоичный, либо Ascii. Все зависит от количества передачи данных  на единицу времени. Чем длиннее линия данных тем скорость должна быть ниже. Стандартная скорость составляет 9600 или 4800. Теперь  о протоколах. Вариантов масса.  Самый распространенные это Modbus (умный дом) и DMX-512(управление световым  
  Двоичный протокол:
Данные передаются в двоичном формате в основном фиксированной длины. (В противном случае  приходиться добавлять еще биты длины пакета). Первый байт это адрес слэйв устройства, далее следуют данные. Последние два байта это контрольная сумма для проверки принятых данных по стандарту crc16.  

Устройство мастер подготавливает данные и вычисляет контрольную сумму. Отправив его в линию мастер ждет какое то время подтверждения приема от слэйв устройства которому оно предназначено.

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

Мастер находящийся в режиме ожидания ответа от слэйв устройства если в течении определенного времени не получает ответа сообщает оператору об отсутствии ответа от слэйва. При получении ответа от слэйва мастер так же сравнивает принятые в пакете адрес, данные и crc16. Если все совпадает, значит обмен пакетами произведен верно. В принимаемом пакете слэйв кроме ответа может отдавать данные для мастера ба куль будь то состояние входов, АЦП данные или другие параметры. Существует еще режим мульти мастер когда в линии могут находится несколько мастер устройств. Здесь гораздо сложнее так как приходится использовать арбитраж (очередь по которому мастера будут выходить в линию что бы не было проблем на линии)

Режим Ascii
Отличается от двоичной передачи скоростью и наглядность. Скорость при этом ниже, но если подключить в линию компьютер с переходником можно наглядно контролировать все процессы происходящие на линии. Здесь технология обмена между мастером и слэйвом точно такая же как и в предидущем протоколе, разница в том что здесь все данные идут в Ascii символами, есть символ начала посылки ($ или#) далее следуют от 1 до 3 символов адреса слэйв устройства. После этого идут данные. причем
Количество их ограничивается только размером буфера приема.  Признаком конца передачи как правило сделать 2 бита. CR и FD. Десятичные коды их 10 и 13 соответственно. В приложениях к статье Вы найдете готовые примеры реализации обоих потоков: 485bin.dsn,485ascii.dsn,   Схема для обоих программ одинаковая, разница только в программной части. Для удобства просмотра в пошаговом режиме вместо .hex загружен .cof. Оба устройства имеют жк индикатор и клавиатуру 4*4. Код каждой нажатой клавиши передается на индикатор второго устройства. Так же передаются данные с ацп.  
Все замечания, предложения попрошу выкладывать на форум в соответствующий раздел.  
Вроде все. Всем успехов.  


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
proton Дата: Ср, 20.07.2011, 12:46  |                                                                                                                Сообщение # 9
Группа: Пользователи
Ранг:  Новенький
Сообщений: 16
Репутация: 0   ±
Замечания:   ±
На сайте с 13.07.2011

Статус: Offline

Интересует работа с ds1307, и инициализация кнопок для задания времени и даты.
Форум Picbasic.ru » Программирование МК » Swordfish » Обновление каталога статей по теме SwordFish
  • Страница 1 из 1
  • 1
Поиск: