Измеритель всего, что попадется под руку (RLC-метр)
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
и еще по поводу схемы.
у меня все резисторы в RC фильтрах 150 Ом.
С11, С12 вообще выкинул, с ними вроде хуже
а если их нет, то и R4, R5 как-бы ни к селу ни к городу.
у меня все резисторы в RC фильтрах 150 Ом.
С11, С12 вообще выкинул, с ними вроде хуже
а если их нет, то и R4, R5 как-бы ни к селу ни к городу.
ohmycode!
primuss3.com
primuss3.com
-
sergey777.68
- Потрогал лапой паяльник
- Сообщения: 355
- Зарегистрирован: Вс ноя 16, 2008 08:45:46
- Откуда: Вологда
Re: Измеритель всего, что попадется под руку (RLC-метр)
я тут немного исходник поковырял, собрал прошивку что изменилось. 
- Neekeetos
- Держит паяльник хвостом
- Сообщения: 993
- Зарегистрирован: Пн сен 18, 2006 11:16:05
- Откуда: Тула
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
slav0n писал(а):проверь
Надпись на заставке поменяна и нифига не меряет. Вполне по пионерски
Информация по RLC mini находится >тут<
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
странно... а у меня меряет...Neekeetos писал(а):и нифига не меряет
может я не ту прошивку выложил
ты кондеры пробовал удалять?
ohmycode!
primuss3.com
primuss3.com
Re: Измеритель всего, что попадется под руку (RLC-метр)
Ну а после кондеров надо попробовать резисторы поудалять. Ну и дальше по схеме...... Неимоверный простор для творчества. 
Общаюсь на ТЫ. Без расшаркиваний.
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Neekeetos писал(а):в планах наверно вообще все надписи переделать?
хм... с таким подходом нафига же тогда вообще было сорцы выкладывать?
вот правленый мной кусок.
и я думаю его еще можно оптимизировать в лучшую сторону
Код: Выделить всё
GPIOA->BSRR = GPIO_Pin_15; // BACKLIGHT ON
lcd_init();
lcd_clear();
lcd_gotoxy(0,0);lcd_putstr(" RLC ver 6.03 ");
lcd_gotoxy(0,2);lcd_putstr(" Neekeetos ");
lcd_gotoxy(0,3);lcd_putstr(" @yahoo.com ");
lcd_gotoxy(0,4);lcd_putstr(" big thanks to ");
lcd_gotoxy(0,5);lcd_putstr(" TESLight, Link ");
lcd_gotoxy(0,7);lcd_putstr(" play by slav0n");
// while( buttons() != 0 );// wait BUTTON release
/*
if( (cstatus & 0xFFFFFF00) != 0x80000000 )
{
cstatus = 0x80000000;findex = 0;
}
*/
if(findex <0 || findex >= FCNT ) findex = 0;
freq = flist[findex];
fillSine(freq);
measure(&Z,16);
lcd_clear();
lcd_gotoxy(0,1);lcd_putstr("________________");
lcd_gotoxy(0,6);lcd_putstr("----------");
R.Re = SHUNT;
R.Im = 0;
while (1)
{
//----------
btn = buttons();
if( btn & PWR_BTN ) bl_status = !bl_status; //pwr/backligt
if( btn & SP_BTN ) rsrp = ! rsrp; //ser/par
if( btn & REL_BTN ) rel = !rel;
if( btn & SP_BTNL )
{
findex++;
if(findex>= FCNT ) findex = 0;
freq = flist[findex];
fillSine(freq);
rsrp = ! rsrp;
}
if( btn & REL_BTNL )
{
calibrate();
rel =0;
cstatus |= (1<<findex);
}
if( btn & PWR_BTNL )
{
lcd_clear();
lcd_gotoxy(3*6,4);print(" Bye Bye..");
measure(&Z,10);
powerOff();
}
if(bl_status)GPIOA->BSRR = GPIO_Pin_15; // BACKLIGHT ON
else GPIOA->BRR = GPIO_Pin_15; // BACKLIGHT OFF
//----------
lcd_gotoxy(0,0);lcd_putstr(" ");
sputdec(s,freq);
lcd_gotoxy(0,0);lcd_putstr(s);lcd_putstr("k ");
lcd_gotoxy(13*6,0);
if(rsrp)lcd_putstr("PAR");
else lcd_putstr("SER");
lcd_gotoxy(9*6,0);
if(rel) lcd_putstr(">.<");
else lcd_putstr(" ");
lcd_gotoxy(6*5,0);
if(cstatus & (1<<findex)) lcd_putstr("CAL");
else lcd_putstr("---");
//----------
measure(&Z,1);
// zx = zom * (zsm-zxm)/(zxm-zom)
if( (cstatus & (1<<findex)))
{
cplx tmp1,tmp2;
tmp1.Re = Zs[findex].Re - Z.Re;
tmp1.Im = Zs[findex].Im - Z.Im;
tmp2.Re = Zo[findex].Re;
tmp2.Im = Zo[findex].Im;
cplxMul(&tmp2,&tmp1);
tmp1.Re = Z.Re - Zo[findex].Re;
tmp1.Im = Z.Im - Zo[findex].Im;
cplxDiv(&tmp2,&tmp1);
Z.Re = tmp2.Re;
Z.Im = tmp2.Im;
}
Z.Re = filter(0,Z.Re);
Z.Im = filter(1,Z.Im);
if(rel) {
Z.Re -= base.Re;
Z.Im -= base.Im;
}else{
base.Re= Z.Re ;
base.Im = Z.Im;
}
float ls = Z.Im/6.283185307/(freq*1000.0);
float cs = -1/6.283185307/(freq*1000.0)/Z.Im;
float d = Z.Re/Z.Im;
float d2 = d*d;
float q = 1/d;
if(rsrp) //PAR
{
ls = ls*(1+d2);
cs = cs/(1+d2);
Z.Re = Z.Re*(1.0+d2)/d2;
}
round++;
if(round>2)
{
round = 0;
printFloat(12,2,Z.Re,"Ohm");
// lcd_gotoxy(0,2);lcd_putstr(" ");
lcd_gotoxy(0,3);lcd_putstr("R>");
if(Z.Im > 0)
{
printFloat(12,4,ls,"H ");
// lcd_gotoxy(0,4);lcd_putstr(" ");
lcd_gotoxy(0,5);lcd_putstr("L>");
}else{
printFloat(12,4,cs,"F ");
// lcd_gotoxy(0,4);lcd_putstr(" ");
lcd_gotoxy(0,5);lcd_putstr("C>");
}
int qq = 10000*( 1.0+absolute(d)); if(qq >19999) qq = 19999;
sputdec(s,qq);
lcd_gotoxy(0,7);lcd_putstr("D .");lcd_putstr(&s[1]);lcd_putstr(" ");
qq = absolute(q); if(qq >9999) qq = 9999;
sputdec(s,qq);
lcd_gotoxy(8*6,7);lcd_putstr("Q ");lcd_putstr(s);lcd_putstr(" ");
// lcd_gotoxy(0,1);lcd_putstr("________________");
// lcd_gotoxy(0,6);lcd_putstr("----------");
}
}
}ohmycode!
primuss3.com
primuss3.com
- Neekeetos
- Держит паяльник хвостом
- Сообщения: 993
- Зарегистрирован: Пн сен 18, 2006 11:16:05
- Откуда: Тула
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Они там с определенной целью стоят, например верхние частоты перестают нормально работать без них.slav0n писал(а):ты кондеры пробовал удалять?
А какой подход? Я полагаю если человек вместо ответа на вопрос зачем менял начинает мычать невнятно и выкладывать исходники типа для сравнения, то это не дело и по большому счету не стоило ничего менять если результаты не поддаются описанию. Исходники выложены для тех , кто хочет что то улучшить или добавить, например использовать свой дисплей, сделать более удобный интерфейс ну и все в том же духе.slav0n писал(а):хм... с таким подходом нафига же тогда вообще было сорцы выкладывать?
Информация по RLC mini находится >тут<
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
возможно, но кто ими пользуется?Neekeetos писал(а):например верхние частоты перестают нормально работать без них.
именно для сравнения, чтобы без невнятного словоблудияNeekeetos писал(а):вместо ответа на вопрос зачем менял начинает мычать невнятно и выкладывать исходники типа для сравнения
наивноNeekeetos писал(а):Исходники выложены для тех , кто хочет что то улучшить или добавить, например использовать свой дисплей, сделать более удобный интерфейс ну и все в том же духе.
ohmycode!
primuss3.com
primuss3.com
- Neekeetos
- Держит паяльник хвостом
- Сообщения: 993
- Зарегистрирован: Пн сен 18, 2006 11:16:05
- Откуда: Тула
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Я сходу вижу только то что там питание теперь не включается нормально поскольку строка нужная закоменчена, остальные "изменения" как то даже и не интересно глядеть. Зачем говнокодить и потом еще и выкладывать исходник на форум?slav0n писал(а):именно для сравнения, чтобы без невнятного словоблудия
А для чего они еще могут понадобиться? заменить надпись на экране на свое имя? Забор для этого есть.slav0n писал(а):наивно
Информация по RLC mini находится >тут<
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Neekeetos писал(а):питание теперь не включается нормально поскольку строка нужная закоменчена,
странно... вот сижу уже полдня включаю - всё нормально включается... что не так?
ну звиняй, если не угодил.Neekeetos писал(а):остальные "изменения" как то даже и не интересно глядеть.
ohmycode!
primuss3.com
primuss3.com
Re: Измеритель всего, что попадется под руку (RLC-метр)
о, теперь я понимаю почему большинство отказывается давать исходники,
весь мир пользуется, а тут пуп земли нашелся
ждем с нетерпением новых перлов
возможно, но кто ими пользуется?
весь мир пользуется, а тут пуп земли нашелся
и я думаю его еще можно оптимизировать в лучшую сторону
ждем с нетерпением новых перлов
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
я тоже тебя понялozzy писал(а):о, теперь я понимаю почему
ohmycode!
primuss3.com
primuss3.com
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
и ещё я бы рекомендовал исключить лишнюю обработку в главном цикле
примерно таким способом
примерно таким способом
Код: Выделить всё
static int oldbtn =-1;
while (1)
{
btn = buttons();
if(btn == oldbtn)goto M1;
else oldbtn = btn;
if( btn & PWR_BTN ) bl_status = !bl_status; //pwr/backligt
if( btn & SP_BTN ) rsrp = ! rsrp; //ser/par
if( btn & REL_BTN ) rel = !rel;
if( btn & SP_BTNL )
{
*
*
*
M1:
measure(&Z,1);
// zx = zom * (zsm-zxm)/(zxm-zom)
if( (cstatus & (1<<findex)))
{
*
*
*
ohmycode!
primuss3.com
primuss3.com
Re: Измеритель всего, что попадется под руку (RLC-метр)
А исходники 6.03t можно глянуть?
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Neekeetos писал(а):по большому счету не стоило ничего менять если результаты не поддаются описанию.
поддаются.
В результате изменений резко улучшается стабильность показаний.
Вероятно потому что меньше дёргается шина дисплея.
тут ещё обнаружилось что реальные частоты измерения не соответствуют программным
у меня почему-то меряется вот так
1.12
10.1
28.2
55.3
110
Последний раз редактировалось AlekseyEnergo Сб мар 08, 2014 16:35:25, всего редактировалось 1 раз.
Причина: Нарушение пункта 2.2 правил форума. Подредактировал. Предупредил!!
Причина: Нарушение пункта 2.2 правил форума. Подредактировал. Предупредил!!
ohmycode!
primuss3.com
primuss3.com
- Neekeetos
- Держит паяльник хвостом
- Сообщения: 993
- Зарегистрирован: Пн сен 18, 2006 11:16:05
- Откуда: Тула
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Нету их, тестовую прошивку я постоянно меняю, сейчас она вообще без экрана с выводом в компорт сырых данных. Если есть какой то особый интерес именно в этом, напиши в личку. Именно в т версии я переделал прерывание цап и поменял тайминги с тем чтобы он меньше влиял на измерения.Scelikr писал(а):А исходники 6.03t можно глянуть?
На моей прошивке то? Или вновь приобретенный косяк?slav0n писал(а):тут ещё обнаружилось что реальные частоты измерения не соответствуют программным
Информация по RLC mini находится >тут<
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
на твоих всё нормально.Neekeetos писал(а):На моей прошивке то? Или вновь приобретенный косяк?
Может в выложенных сорцах с тактированием ЦАПа что-то не так?
ohmycode!
primuss3.com
primuss3.com
- Neekeetos
- Держит паяльник хвостом
- Сообщения: 993
- Зарегистрирован: Пн сен 18, 2006 11:16:05
- Откуда: Тула
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
Обрадовать не могу, исходники именно те из которых собрана 603. Может проц неверно тактироваться если ты не смог использовать стартап файл из моего архива, либо из за компилятора обработчики прерываний не успевают, там запас небольшой по времени, процентов 30.slav0n писал(а):Может в выложенных сорцах с тактированием ЦАПа что-то не так?
Информация по RLC mini находится >тут<
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: Измеритель всего, что попадется под руку (RLC-метр)
но ведь у меня реальная частота выше а не ниже...Neekeetos писал(а):либо из за компилятора обработчики прерываний не успевают
Ладно, поиграю с регистрами таймера.
после игр, с такой записью частоты попадают
Код: Выделить всё
TIM2->ARR = 71;///63;ohmycode!
primuss3.com
primuss3.com