| Ваш IP: 3.236.96.157 | Online(44) - гости: 30, боты: 13 | Загрузка сервера: 1.49 ::::::::::::

Простой осциллограф на Arduino Nano (Uno) + TLC5540 + TFT-дисплей SPI 320×240

Ранее на странице https://rcl-radio.ru/?p=63088 рассматривался пример создания осциллографа с использованием быстродействующего АЦП TLC5540 с выводом информации на LCD дисплей 84×48 Nokia 5110. На этой странице показан пример аналогичного осциллографа, но с использованием TFT-дисплея SPI 320×240 на контроллере ILI9341C.

TLC5540 — представляет собой быстродействующий 8 битный АЦП, который осуществляет преобразование с производительностью до 40 MSPS. Тактовые импульсы для АЦП поступают с 9 цифрового выхода Arduino. Частота тактовых импульсов 8 МГц. Полоса пропускания осциллографа до 500 кГц, при частоте входного сигнала выше 500 кГц форма сигнала сильно искажается, поэтому на последнем пределе развертки 0,002 мкс применена программная обработка данных АЦП, которая позволяет отображать на экране логический уровень входного сигнала (любая форма сигнала преобразуется в импульсы).

Максимальное напряжение (только положительное) АЦП TLC5540 2.28 В (перегруз до напряжения питания), поэтому на входе АЦП необходим делитель напряжения. Показанный на схеме делитель напряжения позволяет осциллографу работать с сигналом уровня TTL. Порт PORTC Aduino имеет контакты А0…А5, хотя АЦП TLC5540 8 бит, можно использовать только 6 бит порта Arduino, поэтому два младших бита АЦП TLC5540 не используются. В итоге в процессе преобразования аналогового напряжения в цифровое значение можно получить числа от 0 до 63.

Управление осциллографом очень простое, кнопками «+» и «-» можно менять период развертки, а кнопка «HOLD» «замораживает» изображение, в режиме «HOLD» кнопками «+» и «-» можно двигать по горизонтали изображение осциллограммы (два полных экрана).

Библиотека — UTFT (1).zip

#include <UTFT.h>
#include <EEPROM.h>
UTFT myGLCD(DMTFT28105, 8, 7, 12, 11, 10); // SDI (MOSI), SCK, CS, RESET, DC
extern uint8_t SmallFont[];
 
  int i,x,y,raz,hold,hh,sek,fff;
  unsigned long time;
  float times;
  int h0,h1,w=1,w2=1;
  byte data[640],data_old[640],arr_max=0,arr_min=255,arr_sum,arr;
 
