Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Re: Банальный цифровой термометр.

Пт фев 10, 2012 12:27:55

Подскажите пожалуйста начинающему, под какой компилятор написан исходник?

Что не так ? Пользую HI-TECH Software.

Пробовал объявлять unsigned char TMR1H_ и TMR2L_

Первые четыре пропадают, остаётся seg, но она вообще нигде не объявлена. Используется в одном месте кода,
Код:
// вставка децимальных точек
if (count_raz == 3)  seg.byte++;
sA = 1-A;
sB = 1-B;
sC = 1-C;
sD = 1-D;
sE = 1-E;
sF = 1-F;
sG = 1-G;
sH = 1-H;
}


Error [192] E:\PIC_projects\banal_term\banal.c; 16.9 undefined identifier "TMR1H_"
Error [192] E:\PIC_projects\banal_term\banal.c; 16.25 undefined identifier "TMR1L_"
Error [192] E:\PIC_projects\banal_term\banal.c; 45.9 undefined identifier "TMR1H_"
Error [192] E:\PIC_projects\banal_term\banal.c; 46.9 undefined identifier "TMR1L_"
Error [192] E:\PIC_projects\banal_term\banal.c; 129.21 undefined identifier "seg"
Error [196] E:\PIC_projects\banal_term\banal.c; 129.29 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 130.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 130.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 131.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 131.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 132.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 132.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 133.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 133.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 134.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 134.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 135.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 135.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 136.17 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 136.20 struct/union required
Error [196] E:\PIC_projects\banal_term\banal.c; 137.17 struct/union required
Advisory[1] too many errors (21)


Очень хочу освоить, помогите пожалуйста.

Re: Банальный цифровой термометр.

Вт фев 14, 2012 08:55:49

Всем добрый день! При сборке, для меня были критичны размеры этого термометра, т.к. собирал его для автомобиля. Поэтому использовал МК в SOIC-корпусе и SMD-стабилизатор и подключил только два разряда индикатора, "минус" отображается точкой. Изначально у меня был контроллер без литера "А", прошивал его в ICProg, фьюзы не трогал, прошилось без проблем. Однако устройство так и не запустилось, никакой реакции. Заменил контроллер, поставил с "А", таже песня. Правильность монтажа проверял несколько раз, да там вроде и проверять особо нечего. Я не использовал подтяжку MCLR к +5, может в этом причина? Или стоит установить доп. фьюз как в начали темы говорилось?

Re: Банальный цифровой термометр.

Вт фев 14, 2012 09:01:50

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

Re: Банальный цифровой термометр.

Вт фев 14, 2012 12:26:05

Я использовал первоначальную прошивку, по ссылке в статье.

Re: Банальный цифровой термометр.

Вт фев 14, 2012 20:09:11

Тоже решил поиграться с термометром :)
Открыл исходник, дошёл до кода:
Код:
// === набор функций по опросу датчика
void DS18 (void){
unsigned char tmp;
init_ds (); // инициализация датчика DS18B20
iw_out (0xCC); // Skip_ROM (CCh) пропуск процедуры сравнения сер.№
iw_out (0x44); // Start_Conv (44h) запуск преобразования температуры
init_ds (); // инициализация датчика DS18B20
iw_out (0xCC); // Skip_ROM (CCh) пропуск процедуры сравнения сер.№
iw_out (0xBE); // Read Scratchpad (BEh) чтение содержимого блокнотной памяти
// далее чтение содержимого области блокнотной памяти DS1820
tmp  = iw_in (); // приём младшего байта температуры
term = iw_in (); // приём старшего байта температуры
// далее анализ содержимого
if (term > 0xFFF)
{pol=1; term = 1 - term;}
else pol=0;
}

а где взять файл с функциями для DS18?
Поделитесь пожалуйста чтоб заново не переписывать.
Спасибо :))

Re: Банальный цифровой термометр.

Вт фев 14, 2012 21:32:35

Устройство заработало. Все отлично. Сам виноват, блок питания слабоват был. :)))

Re: Банальный цифровой термометр.

Ср фев 15, 2012 18:49:03

