| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
Термостат
06.08.2007, 12:42
|
|
|
Временная регистрация
Регистрация: 03.10.2006
Сообщений: 75
Сказал спасибо: 51
Сказали Спасибо 4 раз(а) в 2 сообщении(ях)
|
|
Сообщение от urry
|
Все, посчитал. Действительно, 54.
Ну, тогда не знаю... Переписать прогу... Фсе.
|
Алгоритм вроде такой 8bit-CRC: 0x07 = x8 + x2 + x + 1
, но откуда взялось 90 01 ff ff 7f ff 0c 10 54 ?
http://www.piclist.com/techref/method/error/crccalc.htm
|
|
|
|
06.08.2007, 13:12
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
|
С проекта . Я грешил на протеус, что неправильно выдает контрольную сумму..Откуда и ошибка градусника. Ни фика, правильно, проверил.
Может, кому интересно, как на даллас семикондактор контрольная сумма считается, то вот код
|
Код:
|
#include ‹pic.h›
unsigned char mas[8]={0x90,1,0xFF,0xFF,0x7F,0xFF,0x0C,0x10};
unsigned char calc_crc (unsigned char *mas)
{
unsigned char i,data,crc,fb,st_byt;
st_byt=0;
crc=0;
do{
data=mas[st_byt];
for (i=0;i‹8;i++)// счетчик битов в байте
{
fb =crc ^ data;
fb&=1;
crc ››= 1;
data ›› =1;
if (fb == 1)crc^=0x8c;// полином, мля
}
st_byt++;
}while (st_byt != 8);// счетчик байтов в массиве
return crc;
}
//----------------------------------------------
main()
{
unsigned char crc=calc_crc(mas);
for (;;)
{
}
}
//---------------------------------------------- |
|
|
|
|
07.08.2007, 19:44
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
to urry
Ты же спец по hi tech , обьясни как калибровочную константу загнать? Для 12ф629.
|
|
|
|
07.08.2007, 20:01
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
|
Ее самое главное не стереть !!!- командой - стереть все - заводское значение затирается. В хайтеку - с 9 версии - обращение (инициализация ) идет автоматически в установочном коде, ничего не нужно трогать.
Если уже затер, то по 3fff ставить среднее значение 3480
|
|
|
|
07.08.2007, 20:11
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
|
Сообщение от urry
|
Ее самое главное не стереть !!!- командой - стереть все - заводское значение затирается. В хайтеку - с 9 версии - обращение (инициализация ) идет автоматически в установочном коде, ничего не нужно трогать.
Если уже затер, то по 3fff ставить среднее значение 3480
|
Да ты не понял , с прошивкой ее в реале проблем нет.
Надо для протеуса , чтобы не делать два варианта исходника .
Как известно в моделе не предусмотренно этой константы.
И если принудительно записывать ее в коде, будет все гуд.
Протеус не будет виснуть , а программатор спросит перед затиранием ее...
|
|
|
|
07.08.2007, 20:12
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Или я снова опоздал и лабцентр исправил эту бяку ?
|
|
|
|
07.08.2007, 20:21
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
|
А, не, с кофом от хайтека ничего не виснет. Идет 1 предупреждение - что эффекта от записи в этот регистр в модели не предусмотрено - и все.
7.1 sp4
|
|
|
|
07.08.2007, 20:28
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
|
Сообщение от urry
|
А, не, с кофом от хайтека ничего не виснет. Идет 1 предупреждение - что эффекта от записи в этот регистр в модели не предусмотрено - и все.
7.1 sp4
|
И call 3ff не работает?
|
|
|
|
07.08.2007, 20:50
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
|
call 3fff входит в автоматом формируемый участок кода, который не видно в файле source code - ну, там идет обнуление переменных, которые будут использоваться, потом это call 3fff - и протеус через него перепрыгивает, сразу идет к твоему коду.
А что, это важно ?
|
|
|
|
07.08.2007, 23:36
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
|
Сообщение от urry
|
потом это call 3fff - и протеус через него перепрыгивает, сразу идет к твоему коду.
?
|
Ну тогда все ок , надо прот 7.2 ставить а то сижу на 7.1сп 2 .
Да надоело каждый раз по два проекта делать ( если с внутренним генератором) иногда в реале не тот прошиваю...
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:37.
|
|