void setup(){
  myGLCD.InitLCD(1);myGLCD.clrScr();myGLCD.setFont(SmallFont);
    pinMode(4,INPUT); ///  +++
    pinMode(3,INPUT); ///  ---
    pinMode(2,INPUT); /// hold
    pinMode(9, OUTPUT);
    raz = EEPROM.read(0);
    TCCR1A = 0x40;TCCR1B = 0x09;OCR1A = 0;
}
void loop(){
     if(digitalRead(2)==HIGH){hold++;hh=0;w2=0;if(hold>1){hold=0;}delay(200);}
   if(digitalRead(4)==HIGH&&hold==1){hh=hh+5;if(hh>320){hh=320;}delay(200);}
   if(digitalRead(3)==HIGH&&hold==1){hh=hh-5;if(hh<0){hh=0;}delay(200);}
   if(digitalRead(4)==HIGH&&hold==0){raz++;myGLCD.setColor(0,0,0);
  myGLCD.fillRect(0,34,320,230);hh=0;w=1;if(raz>13){raz=13;}delay(200);}
   if(digitalRead(3)==HIGH&&hold==0){raz--;myGLCD.setColor(0,0,0);
  myGLCD.fillRect(0,34,320,230);hh=0;w=1;if(raz<0){raz=0;}delay(200);}
 
 ////////////////////// ИЗМЕРЕНИЕ /////////////////////////////////////////////////////////////////////////////////////////////
    if(hold==0){ 
       if(times>0.05){i=0;sinn();while(i<640){data[i]=PINC;delayMicroseconds(sek);i++;};i=0;}
       if(times==0.05){i=0;sinn();while(i<640){data[i]=PINC;i++;}i=0;}
       if(times<=0.02){sinn();  
  data[0]=PINC;data[1]=PINC;data[2]=PINC;data[3]=PINC;data[4]=PINC;
  data[5]=PINC;data[6]=PINC;data[7]=PINC;data[8]=PINC;data[9]=PINC;
  data[10]=PINC;data[11]=PINC;data[12]=PINC;data[13]=PINC;data[14]=PINC;
  data[15]=PINC;data[16]=PINC;data[17]=PINC;data[18]=PINC;data[19]=PINC;
  data[20]=PINC;data[21]=PINC;data[22]=PINC;data[23]=PINC;data[24]=PINC;
  data[25]=PINC;data[26]=PINC;data[27]=PINC;data[28]=PINC;data[29]=PINC;
  data[30]=PINC;data[31]=PINC;data[32]=PINC;data[33]=PINC;data[34]=PINC;
  data[35]=PINC;data[36]=PINC;data[37]=PINC;data[38]=PINC;data[39]=PINC;
  data[40]=PINC;data[41]=PINC;data[42]=PINC;data[43]=PINC;data[44]=PINC;
  data[45]=PINC;data[46]=PINC;data[47]=PINC;data[48]=PINC;data[49]=PINC;
  data[50]=PINC;data[51]=PINC;data[52]=PINC;data[53]=PINC;data[54]=PINC;
  data[55]=PINC;data[56]=PINC;data[57]=PINC;data[58]=PINC;data[59]=PINC;
  data[60]=PINC;data[61]=PINC;data[62]=PINC;data[63]=PINC;data[64]=PINC;
  data[65]=PINC;data[66]=PINC;data[67]=PINC;data[68]=PINC;data[69]=PINC;
  data[70]=PINC;data[71]=PINC;data[72]=PINC;data[73]=PINC;data[74]=PINC;
  data[75]=PINC;data[76]=PINC;data[77]=PINC;data[78]=PINC;data[79]=PINC;
  data[80]=PINC;data[81]=PINC;data[82]=PINC;data[83]=PINC;data[84]=PINC;
  data[85]=PINC;data[86]=PINC;data[87]=PINC;data[88]=PINC;data[89]=PINC;
  data[90]=PINC;data[91]=PINC;data[92]=PINC;data[93]=PINC;data[94]=PINC;
  data[95]=PINC;data[96]=PINC;data[97]=PINC;data[98]=PINC;data[99]=PINC;
  data[100]=PINC;data[101]=PINC;data[102]=PINC;data[103]=PINC;data[104]=PINC;
  data[105]=PINC;data[106]=PINC;data[107]=PINC;data[108]=PINC;data[109]=PINC;
  data[110]=PINC;data[111]=PINC;data[112]=PINC;data[113]=PINC;data[114]=PINC;
  data[115]=PINC;data[116]=PINC;data[117]=PINC;data[118]=PINC;data[119]=PINC;
  data[120]=PINC;data[121]=PINC;data[122]=PINC;data[123]=PINC;data[124]=PINC;
  data[125]=PINC;data[126]=PINC;data[127]=PINC;data[128]=PINC;data[129]=PINC;
  data[130]=PINC;data[131]=PINC;data[132]=PINC;data[133]=PINC;data[134]=PINC;
  data[135]=PINC;data[136]=PINC;data[137]=PINC;data[138]=PINC;data[139]=PINC;
  data[140]=PINC;data[141]=PINC;data[142]=PINC;data[143]=PINC;data[144]=PINC;
  data[145]=PINC;data[146]=PINC;data[147]=PINC;data[148]=PINC;data[149]=PINC;
  data[150]=PINC;data[151]=PINC;data[152]=PINC;data[153]=PINC;data[154]=PINC;
  data[155]=PINC;data[156]=PINC;data[157]=PINC;data[158]=PINC;data[159]=PINC;
  data[160]=PINC;data[161]=PINC;data[162]=PINC;data[163]=PINC;data[164]=PINC;
  data[165]=PINC;data[166]=PINC;data[167]=PINC;data[168]=PINC;data[169]=PINC;
  data[170]=PINC;data[171]=PINC;data[172]=PINC;data[173]=PINC;data[174]=PINC;
  data[175]=PINC;data[176]=PINC;data[177]=PINC;data[178]=PINC;data[179]=PINC;
  data[180]=PINC;data[181]=PINC;data[182]=PINC;data[183]=PINC;data[184]=PINC;
  data[185]=PINC;data[186]=PINC;data[187]=PINC;data[188]=PINC;data[189]=PINC;
  data[190]=PINC;data[191]=PINC;data[192]=PINC;data[193]=PINC;data[194]=PINC;
  data[195]=PINC;data[196]=PINC;data[197]=PINC;data[198]=PINC;data[199]=PINC;
  data[200]=PINC;data[201]=PINC;data[202]=PINC;data[203]=PINC;data[204]=PINC;
  data[205]=PINC;data[206]=PINC;data[207]=PINC;data[208]=PINC;data[209]=PINC;
  data[210]=PINC;data[211]=PINC;data[212]=PINC;data[213]=PINC;data[214]=PINC;
  data[215]=PINC;data[216]=PINC;data[217]=PINC;data[218]=PINC;data[219]=PINC;
  data[220]=PINC;data[221]=PINC;data[222]=PINC;data[223]=PINC;data[224]=PINC;
  data[225]=PINC;data[226]=PINC;data[227]=PINC;data[228]=PINC;data[229]=PINC;
  data[230]=PINC;data[231]=PINC;data[232]=PINC;data[233]=PINC;data[234]=PINC;
  data[235]=PINC;data[236]=PINC;data[237]=PINC;data[238]=PINC;data[239]=PINC;
  data[240]=PINC;data[241]=PINC;data[242]=PINC;data[243]=PINC;data[244]=PINC;
  data[245]=PINC;data[246]=PINC;data[247]=PINC;data[248]=PINC;data[249]=PINC;
  data[250]=PINC;data[251]=PINC;data[252]=PINC;data[253]=PINC;data[254]=PINC;
  data[255]=PINC;data[256]=PINC;data[257]=PINC;data[258]=PINC;data[259]=PINC;
  data[260]=PINC;data[261]=PINC;data[262]=PINC;data[263]=PINC;data[264]=PINC;
  data[265]=PINC;data[266]=PINC;data[267]=PINC;data[268]=PINC;data[269]=PINC;
  data[270]=PINC;data[271]=PINC;data[272]=PINC;data[273]=PINC;data[274]=PINC;
  data[275]=PINC;data[276]=PINC;data[277]=PINC;data[278]=PINC;data[279]=PINC;
  data[280]=PINC;data[281]=PINC;data[282]=PINC;data[283]=PINC;data[284]=PINC;
  data[285]=PINC;data[286]=PINC;data[287]=PINC;data[288]=PINC;data[289]=PINC;
  data[290]=PINC;data[291]=PINC;data[292]=PINC;data[293]=PINC;data[294]=PINC;
  data[295]=PINC;data[296]=PINC;data[297]=PINC;data[298]=PINC;data[299]=PINC;
  data[300]=PINC;data[301]=PINC;data[302]=PINC;data[303]=PINC;data[304]=PINC;
  data[305]=PINC;data[306]=PINC;data[307]=PINC;data[308]=PINC;data[309]=PINC;
  data[310]=PINC;data[311]=PINC;data[312]=PINC;data[313]=PINC;data[314]=PINC;
  data[315]=PINC;data[316]=PINC;data[317]=PINC;data[318]=PINC;data[319]=PINC;
  data[320]=PINC;data[321]=PINC;data[322]=PINC;data[323]=PINC;data[324]=PINC;
  data[325]=PINC;data[326]=PINC;data[327]=PINC;data[328]=PINC;data[329]=PINC;
  data[330]=PINC;data[331]=PINC;data[332]=PINC;data[333]=PINC;data[334]=PINC;
  data[335]=PINC;data[336]=PINC;data[337]=PINC;data[338]=PINC;data[339]=PINC;
  data[340]=PINC;data[341]=PINC;data[342]=PINC;data[343]=PINC;data[344]=PINC;
  data[345]=PINC;data[346]=PINC;data[347]=PINC;data[348]=PINC;data[349]=PINC;
  data[350]=PINC;data[351]=PINC;data[352]=PINC;data[353]=PINC;data[354]=PINC;
  data[355]=PINC;data[356]=PINC;data[357]=PINC;data[358]=PINC;data[359]=PINC;
  data[360]=PINC;data[361]=PINC;data[362]=PINC;data[363]=PINC;data[364]=PINC;
  data[365]=PINC;data[366]=PINC;data[367]=PINC;data[368]=PINC;data[369]=PINC;
  data[370]=PINC;data[371]=PINC;data[372]=PINC;data[373]=PINC;data[374]=PINC;
  data[375]=PINC;data[376]=PINC;data[377]=PINC;data[378]=PINC;data[379]=PINC;
  data[380]=PINC;data[381]=PINC;data[382]=PINC;data[383]=PINC;data[384]=PINC;
  data[385]=PINC;data[386]=PINC;data[387]=PINC;data[388]=PINC;data[389]=PINC;
  data[390]=PINC;data[391]=PINC;data[392]=PINC;data[393]=PINC;data[394]=PINC;
  data[395]=PINC;data[396]=PINC;data[397]=PINC;data[398]=PINC;data[399]=PINC;
  data[400]=PINC;data[401]=PINC;data[402]=PINC;data[403]=PINC;data[404]=PINC;
  data[405]=PINC;data[406]=PINC;data[407]=PINC;data[408]=PINC;data[409]=PINC;
  data[410]=PINC;data[411]=PINC;data[412]=PINC;data[413]=PINC;data[414]=PINC;
  data[415]=PINC;data[416]=PINC;data[417]=PINC;data[418]=PINC;data[419]=PINC;
  data[420]=PINC;data[421]=PINC;data[422]=PINC;data[423]=PINC;data[424]=PINC;
  data[425]=PINC;data[426]=PINC;data[427]=PINC;data[428]=PINC;data[429]=PINC;
  data[430]=PINC;data[431]=PINC;data[432]=PINC;data[433]=PINC;data[434]=PINC;
  data[435]=PINC;data[436]=PINC;data[437]=PINC;data[438]=PINC;data[439]=PINC;
  data[440]=PINC;data[441]=PINC;data[442]=PINC;data[443]=PINC;data[444]=PINC;
  data[445]=PINC;data[446]=PINC;data[447]=PINC;data[448]=PINC;data[449]=PINC;
  data[450]=PINC;data[451]=PINC;data[452]=PINC;data[453]=PINC;data[454]=PINC;
  data[455]=PINC;data[456]=PINC;data[457]=PINC;data[458]=PINC;data[459]=PINC;
  data[460]=PINC;data[461]=PINC;data[462]=PINC;data[463]=PINC;data[464]=PINC;
  data[465]=PINC;data[466]=PINC;data[467]=PINC;data[468]=PINC;data[469]=PINC;
  data[470]=PINC;data[471]=PINC;data[472]=PINC;data[473]=PINC;data[474]=PINC;
  data[475]=PINC;data[476]=PINC;data[477]=PINC;data[478]=PINC;data[479]=PINC;
  data[480]=PINC;data[481]=PINC;data[482]=PINC;data[483]=PINC;data[484]=PINC;
  data[485]=PINC;data[486]=PINC;data[487]=PINC;data[488]=PINC;data[489]=PINC;
  data[490]=PINC;data[491]=PINC;data[492]=PINC;data[493]=PINC;data[494]=PINC;
  data[495]=PINC;data[496]=PINC;data[497]=PINC;data[498]=PINC;data[499]=PINC;
  data[500]=PINC;data[501]=PINC;data[502]=PINC;data[503]=PINC;data[504]=PINC;
  data[505]=PINC;data[506]=PINC;data[507]=PINC;data[508]=PINC;data[509]=PINC;
  data[510]=PINC;data[511]=PINC;data[512]=PINC;data[513]=PINC;data[514]=PINC;
  data[515]=PINC;data[516]=PINC;data[517]=PINC;data[518]=PINC;data[519]=PINC;
  data[520]=PINC;data[521]=PINC;data[522]=PINC;data[523]=PINC;data[524]=PINC;
  data[525]=PINC;data[526]=PINC;data[527]=PINC;data[528]=PINC;data[529]=PINC;
  data[530]=PINC;data[531]=PINC;data[532]=PINC;data[533]=PINC;data[534]=PINC;
  data[535]=PINC;data[536]=PINC;data[537]=PINC;data[538]=PINC;data[539]=PINC;
  data[540]=PINC;data[541]=PINC;data[542]=PINC;data[543]=PINC;data[544]=PINC;
  data[545]=PINC;data[546]=PINC;data[547]=PINC;data[548]=PINC;data[549]=PINC;
  data[550]=PINC;data[551]=PINC;data[552]=PINC;data[553]=PINC;data[554]=PINC;
  data[555]=PINC;data[556]=PINC;data[557]=PINC;data[558]=PINC;data[559]=PINC;
  data[560]=PINC;data[561]=PINC;data[562]=PINC;data[563]=PINC;data[564]=PINC;
  data[565]=PINC;data[566]=PINC;data[567]=PINC;data[568]=PINC;data[569]=PINC;
  data[570]=PINC;data[571]=PINC;data[572]=PINC;data[573]=PINC;data[574]=PINC;
  data[575]=PINC;data[576]=PINC;data[577]=PINC;data[578]=PINC;data[579]=PINC;
  data[580]=PINC;data[581]=PINC;data[582]=PINC;data[583]=PINC;data[584]=PINC;
  data[585]=PINC;data[586]=PINC;data[587]=PINC;data[588]=PINC;data[589]=PINC;
  data[590]=PINC;data[591]=PINC;data[592]=PINC;data[593]=PINC;data[594]=PINC;
  data[595]=PINC;data[596]=PINC;data[597]=PINC;data[598]=PINC;data[599]=PINC;
  data[600]=PINC;data[601]=PINC;data[602]=PINC;data[603]=PINC;data[604]=PINC;
  data[605]=PINC;data[606]=PINC;data[607]=PINC;data[608]=PINC;data[609]=PINC;
  data[610]=PINC;data[611]=PINC;data[612]=PINC;data[613]=PINC;data[614]=PINC;
  data[615]=PINC;data[616]=PINC;data[617]=PINC;data[618]=PINC;data[619]=PINC;
  data[620]=PINC;data[621]=PINC;data[622]=PINC;data[623]=PINC;data[624]=PINC;
  data[625]=PINC;data[626]=PINC;data[627]=PINC;data[628]=PINC;data[629]=PINC;
  data[630]=PINC;data[631]=PINC;data[632]=PINC;data[633]=PINC;data[634]=PINC;
  data[635]=PINC;data[636]=PINC;data[637]=PINC;data[638]=PINC;data[639]=PINC;
  data[640]=PINC;
 
 }}i=0;
 
 //////////////////////// РАЗВЕРТКА //////////////////////////////////////////  
   switch(raz){
   case 0: times=50;sek=1050;fff=0;break;
   case 1: times=20;sek=420;fff=0;break;
   case 2: times=10;sek=200;fff=0;break;
   case 3: times=5;sek=100;fff=0;break;
   case 4: times=2;sek=40;fff=0;break;
   case 5: times=1;sek=19;fff=0;break;
   case 6: times=0.5;sek=7;fff=-9;break;
   case 7: times=0.2;sek=3;fff=4;break;
   case 8: times=0.1;sek=1;fff=12;break;
   case 9: times=0.05;fff=12;break;
   case 10: times=0.02;fff=-57;break;  
   case 11: times=0.010;fff=-57;break;
   case 12: times=0.005;fff=-5;break;
   case 13: times=0.002;fff=5;break;
   }
 
   myGLCD.setColor(0xffff); setka();
 
  if(raz<9){
  i=0;while(i<319){i++; 
 myGLCD.setColor(0,0,0); myGLCD.drawLine(i, 230-data_old[i]*3,i, 230-data_old[i+1]*3);
 myGLCD.setColor(0xF800); myGLCD.drawLine(i, 230-data[i+hh]*3,i, 230-data[i+hh+1]*3);}i=0;}
 
   if(raz==9||raz==10){
  i=0;while(i<319){i++; 
 myGLCD.setColor(0,0,0); myGLCD.drawLine(i, 230-data_old[i]*3,i, 230-data_old[i+1]*3);
 myGLCD.setColor(0xF800); myGLCD.drawLine(i, 230-data[i+hh]*3,i, 230-data[i+hh+1]*3);}i=0;}
 
    if(raz==11||raz==12){
  i=0;while(i<160){i++; 
 myGLCD.setColor(0,0,0); myGLCD.drawLine(i*2, 230-data_old[i]*3,i*2, 230-data_old[i+1]*3);
 myGLCD.setColor(0xF800); myGLCD.drawLine(i*2, 230-data[i+hh]*3,i*2, 230-data[i+hh+1]*3);}i=0;}
 
    if(raz==13){ myGLCD.setColor(0x7FFFC5); myGLCD.print("LOGIC LEVEL",110,90);
      i=0;while(i<640){i++;if(data[i]>30){data[i]=40;}else{data[i]=20;}}i=0;
  i=0;while(i<80){i++; 
 myGLCD.setColor(0,0,0); myGLCD.drawLine(i*4, 230-data_old[i]*3,i*4, 230-data_old[i+1]*3);
 myGLCD.setColor(0x00137F); myGLCD.drawLine(i*4, 230-data[i+hh]*3,i*4, 230-data[i+hh+1]*3);}i=0;} 
 
   i=0;while(i<640){i++;data_old[i]=data[i+hh];}i=0;
  arr_m();
  if(w==1){EEPROM.update(0,raz);
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(0,0,60,12);
  myGLCD.setColor(0xffff);
  // печатаем строку в указанной строке позиции
myGLCD.printNumF(times,3, 10, 0); 
myGLCD.print("mS/DIV ",60,0);  if(raz!=13){myGLCD.print("1 V/DIV ",10,24);}else{myGLCD.print("LOGIC   ",10,24);}
myGLCD.print("OSCILLOSCOPE",200,0);
myGLCD.print("RCL-RADIO.RU ",200,12);
myGLCD.print("Version 0.1 ",200,24);
w=0;}
 myGLCD.setColor(0xffff);if(raz==13){arr_max=63;arr_min=0;}
                         myGLCD.print("Umax ",120,0); myGLCD.printNumF((float)arr_max*5/63,1, 160, 0); 
                         myGLCD.print("Umin ",120,12); myGLCD.printNumF((float)arr_min*5/63,1, 160, 12); 
                         myGLCD.print("Usig ",120,24); myGLCD.printNumF((float)arr_max*5/63-((float)arr_min*5/63),1, 160, 24);
                         if(hold==1){myGLCD.print("HOLD",10,12);if(w2==0){delay(1000);w2=1;}}else{myGLCD.print("AUTO",10,12);}
arr_min=255;arr_max=0;
}
 