Люди добрые, кто-нибудь знает как связаться с автором термометра?
Хочу файл с функциями для термометра попросить. А то исходник выложен, а файла с функциями нет :(

Re: Банальный цифровой термометр.

Пт мар 16, 2012 00:57:13

здрасте всем
я тоже присоединился и собрал сей термометр
индикаторы подключил через транзисторы чтоб ярче светили
но облом .......... яркость оставила желать лучшего
что делать ХЕЛППППП

Re: Банальный цифровой термометр.

Вс мар 18, 2012 09:13:20

Почитать тему, которая так и называется "транзисторные ключи"

Re: Банальный цифровой термометр.

Чт мар 22, 2012 12:55:11

Хочу поблагодарить автора данного проекта. Собрал, все сразу заработало. Единственное, но автор об этом предупреждал, не достаточная яркость свечения индикаторов. Но это уже дело техники и рук. Поставил три ключа (у меня три разряда) и все ОК. Спасибо

Re: Банальный цифровой термометр.

Сб апр 07, 2012 14:42:26

Подскажите, пожалуйста можно заменить PIC16F628a на PIC16F628-04I/P ?

Re: Банальный цифровой термометр.

Сб янв 12, 2013 18:15:01

Участникам Форума: Посмотрите это устройство,( http://avtoelectro.radioliga.com/device ... w=hg_termo) многие вопросы отпадут

Re: Банальный цифровой термометр.

Ср апр 10, 2013 20:17:34

доброго времени суток. собрал термометр с прошивкой от uldemir, индикатор с общим катодом при велючении питания пишет sen1 затем непонятная надпись
непонятная надпись.............JPG
(3.91 KiB) Скачиваний: 699
похожая на опрос и потом показывает температуру. но иногда мигает непонятная надпись попеременно с температурой. а иногда вообще не хочет показывать температуру а пишет только эту не понятную надпись , приходится выключать и включать заново тогда помогает . что это может быть??? все подтяжки по рекомендации автора сделал.питание от 3,5 до 5 вольт

Re: Банальный цифровой термометр.

Ср апр 10, 2013 20:23:22

"npr-" - no presence pulse. - нет ответного импульса от термодатчика. Когда микроконтроллер посылает сброс термодатчику, термодатчик должен ответить - а ответа нет. черточка по середине означает, что на линии остаётся высокий уровень. Так что вероятно - обрыв линии, не надёжный контакт итп. если было бы npr_ - то значит кз.

Re: Банальный цифровой термометр.

Ср апр 10, 2013 21:25:42

как можно избавится от этого, сейчас еще раз проверил хорошо ли припаян датчик. датчик держится на 100% , от 7 ножки на плюс нужно пустить 4,7ком резистор, правильно.??? седьмая нога это как раз центральная ножка датчика.

Re: Банальный цифровой термометр.

Ср апр 10, 2013 21:57:29

Надо выяснить причину проблемы и с ней бороться. А причину вам придется найти самостоятельно. Мы ж не знаем, что у вас там наворочено. Могу дать универсальный ответ, который несколько лет подряд слышал от... хм... короче: "у нас всё работает" :)) проверить землю тоже следовало бы. Да и вообще, существует только два типа неисправностей. Ситуацию при которой выскакивает это сообщение я описал. На худой конец, можете использовать прошивку автора, может она работает лучше.

Re: Банальный цифровой термометр.

Ср апр 10, 2013 22:29:57

нет мне ваша прошивка очень понравилась, с прошивкой автора у меня помимо злощастного ноля еще и остальные не работающие сегменты подсвечивались крассным.а у вас все замечательно, к тому же очень много попадается соединеных дисплеев с общим катодом , а в сети в основном под анод(((короче вы молодец, про неисправнось, отпаял 4,7ком реистор оставил только 10ком работа стала стабильнее, обнаружил закономернось при напряжении меньше 3,1 вольта загорается эта ошибка после и уже не гаснет. и иногда бываю сбои когда поднимаешь напряжение от 3,1 до 5 в но не всегда без резистора работает стабильнее. может в этом крылась проблема. и может ли сей термометр работать от 2,5в.???

Re: Банальный цифровой термометр.

Ср апр 10, 2013 22:36:21

ds18x20 не работает от 2.5 вольт. По даташиту от 3.0 до 5.5в. Резистор должен быть не больше 5к (иногда рекомендуют меньше - до 1к или даже 680 ом - если линия длинная. У меня метра 3 - работает с 4.7к).

Re: Банальный цифровой термометр.

Ср апр 10, 2013 22:36:53

и еще такой вопросик а реально ли переделать прошивку вот от этого устройстваhttp://rk3ewb.ucoz.com/publ/raznoe/chasy_budilnik_na_mikrokontrollere_pic16f628/5-1-0-40, часики мне очень понравились своей функциональностью и тем что работают от 1,8 вольт ...но злощастный анод все портит у меня есть очень маленькие индикаторы и я бы хотел их применить но они с общим катодом. есть часы в сети с общим катодом но не уверен что они будут работать от таких низких напряжений а для меня это очень важно. и к тому же функциональность мала .только время(((контолеры только осваиваю но когда глянул самоучитель по написанию программ волосы встали дыбом, похоже мне этого никогда не освоить. по край ней мере в одиночку .не могли бы вы поправить эту прошивку?????

Re: Банальный цифровой термометр.

Ср апр 10, 2013 22:41:02

ну тогда все замечательно все всало на свои места ,с резистором понял , датчик у меня находится на расстоянии 2 см от ножки микроконтролера. поэтому похоже и без резистора работает стабильнее , а если удлинять то придется ставить , спасибо за терпение и важные советы. хорошо что есть такие люди как вы, терпеливые ...))))
Ответить