Konoplj2010 писал(а):
..как Вы это сделали..Этот топик читают: Гость
Ответов: 8921
Рейтинг: 823
|
|||
Подавал на СОМ символ с кодом "0" при скорости 19200 и одном синхроимпульсе, это как раз (8+1)/19200=~469 мксек. При бОльших скоростях импульс был короче и ответа не было, это самая большая скорость при которой выдавался ответ. |
|||
карма: 19 |
|
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): Ну хорошо, а дальше получится? |
|||
карма: 0 |
|
Ответов: 8921
Рейтинг: 823
|
|||
Konoplj2010 писал(а): ..а дальше получится.. |
|||
карма: 19 |
|
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): Хорошо, я на Вас надеюсь, Вам от меня помощь нужна? Вы на счёт той цене о которой я Вам писал на почту, согласны? |
|||
карма: 0 |
|
Ответов: 8921
Рейтинг: 823
|
|||
Konoplj2010, таки английский язык короче русского, например фраза на русском "Тёща и жена забрали детей и уехали отдыхать" переводится на английский одним словом "Yes!"
yes_.jpg |
|||
карма: 19 |
| ||
файлы: 1 | yes_.jpg [111.5KB] [965] |
Ответов: 203
Рейтинг: 2
|
|||
Леонид, если у Вас WIN7 то накопитель надо ставить... Рвет семерка поток
Да!!!! однако, короче на 1 букву ;) |
|||
карма: 0 |
|
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): А вот команда RESET обведена красным, что значит 0? Это разрешение или запрет подачи команды RESET? Если это так то команда RESET должна подавать в лбом случае в начале кадра. |
|||
карма: 0 |
|
Ответов: 8921
Рейтинг: 823
|
|||
Konoplj2010 писал(а): что значит 0На СОМЕХ не получилось, в любом случае переключение скорости мешает непрерывности данных. А вот на обычных 2 шт. СОМ с переключением начало получаться, номер датчика прочитал! Полагаю дальнейшее дело техники. При удачной пробе с вас грамотный список наименований команд с их кодом в xxh yes_2.jpg |
|||
карма: 19 |
| ||
файлы: 2 | yes_2.jpg [71.2KB] [856], com_1wire4.rar [44.6KB] [452] |
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): Это просто СУПЕР!!! Я сегодня попробую что получилось и отпишусь (если дети к компу дадут подойти). ------------ Дoбавленo в 19.36: Вот что я получил. http://forum.hiasm.com/xf/attach/share/%D0%A0%D0%B5%D0%B7%D1%83%D0%BB%D1%8C%D1%82%D0%B0%D1%82%20%E2%84%961.jpg ------------ Дoбавленo в 19.58: А мой HIAsm компилирует, но программа которая запускается такого не может. Я имею в виду в ответ мне приходит всё только 11111111111..... , а та программа которая в архиве считала адрес. |
|||
карма: 0 |
|
Ответов: 8921
Рейтинг: 823
|
|||
Konoplj2010, странно, выложите что пишет компилятор в окне "Отладка", а может и в "Ошибки" что появляется.
Ну ладно, это не смертельно Значит продолжаем! Кто у вас работает с программой, девочки-операторы, постоянно следят, или изредка, в аварийной защите задействована или просто контроль? Продумайте, как бы хотелось им (операторам) и вам. Наименования команд за вами |
|||
карма: 19 |
|
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): Вообще в идеале нужно было бы ещё одну микросхему по 1-Wire как расширитель портов, это для автоматизации. Но это я уже сам сделаю, Вы и так уже слишком много для меня сделали, а за мою "благодарность" забыли ответить Для меня лучше всего будит если это была бы вложенная форма, на поток я бы подавал код в виде байт от 1 до 9 штук, в свойствах номер порта, в событии получал бы ответ от датчика в размере от 1 до 8 байт и другой точкой событий получал бы сигнал если датчик не отвечает. ------------ Дoбавленo в 07.05: И чтобы эта форма генерировала команду RESET перед началом кадра самостоятельно. |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
02 Feb 2016 Леонид писал(а): с вас грамотный список наименований команд с их кодом в xxh 03 Feb 2016 Леонид писал(а): Наименования команд за вами |
|||
карма: 25 |
|
Ответов: 70
Рейтинг: 0
|
|||
Tad писал(а): Ну хорошо, если Вам так нужны команды порта то я выложу. Хотя если чесно не пинимаю зачем они Вам. ------------ Дoбавленo в 13.11: Вот самые основные коды, во всяком случае те которыми я буду пользоваться. READ ROM 0x33 - команда одному подчинённому сказать свой уникальный код (адрес). После этого кода один датчик скажет в линию 8 байт кода, в дальнейшем этот код будет использоватся для обращения конкретно для этого датчика. VATCH ROM 0x55 - поиск одного датчика в сети по его коду (адресу). После подачи этой команды мастер выдаёт в линию 8 байт кода устройства к которому он обращается. Подчинённый который распознал свой код слушает что ему скажет мастер далее. Обычно мастер даёт команду подчинённому выдать результат замера в линию командой 0xBE. READ FLASH 0xBE - команда сказать 2 байта результата замера температуры. После того как мастер сказал 0xBE подчинённый выдаёт в линию 2 байта которые эквивалентны показанием температуры среды в которой датчик находиться. SKIP ROM 0xCC - команда обращения ко всем датчикам в сети игнорируя их коды (адреса). После подачи этого кода обычно мастер даёт команду замерять температуру 0x44 всем датчикам для того чтобы результаты замера совпадали по времени со всеми датчиками. CONVERT TEMPERATURES 0x44 - команда произвести замер температуры. После этой команды датчик будит преобразовывать температуру в 2 байта которые эквивалентны показанием температуры среды в которой датчик находиться и сохранит в своей FLASH памяти. Эта процедура занимает примерно 750 мили сек. ALARM SEARCH 0xEC - на эту команду отвечает только тот датчик который перегрелся и находится в аварии по температуры. Обычно после того как мастер сказал эту команду выдаёт команду 0x33 для того чтобы датчик сказал свой код (адрес) и мастер смог определить где находится данный датчик. ------------ Дoбавленo в 13.23: В алгоритме это выглядит так. RESET; Команда RESET Write 0xCC; Команда пропустить адрес Write 0x44; Команда преобразовать температуру всем датчикам delay_ms (750); Ждать 750 мили сек пока датчики выполнят преобразование RESET; Команда RESET Write 0x55; Команда поиск адреса Write 0x28; 8 байт адреса устройства Write 0xA7; Write 0x5E; Write 0x2A; Write 0x07; Write 0x00; Write 0x00; Write 0xE1; Write 0xBE; Команда передать результат замера температуры для одного конкретного датчика Read bate; Считать младший байт результата датчика №1 Read bate; Считать старший байт результата датчика №1 RESET; Команда RESET Write 0x55; Команда поиск адреса Write 0x28; 8 байт адреса устройства Write 0xA7; Write 0x5E; Write 0x2A; Write 0x07; Write 0x00; Write 0x00; Write 0xE1; Write 0xBE; Команда передать результат замера температуры для одного конкретного датчика Read bate; Считать младший байт результата датчика №2 Read bate; Считать старший байт результата датчика №2 RESET; |
|||
карма: 0 |
|
Ответов: 8921
Рейтинг: 823
|
|||
Konoplj2010, замечательно!
Я было начал делать считывание номеров подключённых датчиков, "да призадумался" (как ворона с сыром ), ведь эта процедура бесполезна, т.к. зная номер, всё равно не будем знать, где этот номер установлен. Другими словами перед установкой датчика на место необходимо УЖЕ ЗНАТЬ его номер и записать его наряду с местом установки! Надо ручками заполнить такой *.ini файл code_36920.txt и программа будет начинать работу с него проверять все-ли датчики на месте и в исправности. Леонид писал(а): Кто у вас работает с программой, девочки-операторы, постоянно следят, или изредка, в аварийной защите задействована или просто контроль? Продумайте, как бы хотелось им (операторам) и вам. |
|||
карма: 19 |
| ||
файлы: 1 | code_36920.txt [415B] [582] |
Ответов: 70
Рейтинг: 0
|
|||
Леонид писал(а): Кто у вас работает с программой, девочки-операторы, постоянно следят, или изредка, в аварийной защите задействована или просто контроль? Продумайте, как бы хотелось им (операторам) и вам."Оператор", если можно так назвать. В лучшем случае мы хотели сделать схемотическое изображение агрегата с указанием температур в каждом конкретном месте. Но это в идеале. ------------ Дoбавленo в 21.38: На счёт *.ini это замечательно, но как? Это же другая программа, или я что то не допонимаю? |
|||
карма: 0 |
|