Пультоскоп на Arduino 27МГц!!!

Jtest
Offline
Зарегистрирован: 02.06.2015

bodriy2014, спасибо! Есть несколько вопросов: Какая максимальная отображаемая частота сигнала на дисплее? Хочу чуть попозже попробовать адаптировать под 3410 или не стоит (будет тормозить с универсальной библиотекой дисплеев)?

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

в упор не вижу как подключать дисплей 5110. может ткнёте в схемку или коментарий?

Добавил на страничку как подключить LCD Nokia 5115

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Jtest пишет:

bodriy2014, спасибо! Есть несколько вопросов: Какая максимальная отображаемая частота сигнала на дисплее? Хочу чуть попозже попробовать адаптировать под 3410 или не стоит (будет тормозить с универсальной библиотекой дисплеев)?

Привет.

Главное в функцию Zamer() ничего не вставляйте. Тогда любой дисплей не повлияет на скорость и правильность замера. Без проблем адаптируется.

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

bodriy2014 пишет:

karl2233 пишет:

в упор не вижу как подключать дисплей 5110. может ткнёте в схемку или коментарий?

Добавил на страничку как подключить LCD Nokia 5115

спасибо!

Evg-Chugunov
Evg-Chugunov аватар
Offline
Зарегистрирован: 22.08.2015

А если есть кварц 26,675 МГц или 27,14. Какие коэффициенты менять? И второй вопрос: где выпаять ровно на 27 МГц?

revlerik
Offline
Зарегистрирован: 26.12.2015

Evg-Chugunov пишет:

И второй вопрос: где выпаять ровно на 27 МГц?

С не рабочей материнкской платы ПК.

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

revlerik пишет:

Evg-Chugunov пишет:

И второй вопрос: где выпаять ровно на 27 МГц?

С не рабочей материнкской платы ПК.

а вдруг она именно из-за этого загнулась?

так что лучше с рабочей выпаивать.

по сабжу: есть неудобство - постоянное выключение питания для вы,бора "пультоскоп" или "генератор".

думаю что если добавить кнопочку "вкл-выкл"(ну или как-то меню в скетче подправить) будет гораздо прикольнее . а управление питанием сделать как в ТТ Маркуса(полевик+бипрлярный)+ повышалка на 34063 вот и отдельный полезный приборчик с питанием от лития.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Evg-Chugunov пишет:

А если есть кварц 26,675 МГц или 27,14. Какие коэффициенты менять? И второй вопрос: где выпаять ровно на 27 МГц?


Любой ставьте и пишите 27 погрешности большой не будет.
Всегда нужно округлять до МГц только они в скетче учтены.
Я выпаял кварц с китайской радио мышки и кнопки оттуда очень классные оказались.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

revlerik пишет:

Evg-Chugunov пишет:

И второй вопрос: где выпаять ровно на 27 МГц?

С не рабочей материнкской платы ПК.

а вдруг она именно из-за этого загнулась?

так что лучше с рабочей выпаивать.

по сабжу: есть неудобство - постоянное выключение питания для вы,бора "пультоскоп" или "генератор".

думаю что если добавить кнопочку "вкл-выкл"(ну или как-то меню в скетче подправить) будет гораздо прикольнее . а управление питанием сделать как в ТТ Маркуса(полевик+бипрлярный)+ повышалка на 34063 вот и отдельный полезный приборчик с питанием от лития.


Вот потому и коментирую скетч и все максимально обьясняю чтоб каждый кому интнресно мог не только повторить,но и изменить все под себя.

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

так-с, развёл платку (у мну нет Ардуины, но есть 328Р), размер - 43мм х 45 мм, разместил там 4056, 34063. теперь думаю как сделать кнопку(в смысле добавить в скетч)  что б короткое нажатие включало на порту PC5 лог "1" при коротком нажатии, а при длинном (2-3 сек) лог "0". вот и будет кнопочка включения-выключения.

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