void sinn(){
            while(PINC>arr){h0++;if(h0>10000){break;}}h0=0;
            while(PINC>arr-10){h0++;if(h0>10000){break;}}h0=0;
            while(PINC<arr){h1++;if(h1>10000){break;}}h1=0;
          }
 
void arr_m(){
 
  for(i=10;i<255;i++){arr_min = min(arr_min, data[i]);}
  for(i=10;i<255;i++){arr_max = max(arr_max, data[i]);}
  arr=arr_max+arr_min;
  if(arr>30){arr=20;}
  if(arr<20){arr=10;}
  }    
 
  void setka(){ ///// сетка 
if(raz<13){   
  for(y=40;y<240;y=y+40){
  for(x=10;x<320;x=x+10){
myGLCD.drawPixel(x, y);}}}
 
 for(x=48;x<320;x=x+48-fff){
  for(y=40;y<240;y=y+10){
myGLCD.drawPixel(x, y);}}}

Комментарии

Добавить комментарий

Войти с помощью: 

Случайные статьи

  • Стабилизатор лабораторного источника питания

    Стабилизатор собран на микросхеме КР142ЕН2А и внешним регулирующим транзистором. Схема обеспечивает при входном напряжении 40В выходное регулируемое напряжение от 3 до 33В при токе нагрузки до 0,5А. Так же имеется защита от КЗ. Литература — Радиоконструктор 2000-10Подробнее...
  • ПРИСТАВКА-АВТОМАТ К ЗАРЯДНОМУ УСТРОЙСТВУ

    Дополнив   имеющееся  в  вашем  распоряжении  зарядное  устройство  для автомобильной  аккумуляторной  батареи  предлагаемым  автоматом, можете быть спокойны  за  режим  зарядки  батареи  — как только напряжение на ее выводах достигнет  (14,5+-0,2)В,  зарядка  прекратится.  При  снижении напряжения до 12,8…13 В зарядка возобновится. Приставка  может быть выполнена в виде отдельного блока либо встроена в …Подробнее...
  • АЦП-модуль ADS1115 (Arduino)

    АЦП-модуль ADS1115 (Arduino)

    АЦП-модуль ADS1115 представляет собой 16-битный  аналого-цифровой преобразователь, который имеет 4 входа для преобразования аналоговый сигнал в цифровой. АЦП-модуль ADS1115 основан на одноименном чипе и содержит все необходимые для его работы внешние компоненты. АЦП-модуль совместим с I2C шиной. Оснащен программируемым усилителем и цифровым компаратором. Выполняет преобразования со скоростью передачи данных от 8 до …Подробнее...
  • Видео-разветвитель

    Это устройство полностью исключает взаимное влияние устройств принимающих сигнал от видео-разветвителя, в добавок это уст-во можно расширить до любого числа выходов. В основе видео-разветвителя специализированная микросхема ВА7604N. Каждая микросхема содержит 2-а усилителя расчитанные на 75-и омную нагрузку. Коэффициент усиления таких усилителей 1. Номинальное входное напряжение входного и выходного видеосигнала 1В …Подробнее...
  • Автомат световых эффектов

    Автомат световых эффектов создает картину бегущего огня или бегущей тени (при переключении SA1). R1 позволяет менять частоту генератора прямоугольных импульсов (К155Ла3). Триггеры DD2 (К155ТМ2) соединенные последовательно образуют двоичный счетчик импульсов поступающих на его вход от генератора на DD1. В итоге частота на выходе первого триггера вдвое меньше, а на выходе …Подробнее...