28.09.2008, 04:20
|
|
Прописка
Регистрация: 18.06.2006
Сообщений: 179
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
|
Сообщение от Gladkih
|
подскажите пожалуста по библиотеке модбас ццспика. я никогда не работал с такими интерфейсами и поэтому немогу понять многих вещей(почти всех).вот инфо по этой библиотеке подскажите что означает каждая команда.буду очень благодарен....
|
Издеваешься? Ты любую документацию на модбас открой, там все подробно написано. Что за дурь - ничего еще не сделав самостоятельно орать "помогите".
|
|
|
|
28.09.2008, 11:45
|
|
Гражданин KAZUS.RU
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
|
Сообщение от atlab
|
Сообщение от Gladkih
|
подскажите пожалуста по библиотеке модбас ццспика. я никогда не работал с такими интерфейсами и поэтому немогу понять многих вещей(почти всех).вот инфо по этой библиотеке подскажите что означает каждая команда.буду очень благодарен....
|
Издеваешься? Ты любую документацию на модбас открой, там все подробно написано. Что за дурь - ничего еще не сделав самостоятельно орать "помогите".
|
начнем с того что я нифига не понимаю в этих интерфейсах.это всеравно что электрику дать почитать про сложное механическое устройство и не дать возможности посмотреть на него или "пощупать".я скачал документацию.в основном на английском(ткни если можеш на инфо на руском).ту что я скачал на руском я почитал и результат-нефига не понял.я просто прошу помощи у тех кто работал с модбасом+ццспиком чтобы если это возможно объяснили как происходит обмен данными(общение).в этой библиотеке такое большое количество команд что я вообще не понимаю как с ними работать,что за чем должно идти.я работал и2с так там все просто и понятно,а тут нефига не понятно.заране благодарен за любую помощь.
|
|
|
|
28.09.2008, 11:57
|
|
Временная регистрация
Регистрация: 22.07.2006
Сообщений: 54
Сказал спасибо: 7
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
|
Сообщение от atlab
|
P.S. Ну хоть что-нибудь почитай, чтобы понимать, что делаешь. Это ведь не под Windows лабать, хоть немного нужно понимать железо.
|
хорошо, почитаю
скажи только - при этой частоте можно импульс уменьшить или нет?
(боюсь что нет)
|
|
|
|
28.09.2008, 12:46
|
|
Прописка
Регистрация: 18.06.2006
Сообщений: 179
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
|
Сообщение от wasp
|
скажи только - при этой частоте можно импульс уменьшить или нет?
(боюсь что нет)
|
Нет.
|
|
|
|
28.09.2008, 12:50
|
|
Почётный гражданин KAZUS.RU
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
|
Еще раз о вреде визардов...
Попробуйте вместо set_pwm1_duty(1);
поставить CCPR1L=0;
CCP1CON=0x2C;
Eсли картинка не изменится, визард отработал правильно.
|
|
|
|
28.09.2008, 12:54
|
|
Прописка
Регистрация: 18.06.2006
Сообщений: 179
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
|
Сообщение от Gladkih
|
начнем с того что я нифига не понимаю в этих интерфейсах.это всеравно что электрику дать почитать про сложное механическое устройство и не дать возможности посмотреть на него или "пощупать".я скачал документацию.в основном на английском(ткни если можеш на инфо на руском). ту что я скачал на руском я почитал и результат-нефига не понял.
|
В приложении - единственный у меня текст на русском.
Успехов в изучении (без всякого сарказма).
P.S. А что так приперло модбас вставить? Его только вроде только промышленные устройства успользуют?
Прикрепленный файл: 6952451.zip
|
|
|
|
04.10.2008, 12:20
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Тут сорс скачал. От http://www.vinculum.com/downloads.html Внизу, VMUSIC SPI PIC Sample. Обмен по SPI с Винкулумом (ой и имена придумывают )
Вопросец, что сии творения мысли делают ?
Код:
|
retData |= PORT_SDO?bitData:0;
PORT_SDI = (retData & bitData)?1:0; |
По интиции заменил бейсиком первую, вторую буду думать
Код:
|
retData = retData ‹‹ 1
if SDO_VD = 1 then retData.0 = 1 end if |
|
|
|
|
04.10.2008, 19:32
|
|
Почётный гражданин KAZUS.RU
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
|
1. Чтение
bitData - это маска, сдвигаемая вправо 0x80 начало
retData -принимаемый байт
retData|= PORT_SDO?bitData:0;
В случае, когда выражение перед знаком вопроса истинно, то выполняется часть до двуеточия, иначе - после.
байт приема retData в случае, если PORT_SDO== 1
слагается с маской (80,40,20,10,08,04,02,01) или с 0, если порт PORT_SDO== 0 .
Не знаю, как это в васике, но в си - как-то так
if (PORT_SDO == 1)
{
retData |= bitData;
}
Поскольку перед приемом байт обнуляется, чистить 0 бессмысленно.
2. Передача
PORT_SDI = (retData & bitData)?1:0;
Если результат умножения байта выдачи и байта маски маска равны 1, то выдаем 1, иначе 0
if ((retData & bitData) == 1)
{
PORT_SDI=1;
}
else
{
PORT_SDI=0;
}
|
|
|
|
05.10.2008, 02:12
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от urry
|
Еще раз о вреде визардов...
|
А в чем вред визада ?
Жена послала за майонезом, вы попросили продавца пивка и жене говорите "продавец козел пиво подсунул вместо майонеза".
Вот и от визада такой же вред как от этого продавца.
Что визаду заказывают - то он и выдает.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
05.10.2008, 12:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Сообщение от urry
|
Не знаю, как это в васике, но в си - как-то так
if (PORT_SDO == 1)
{
retData |= bitData;
}
Поскольку перед приемом байт обнуляется, чистить 0 бессмысленно.
2. Передача
PORT_SDI = (retData & bitData)?1:0;
Если результат умножения байта выдачи и байта маски маска равны 1, то выдаем 1, иначе 0
if ((retData & bitData) == 1)
{
PORT_SDI=1;
}
else
{
PORT_SDI=0;
}
|
Разница с бейском небольшая.
1.
if PORT_SDO = 1 then
retData = retData OR bitData
end if
Тут кажется подправлюсь.
2.
if (retData AND bitData) ‹› 0 then
PORT_SDI = 1
else
PORT_SDI = 0
end if
Спасибо, не так уж С страшен оказвается
Удачи!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:03.
|
|