так-с, развёл платку (у мну нет Ардуины, но есть 328Р), размер - 43мм х 45 мм, разместил там 4056, 34063. теперь думаю как сделать кнопку(в смысле добавить в скетч)  что б короткое нажатие включало на порту PC5 лог "1" при коротком нажатии, а при длинном (2-3 сек) лог "0". вот и будет кнопочка включения-выключения.

Может поставите механический включатель питания? и если не удобно его дергать чтоб переключится между режимаи генератора и пультоскопа-просто выведете тактовую кнопку ресет, нажали и все сбросилось, поработали выключили питание.

Если сильно хотите через полевик делать напишу код.

revlerik
Offline
Зарегистрирован: 26.12.2015

Вот,вставил своих маленьких 5 копеек:

Люблю что бы все на родном языке.

За качество фото извиняйте :)

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

revlerik С русским шрифтом хорошо смотрится!
А фотки то что нужно, у нас же не фото форум)))

revlerik
Offline
Зарегистрирован: 26.12.2015

bodriy2014 пишет:
revlerik С русским шрифтом хорошо смотрится!

И мне нравится )))

Спасибо за приборчик!

revlerik
Offline
Зарегистрирован: 26.12.2015

Вот немного изменил вид генератора:

Правда не знаю как символ "Гц" ниже поставить.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

revlerik пишет:

Вот немного изменил вид генератора:

Правда не знаю как символ "Гц" ниже поставить.

Кстати да, я затупил. Место  есть почему не вывел на экран значение шим. Буду добавлять синхронизацию изменю .Спасибо.

Нсчет Гц попробуйте указать начало конкретно display.setCursor(40,30);

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

кому надо - печатка. кнопки SMD с противоположной стороны платы. батарею поставить между индикатором и платой.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

кому надо - печатка. кнопки SMD с противоположной стороны платы. батарею поставить между индикатором и платой.

Отлично!!!, а можете печатку и схему выложить.

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

не вопрос! только на форуме не получается выложить в *.lay6.

что до схемы - как таковой её нет.

Пультоскопа схему брал тут,

повышалка34063 - типовое включение(надо только подобрать делитель с 5 ноги - от него напряжение на выходе зависит),

включение ТР4056 - тож типовое. 

ну и на самой печатке все элементы промаркированы, так что схема какбэ и не нужна совсем.

з.ы. выслал печатку на почту, зеркалить не нужно - просто печатать и утюгом её, утюгом. моя щас травится, так что к вечеру запультоскопю тут всё :)

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

не вопрос! только на форуме не получается выложить в *.lay6.

что до схемы - как таковой её нет.

Пультоскопа схему брал тут,

повышалка34063 - типовое включение(надо только подобрать делитель с 5 ноги - от него напряжение на выходе зависит),

включение ТР4056 - тож типовое. 

ну и на самой печатке все элементы промаркированы, так что схема какбэ и не нужна совсем.

з.ы. выслал печатку на почту, зеркалить не нужно - просто печатать и утюгом её, утюгом. моя щас травится, так что к вечеру запультоскопю тут всё :)

Спасибо на почту получил, будут вопросы напишу.

cilentlekx
Offline
Зарегистрирован: 14.12.2014

bodriy2014,Здравствуйте! А можно код посмотреть где генератор с изображением графика выдаваемого сигнала? вроде на видео было что то у вас,или я ошибаюсь. За ранее спасибо! И жду конечно от вас код осцилографа TFT с синхронизацией графика

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

cilentlekx пишет:

bodriy2014,Здравствуйте! А можно код посмотреть где генератор с изображением графика выдаваемого сигнала? вроде на видео было что то у вас,или я ошибаюсь. За ранее спасибо! И жду конечно от вас код осцилографа TFT с синхронизацией графика

Привет.

Так есть же мое видео по нему, и в описании адрес проекта.

Да и страничку на форуме я создал.

Если я вопрос понял.

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

вот как бы генератор и пультоскоп в один скетч впихнуть? :)

было б прикольно и полезно.

cilentlekx
Offline
Зарегистрирован: 14.12.2014

bodriy2014 пишет:

cilentlekx пишет:

bodriy2014,Здравствуйте! А можно код посмотреть где генератор с изображением графика выдаваемого сигнала? вроде на видео было что то у вас,или я ошибаюсь. За ранее спасибо! И жду конечно от вас код осцилографа TFT с синхронизацией графика

Привет.

Так есть же мое видео по нему, и в описании адрес проекта.

Да и страничку на форуме я создал.

Если я вопрос понял.

все нашел,Спасибо!

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

cilentlekx пишет:

там же увас генератор и пультоско то есть два в одном. я имел в виду генератор а на графике чтобы показывал форму выдаваемого сигнала

Нет там просто генератор сигналов, а на экране он показывает то что выдает сам.

вот страничка проэкта там схема и скетч

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

если чё, на моей плате не запустилось :(  загрузчик зашился нормально, скетч залился(что через загрузчик, что через ИДЕ).

индикатор молчид как партизан на допросе.

сижу, разбираюсь. но на Ардуино УНО запустилось нормально.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

если чё, на моей плате не запустилось :(  загрузчик зашился нормально, скетч залился(что через загрузчик, что через ИДЕ).

индикатор молчид как партизан на допросе.

сижу, разбираюсь. но на Ардуино УНО запустилось нормально.

Привет. Печатку не проверял, просто так не может не работать, есть причина и нужно ее найти!)

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

да печатка правильная, я блинк загрузил и все задействованные порты проверил.

причина есть, ищу :)

Gres
Gres аватар
Offline
Зарегистрирован: 26.03.2013

karl2233 пишет:

да печатка правильная, я блинк загрузил и все задействованные порты проверил.

причина есть, ищу :)

Ресет у Вас подтянут к плюсу?

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

да, подтянут (на плате резистор рядом с кнопкой ресет).

причина была в возбуждении стабилизатора на 3,3 Вольта. поставил на выходе керамику какую-то, и всё заработало с кварцем 27МГц.

 

вопрос - как бы чуть разнести вот в этой строке?а

а то сливается всё в абракадабру :)  и ещё - как понимаю, сделать на русском достаточно в скетче написать, верно?

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

да, подтянут (на плате резистор рядом с кнопкой ресет).

причина была в возбуждении стабилизатора на 3,3 Вольта. поставил на выходе керамику какую-то, и всё заработало с кварцем 27МГц.

 

вопрос - как бы чуть разнести вот в этой строке?а

а то сливается всё в абракадабру :)  и ещё - как понимаю, сделать на русском достаточно в скетче написать, верно?

Привет.

разнес, но большое значение частоты не влезет справа.

//
//Страница проэкта  http://srukami.inf.ua/pultoscop_v25110.html
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
#include <FreqCount.h> 
#include <PWM.h>
#define led  9   //пин для генератора сигналов (не менять)
//#################№№№№№№####пользовательские настройки
#define levo 10  //кнопка ЛЕВО(можно любой пин)
#define ok 11    //кнопка ОК(можно любой пин)
#define pravo 12 //кнопка ПРАВО(можно любой пин)
#define akb A6 //любой своюодный аналоговый пин для измерения напряжения АКБ 
#define overclock 16  //Частота на которой работает Ардуино
Adafruit_PCD8544 display = Adafruit_PCD8544(2, 3, 4, 6, 7);//пины к которым у вас подключен дисплей          
byte cont=75;//контрастность дисплея
int PWM = 100;//стартовое значение ШИМ от 0 до 255        
int32_t frequency = 6000; //стартовое значение частоты в Гц
//###########################################################
byte hag=0;
int mnog=0;
boolean flag=0;
byte mass[256];
byte x=0; 
byte menu=0;//переменная выбора меню 
bool opornoe=1; //флаг опорного напряжения
bool paus=0; //флаг режима паузы
bool pultoskop=1; //флаг выбора генератора или осциллографа
byte razv=6;  
unsigned long count =0;  
void setup(){
display.begin();
display.setContrast(cont);  
while(digitalRead(ok)==LOW){  
  if(pultoskop==1){
    display.clearDisplay();
    display.setCursor(5,10);
    display.setTextColor(WHITE, BLACK); // 'inverted' text
    display.println(">>PULTOSKOP<<");
    display.setCursor(15,20);
    display.setTextColor(BLACK); 
    display.println("GENERATOR");
    display.setCursor(5,30);
    display.print("BATT=");
    display.print(analogRead(akb)*5.0/1024);
    display.println(" V");
  }
    if(pultoskop==0){
    display.clearDisplay();
    display.setCursor(15,10);
    display.setTextColor(BLACK); // 'inverted' text
    display.println("PULTOSKOP");
    display.setCursor(5,20);
    display.setTextColor(WHITE, BLACK); // 'inverted' text
    display.println(">>GENERATOR<<");
    display.setCursor(5,30);
    display.setTextColor(BLACK); 
    display.print("BATT=");
    display.print(analogRead(akb)*5.0/1024);
    display.println(" V");
  }
display.display();
if(digitalRead(levo)==HIGH){delay(200);pultoskop=!pultoskop;}
if(digitalRead(pravo)==HIGH){delay(200);pultoskop=!pultoskop;}  
}  
if(pultoskop==1){
    FreqCount.begin(1000);   
}
if(pultoskop==0){
   InitTimersSafe(); 
   bool success = SetPinFrequencySafe(led, frequency); 
}
display.setTextColor(BLACK);
delay(500); 
    }   
void Zamer(){
  if (razv>=6){ADCSRA = 0b11100010;}//delitel 4
  if (razv==5){ADCSRA = 0b11100011;}//delitel 8
  if (razv==4){ADCSRA = 0b11100100;}//delitel 16
  if (razv==3){ADCSRA = 0b11100101;}//delitel 32
  if (razv==2){ADCSRA = 0b11100110;}//delitel 64
  if (razv<2){ADCSRA = 0b11100111;}//delitel 128
  if (razv==0){
      for(byte i=0;i<255;i++){ 
          while ((ADCSRA & 0x10)==0);
          ADCSRA|=0x10;
          delayMicroseconds(500);
          mass[i]=ADCH;
      }
  }
  if (razv>0){
      for(byte i=0;i<255;i++){ 
          while ((ADCSRA & 0x10)==0);
          ADCSRA|=0x10;
          mass[i]=ADCH;
      }
  }
  
}
void loop() {
if(pultoskop==1){  
if(opornoe==0){ADMUX = 0b11100100;}//выбор внутреннего опорного 1,1В
if(opornoe==1){ADMUX = 0b01100100;}//Выбор внешнего опорного
delay(5);
if(paus==0){Zamer();}
//#######################################отрисовка графика
      display.clearDisplay();
      x=3;
      for(int y=1;y<80;y++){
        if(razv<7){x++;}
        if(razv==7){x=x+2;}
        if(razv==8){x=x+3;}
        display.drawLine(x, 47-mass[y]/7, x+1, 47-mass[y+1]/7, BLACK);      
      }
//#######################################отрисовка графика
for(int i=47;i>5;i=i-7){display.drawPixel(0,i, BLACK);display.drawPixel(1,i, BLACK);display.drawPixel(2,i, BLACK);}//разметка экрана  вертикальная
//#######################################отрисовка menu
if(menu==0){
    display.setCursor(0,0);
    display.setTextColor(WHITE, BLACK); // 'inverted' text
    if(opornoe==0){display.print("0.2");}
    if(opornoe==1){display.print("1.0");}
    display.setTextColor(BLACK); 
    //display.print(" ");
    display.print(razv);
    display.print(" P ");
    if(digitalRead(levo)==HIGH){opornoe=!opornoe;}
    if(digitalRead(pravo)==HIGH){opornoe=!opornoe;}    
}
if(menu==1){
    display.setCursor(0,0);
    display.setTextColor( BLACK);
    if(opornoe==0){display.print("0.2");}
    if(opornoe==1){display.print("1.0");}
    display.setTextColor(WHITE, BLACK); // 'inverted' text 
    //display.print(" ");
    display.print(razv);
    display.setTextColor( BLACK); // 'inverted' text
    display.print(" P ");
    if(digitalRead(levo)==HIGH){razv=razv-1;if(razv==255){razv=0;}}
    if(digitalRead(pravo)==HIGH){razv=razv+1;if(razv==9){razv=8;}}
}
if(menu==2){
    display.setCursor(0,0);
    display.setTextColor( BLACK);
    if(opornoe==0){display.print("0.2");}
    if(opornoe==1){display.print("1.0");}
    //display.print(" ");
    display.print(razv);
    display.setTextColor(WHITE, BLACK); // 'inverted' text 
    display.print(" P ");
    paus=1;
    if(digitalRead(levo)==HIGH){Zamer();}
    if(digitalRead(pravo)==HIGH){Zamer();}    
}

if(digitalRead(ok)==HIGH){menu++;if(menu==3){menu=0;paus=0;}}//перебор меню
if (FreqCount.available()) { count = FreqCount.read();}//вывод частоты по готовности счетчика
display.setTextColor( BLACK);
long countX=count*(overclock/16.0);
display.print(countX);
display.print("Hz");

//#######################################отрисовка menu

delay(300);  
display.display();
}
if(pultoskop==0){Generator();}
}
//#######################################режим ренератора
void Generator(){
display.clearDisplay();  
if (flag==0){//флаг выборов режима настройки ШИМ или Частоты
            if(digitalRead(levo)==HIGH){
              frequency=frequency-mnog;
              if(frequency<0){frequency=0;}
              bool success = SetPinFrequencySafe(led, frequency);
              delay(3);//защита от дребезга 
            }
            if(digitalRead(pravo)==HIGH){
              frequency=frequency+mnog;
              bool success = SetPinFrequencySafe(led, frequency);
              delay(3);//защита от дребезга 
            }  
}
if (flag==1){//флаг выборов режима настройки ШИМ или Частоты
            if(digitalRead(levo)==HIGH){
              PWM=PWM-10;
              if(PWM<0){PWM=255;} 
              delay(3);//защита от дребезга
            
            }
            if(digitalRead(pravo)==HIGH){
              PWM=PWM+10;
              if(PWM>255){PWM=0;} 
              delay(3);//защита от дребезга 
            }  
}      
if(digitalRead(ok)==HIGH){//переключение разряда выбора частоты 
  delay(3);//защита от дребезга
  hag++;
  if(hag>=5){hag=0;}
}     
display.setCursor(0,40);
long frequencyX=frequency*(overclock/16.0);
display.print(frequencyX); 
display.print("Hz");
display.print("*");    
      if(hag==0){//выбор множителя частоты
        
          display.print(1*(overclock/16.0)); 
          mnog=1;
          flag=0;
      }
      if(hag==1){//выбор множителя частоты
          display.print(10*(overclock/16.0)); 
          mnog=10;
      }
      if(hag==2){//выбор множителя частоты
          display.print(100*(overclock/16.0)); 
          mnog=100;
      }
      if(hag==3){//выбор множителя частоты
          display.print(1000*(overclock/16.0)); 
          mnog=1000;
      } 
      if(hag==4){//выбор  PWM
          display.print("PWM");
          display.print(PWM); 
          flag=1;
      } 
pwmWrite(led, PWM);
delay(300);  
display.display();
}


 

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

bodriy2014<span style="font-size:12px;line-height:1.5em;"> пишет:

разнес, но большое значение частоты не влезет справа.

спасибо!

а "большое"(наибольшее измеряемое?) это сколько?

мож тогда оставить как есть?

и про русский - поменял в скетче, получилась фигня полная :)))

кстати, при кварце 27МГц прошивается только через программатор, так и должно быть? это не напрягает, но хотелось бы понимать.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

karl2233 пишет:

bodriy2014<span style="font-size:12px;line-height:1.5em;"> пишет:

разнес, но большое значение частоты не влезет справа.

спасибо!

а "большое"(наибольшее измеряемое?) это сколько?

мож тогда оставить как есть?

и про русский - поменял в скетче, получилась фигня полная :)))

кстати, при кварце 27МГц прошивается только через программатор, так и должно быть? это не напрягает, но хотелось бы понимать.

--мерять он будет до 2 000 000Гц сколько влезет символов столько и покажет остальное на следующую строчку перенесет, поэтому я их в кучу и слепил.

--По русски нужна другая библиотека гуглите все есть, если так важно прикручивайте.

--я же в ролике показывал прошиваем с кварцем 16МГц родным но в прошивке указываем 27МГц, потом припаиваем на 27.

 

revlerik
Offline
Зарегистрирован: 26.12.2015

karl2233 пишет:

и про русский - поменял в скетче, получилась фигня полная :)))

Давай адрес мыла,скину скетч с библиотеками.

Evg-Chugunov
Evg-Chugunov аватар
Offline
Зарегистрирован: 22.08.2015

bodriy2014 пишет:

--мерять он будет до 2 000 000Гц сколько влезет символов столько и покажет остальное на следующую строчку перенесет, поэтому я их в кучу и слепил.

--я же в ролике показывал прошиваем с кварцем 16МГц родным но в прошивке указываем 27МГц, потом припаиваем на 27.

А с какой точностью он измеряет? Может быть писать в кГц и МГц, если он округляет?

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Evg-Chugunov пишет:

А с какой точностью он измеряет? Может быть писать в кГц и МГц, если он округляет?

Шаг 1Гц.

Можно писать КГц и МГц . 1100Гц=1,1КГц

karl2233
karl2233 аватар
Offline
Зарегистрирован: 05.07.2015

revlerik пишет:

karl2233 пишет:

и про русский - поменял в скетче, получилась фигня полная :)))

Давай адрес мыла,скину скетч с библиотеками.

Спасибо!

revlerik
Offline
Зарегистрирован: 26.12.2015

karl2233 отправил на почту ;)

cilentlekx
Offline
Зарегистрирован: 14.12.2014

bodriy2014  ! Здравствуйте! Хотел спрсить,есть ли какие нибудь подвижки с синхронизацией графика? Имею в виду мерцание экрана.За ранее спасибо!

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

cilentlekx Привет. Пользуюсь тем что есть, сейчас занят сборкой маленького ЧПУ на Ардуино и помелочи. Все новенькое вуложу сразу.

Jtest
Offline
Зарегистрирован: 02.06.2015

bodriy2014, Привет! Как всегда, рад, что не стоишь на месте! Первый ЧПУ собирал на советской логике еще лет 5 назад для теста. Жесткость конструкции была мизерной, ее хватало на рисование плат маркером. Размер стола был с лист А3. После затеялся сделать нормальный ЧПУ 1.5х2 метра. Уже станину сварил, фрезер купил KRESS... Жизнь закрутила так, что все лежит не закончено более 3х лет. Интересно посмотреть будет на твой экземпляр. Может чего полезного подчеркну, вдохнавлюсь и доделаю свой.))

Igor_kip
Offline
Зарегистрирован: 03.01.2016

Добрый всем вечер.

Обращаюсь за советом к bodriy2014 , как автору ПУЛЬТОСКОПА 27Мгц , ну и может кто сталкивался.

При поданом на вход низком уровне и опорн. 1,1в  , при развёртке от 0 до 5 всё нормально , а от 6 до 10 осцилограмма подымается до максимума и ни на что не реагирует. Ардуинку взял другую , без изменений (pro mini 328). При опорном 5,3 норма.

Подскажите куда рыть?

Спасибо.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Igor_kip пишет:

Добрый всем вечер.

Обращаюсь за советом к bodriy2014 , как автору ПУЛЬТОСКОПА 27Мгц , ну и может кто сталкивался.

При поданом на вход низком уровне и опорн. 1,1в  , при развёртке от 0 до 5 всё нормально , а от 6 до 10 осцилограмма подымается до максимума и ни на что не реагирует. Ардуинку взял другую , без изменений (pro mini 328). При опорном 5,3 норма.

Подскажите куда рыть?

Спасибо.


Привет.
Ни куда не рыть. Внутреннему источнику опорного напряжения нужно некоторое время для формирования и на самых высоких скоростях АЦП он не успевает. Я вешал на ногу AREF конденсатор но это помогает не всегда. координально исправляется только внешним опорным.

Igor_kip
Offline
Зарегистрирован: 03.01.2016

Может не только из вн. источника?

При опорном 5,3в и поданом на вход 5в (у меня через делитель 1/5)  опять при развёртке от 0 до 5 показания Vmax=0,83 , а при развёртке с 6 до 10  Vmax=0,97 . Изменени происходит именно при переходе развёртки через 6. Извиняюсь , если надоедаю , я начинающий ардуинщик , но в электронике немного разбираюсь , может и смогу внести посильную и т.д и т.п. Проект-то нужный.

 

 

 

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Igor_kip пишет:

Может не только из вн. источника?

При опорном 5,3в и поданом на вход 5в (у меня через делитель 1/5)  опять при развёртке от 0 до 5 показания Vmax=0,83 , а при развёртке с 6 до 10  Vmax=0,97 . Изменени происходит именно при переходе развёртки через 6. Извиняюсь , если надоедаю , я начинающий ардуинщик , но в электронике немного разбираюсь , может и смогу внести посильную и т.д и т.п. Проект-то нужный.

 

 

 


Все нормально. для того и форум чтоб и критику услышать и идеи.
По Vmax. Если я правильно понял после делителя у вас должно быть 1Вольт а он показывает то 0.83 то 0.97 ?
Вы мерили свое опорное которым запитываете ардуино, это у меня 5.3В у вас может быть другое если да то нужно его значение изменить в скетче, оно используется в расчетах Vmax.
Измерьте и если отличается измените в скетче, посмотрим на погрешность после этого.

Igor_kip
Offline
Зарегистрирован: 03.01.2016

Да , у меня опорное 5,17 , но я имел ввиду не конкретное значение , а его изменение при переходе через 6пункт развертки: 0-0,83  ,  1-0,83  ,  2-0,83 ,  3-0,83 ,  4-0,83 , 5-0,83 ,    6-0,97 ,  7-0,97  ....... 10-0,97

почему проиходит этот скачек?    Это не критика , а желание понять .

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Igor_kip пишет:

Да , у меня опорное 5,17 , но я имел ввиду не конкретное значение , а его изменение при переходе через 6пункт развертки: 0-0,83  ,  1-0,83  ,  2-0,83 ,  3-0,83 ,  4-0,83 , 5-0,83 ,    6-0,97 ,  7-0,97  ....... 10-0,97

почему проиходит этот скачек?    Это не критика , а желание понять .


я понял, буду за компом проверю мочему значения после 6 шага меняются.

Igor_kip
Offline
Зарегистрирован: 03.01.2016

Спасибо , жду с нетерпением.

bodriy2014
bodriy2014 аватар
Offline
Зарегистрирован: 12.05.2015

Igor_kip пишет:

Да , у меня опорное 5,17 , но я имел ввиду не конкретное значение , а его изменение при переходе через 6пункт развертки: 0-0,83  ,  1-0,83  ,  2-0,83 ,  3-0,83 ,  4-0,83 , 5-0,83 ,    6-0,97 ,  7-0,97  ....... 10-0,97

почему проиходит этот скачек?    Это не критика , а желание понять .

Смоделировал у себя вашу ситуацию

опорное 1,1В развертка 5 напряжение 0,91В

опорное 1,1В развертка 7 напряжение 0,91В

опорное 5,3В развертка 5 напряжение 0,91В

опорное 5,3В развертка 7 напряжение 0,91В

Фото прилагаю, у меня баг не обнаружился, да прыгают немного показания но явного скачка после шести не зафиксировал. Попробуйте електролит припаять по питанию если знаете как, то лучше на вывод AREF и на питание аналоговых портов.

 

Igor_kip
Offline
Зарегистрирован: 03.01.2016

Спасибо , у Вас красиво.Попробую конденсаторы. По питаню у меня навешаны , а на AREF нет.