Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   729 / 853
(#) moltam válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Ez nem a sima nano ra vonatkozik, azon 5V ról megy a kontroller, de van rajta egy 3.3V stab ha valami perifériát etetni kéne esetleg. A Vdd referencia ezért 5V alapból, ha átállítod külsőre akkor rá lehet kötni a 3.3V stab kimenetét az aref referencia bemenetre, ezután nem 0-5V hanem 0-3.3V között fog mérni, nagyobb lesz a hasznos felbontás, pontosabb a mérés.
(#) Jonni válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Azért irta a referenciafeszültséget mert úgy állítólag pontosabb a mérés. De azt hiszem sehogy se lesz jó mert a projektembe nem csak egy LM35 van hanem poti-t, LDR-t, meg egyénb szenzorokat is használok. És a referenciát az összes input lábon beállítja ,de nekem az csak az A1-en kéne, a többin nem. Gondolom olyat nem lehet ,hogy csak A1-en állitom be a referenciát
(#) Elektro.on válasza vargham hozzászólására (») Feb 15, 2022 /
 
Lehet igazad van, nem néztem meg milyen vezérlő van a nano-n.
Ettől függetlenül a külső referencia feszültséget nem szokták tolerálni Vss felett.
(#) GPeti1977 válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Láttam olyan projektet ahol menet közben kapcsolgatták a referenciát menet közben
(#) Jonni válasza GPeti1977 hozzászólására (») Feb 15, 2022 /
 
Én inkább enyire nem bonyilítanám
(#) GPeti1977 hozzászólása Feb 15, 2022 /
 
Van egy programom ami lefagy időnként, vagy legalábbis nem azt csinálja mint kellene, az állapotot tudom detektálni. Lehetséges a RAM-ot vagy egyéb memória területeket törölni? Ez segítene?
a watchdog valamiért nem működik talán a bootloader miatt, arra is gondoltam hogy egy portot összekötöm a reset lábbal, ezt input alapból, majd amikor resetelni kell átírom outputra , majd L szintre.
A hozzászólás módosítva: Feb 15, 2022
(#) Elektro.on válasza GPeti1977 hozzászólására (») Feb 15, 2022 /
 
Nem címzel valami tömböt túl?
Úgy tudom a C ben , legalábbis korábban lehetet ilyet benézni, és akkoremory leak miatt elfogy a ram.
(#) GPeti1977 válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Volt benne olyan is, de már kijavitottam.
(#) sargarigo válasza GPeti1977 hozzászólására (») Feb 15, 2022 /
 
Ha szoftveresen akarsz resetelni, akkor gondban lehetsz, mert elszáll a program akkor honnan tudod hogy resetelni kell?
En inkább egy monstabilt kötnék a resetre, amit egy portlábon rendszeresen újra indïtasz. Ha elszállsz, akkor eltelik az idő hogy nem indítottad újra, és akkor majd ő tol egy resetet, ami rendbehoz mindent. Ez minden vezérlővel kell hogy működjön, akkor is ha nincs WD timer.
(#) GPeti1977 válasza sargarigo hozzászólására (») Feb 16, 2022 /
 
Igen ez is jó megoldás, vannak is erre külső watchdog ic-k hasonlóan működnek mint a sima monostabil.
(#) vargham válasza GPeti1977 hozzászólására (») Feb 16, 2022 /
 
Én inkább megtalálnám benne a hibát...
(#) GPeti1977 válasza vargham hozzászólására (») Feb 16, 2022 /
 
Köszönöm, egyser már felraktam ide a kódot (HGA22 óra), az analóg komparátorra érkezik jel, 2kHz körül, ami 200baud sebességű FSK információt hordoz, ezt felskálázom 1200baudra, és ezt veszi az UART modul (itt lehet a gond), dekódolja, majd I2C buszos kijelzőre írja az adatokat.
  1. #include <Wire.h>
  2. #include "LiquidCrystal_I2C.h"
  3. #include "HT16K33.h"
  4. #include "LM75.h"
  5. #define Bittime 435 //435 2.___ 410 1.
  6. #define window_size 4 //moving average filter
  7. #define Signalarray 230
  8. //LiquidCrystal_I2C lcd(0x27, 16, 2);
  9. HT16K33 seg(0x70);
  10. LM75 Tsensor;
  11. unsigned long sample;
  12. unsigned long lastsample;
  13. int value = 0;
  14. int sum = 0;
  15. int readings[window_size];
  16. volatile int averaged = 0;
  17. int index = 0;
  18. unsigned long lastsample1;
  19. byte state = 0;
  20. byte laststate = 0 ;
  21. volatile byte j = 0;
  22. int nosig = 0;
  23. volatile unsigned int bitle[Signalarray];
  24. volatile byte pr = 0;
  25. volatile byte calc = 0;
  26. bool HGAStartBitDetected = false;
  27. byte HGAData[64];
  28. byte HGAByteCounter = 0;
  29. byte crc = 0;
  30.  
  31. byte year = 21;
  32. byte month = 1;
  33. byte day = 1;
  34. byte hour = 12;
  35. byte minute = 0;
  36. byte sec = 0;
  37. byte halfsec;
  38. byte nap = 1;
  39. unsigned long previousMillis = 0;
  40. bool sync = false;
  41. unsigned int nosync = 1200;
  42. const int interval = 500;
  43. const unsigned int bh = 4540;
  44. byte inByte = 0;
  45. volatile byte th = 0;
  46. extern volatile unsigned long timer0_millis;
  47. unsigned long new_value = 0;
  48. bool sendt = true;
  49. void setMillis(unsigned long new_millis) {
  50.   uint8_t oldSREG = SREG;
  51.   cli();
  52.   timer0_millis = new_millis;
  53.   SREG = oldSREG;
  54.   sei();
  55. }
  56.  
  57. void setup () {
  58.   cli();
  59.   TCCR1A = 0;
  60.   TCCR1B = 0;
  61.   OCR1A = 29;
  62.   TCCR1A = _BV(WGM10) | _BV(COM1A0);
  63.   TCCR1B = _BV(WGM13) | _BV(CS10);
  64.   DDRB |= _BV(1);
  65.   pinMode(2, INPUT_PULLUP);
  66.   pinMode(5, OUTPUT);
  67.   pinMode(13, OUTPUT);
  68.   PORTD = PORTD & B11011111;
  69.   PORTB = PORTB & B11011111;
  70.   DIDR1 |= (1 << AIN0D); // Disable Digital Inputs at AIN0 and AIN1
  71.   ADCSRA &= ~(1 << ADEN);
  72.   ADCSRB |= (1 << ACME); //Set ACME bit in ADCSRB to use external analog input at AIN1 -ve input
  73.   ADMUX = 0x01; //select A1 as input
  74.   ACSR =
  75.     (0 << ACD) |    // Analog Comparator: Enabled
  76.     (0 << ACBG) |   // Clear ACBG to use external input to AIN0 +ve input
  77.     (0 << ACO) |    // Analog Comparator Output: OFF
  78.     (1 << ACI) |    // Analog Comparator Interrupt Flag: Clear Pending Interrupt by setting the bit
  79.     (1 << ACIE) |   // Analog Comparator Interrupt: enabled
  80.     (0 << ACIC) |   // Analog Comparator Input Capture: Disabled
  81.     (1 << ACIS1) | (1 << ACIS0);   // Analog Comparator Interrupt Mode: rising edge
  82.  
  83.   sei();
  84.  
  85.   attachInterrupt(digitalPinToInterrupt(2), sign, RISING);
  86.   Serial.begin(1200, SERIAL_8E1);
  87.   //lcd.init();
  88.   //lcd.backlight();
  89.   //lcd.setCursor(0, 0);
  90.   //lcd.print("   HGA22 CLOCK  ");
  91.   seg.begin();
  92.   Wire.setClock(200000);
  93.   seg.displayOn();
  94.   seg.setDigits(4);
  95.   seg.brightness(4);
  96.   delay(100);
  97. }
  98.  
  99. void loop() {
  100.  
  101.   unsigned long currentMillis = millis();
  102.  
  103.   if (currentMillis - previousMillis >= interval) {//internal 2Hz
  104.  
  105.     //if (th == 1) {//externel 2Hz on INT0
  106.     //th = 0;
  107.     previousMillis = currentMillis;
  108.  
  109.     nosync++;
  110.     halfsec++;
  111.     if (halfsec % 2 == 0) {
  112.       sec++;
  113.     }
  114.     if (sec > 59) {
  115.       sec = 0;
  116.       minute++;
  117.     }
  118.     if (minute > 59) {
  119.       minute = 0;
  120.       hour++;
  121.     }
  122.     if (hour > 23) {
  123.       hour = 0;
  124.     }
  125.     if (halfsec % 2 == 0 ) {
  126.       /*
  127.         Serial.print("20");
  128.         Serial.print(year);
  129.         Serial.print("-");
  130.         Serial.print(month);
  131.         Serial.print("-");
  132.         Serial.print((day));
  133.         Serial.print(" ");
  134.         Serial.print((hour));
  135.         Serial.print(":");
  136.         Serial.print((minute));
  137.         Serial.print(":");
  138.         Serial.print(sec);
  139.         Serial.print(" ");
  140.         Serial.println();
  141.       */
  142.     }
  143.  
  144.     if (halfsec % 10 == 0) {
  145.       //lcd.setCursor(0, 1);
  146.       //lcd.print(Tsensor.temp());
  147.       //lcd.print("C ");
  148.     }
  149.  
  150.     if (sync == true) {
  151.       //lcd.setCursor(0, 0);
  152.       //lcd.print("   20");
  153.       //lcd.print(year);
  154.       //lcd.print("-");
  155.       //if (month < 10)lcd.print("0");
  156.       // lcd.print(month);
  157.       // lcd.print("-");
  158.       // if (day < 10)lcd.print("0");
  159.       // lcd.print((day));
  160.       // lcd.print("  ");
  161.       // lcd.setCursor(7, 1);
  162.       // if (hour < 10)lcd.print("0");
  163.       //lcd.print((hour));
  164.       // lcd.print(":");
  165.       // if (minute < 10)lcd.print("0");
  166.       // lcd.print((minute));
  167.       // lcd.print(":");
  168.       // if (sec < 10)lcd.print("0");
  169.       // lcd.print(sec);
  170.       // lcd.print("  ");
  171.       // if (  nosync > 1200) {
  172.       // lcd.setCursor(15, 1);
  173.       // lcd.print("!");
  174.       // }
  175.       // else
  176.       // {
  177.       //   lcd.setCursor(15, 1);
  178.       // lcd.print(" ");
  179.       // }
  180.     }
  181.     //if ((hour == 12 ) && minute == 0 && sec == 10 && halfsec % 2 == 0  ) {
  182.     //seg.displayOff();
  183.     //sendt = false;
  184.     //}
  185.     //if ( sec == 0 && halfsec % 2 == 0 && sync == true ) {
  186.     //seg.displayOn();
  187.     //sendt = true;
  188.     // }
  189.     if ( nosync > 1200) {
  190.       seg.displayOff();
  191.     }
  192.     else
  193.     {
  194.       seg.displayOn();
  195.     }
  196.  
  197.     //if (sendt == true) {
  198.     if (sec % 10 != 0) {
  199.       seg.displayTime(hour, minute, true, false);
  200.       seg.displayColon(1);
  201.     }
  202.     else
  203.     {
  204.       seg.suppressLeadingZeroPlaces(2);
  205.       seg.displayFloat(Tsensor.temp(), 2);
  206.       seg.displayColon(0);
  207.     }
  208.     //}
  209.  
  210.   }
  211.  
  212.   if (Serial.available() > 0) {
  213.     inByte = Serial.read();
  214.     if (HGAStartBitDetected)
  215.     {
  216.       HGAData[HGAByteCounter] = inByte;
  217.       if (HGAByteCounter < 64)HGAByteCounter++;
  218.       if (HGAByteCounter == 3)
  219.       {
  220.         if (HGAData[1] != HGAData[2])
  221.         {
  222.           HGAStartBitDetected = false;
  223.         }
  224.       }
  225.       if (HGAData[1] + 6 == HGAByteCounter)
  226.       {
  227.         HGAStartBitDetected = false;
  228.  
  229.         crc = (HGAData[13] + HGAData[12] + HGAData[11] + HGAData[10] + HGAData[9] + HGAData[8] + HGAData[7] + HGAData[6] + HGAData[5] + HGAData[4]);// & 255;
  230.         if (HGAData[0] == 0x68 && HGAData[1] == 0x0A && HGAData[2] == 0x0A && HGAData[5] == 0x00 && HGAData[6] == 0x00 && HGAData[7] == 0x00 && HGAData[15] == 0x16 && (HGAData[14] == crc))
  231.         {
  232.           //Serial.print(HGAData[14],HEX);
  233.           //Serial.print(" ");
  234.           //Serial.print(crc,HEX);
  235.           //Serial.print(" ");
  236.           //Serial.print(HGAData[15], HEX);
  237.           //Serial.println();
  238.  
  239.           if (HGAData[13] <= 99  && HGAData[12] <= 12 &&  (HGAData[11] & 0x1F) <= 31 && (HGAData[10] & 0x1F) < 24 && (HGAData[9] & 0x3F) < 60 && ((HGAData[8] & 0xFC) >> 2) < 60) {
  240.             PORTB = PORTB | B00100000;
  241.             delayMicroseconds(40);//cd4060 reset
  242.             setMillis(new_value);
  243.             sync = true;
  244.             nosync = 0;
  245.             year = HGAData[13];
  246.             month = HGAData[12];
  247.             day = HGAData[11] & 0x1F;
  248.             hour = HGAData[10] & 0x1F;
  249.             minute = HGAData[9] & 0x3F;
  250.             sec = ((HGAData[8] & 0xFC) >> 2);
  251.             nap =  ((HGAData[11] & 0xE0) >> 5  );// a hét napja
  252.             while (Serial.available() > 0)Serial.read();
  253.             PORTB = PORTB & B11011111;
  254.           }
  255.         }
  256.       }
  257.     }
  258.     else
  259.     {
  260.  
  261.       if (inByte == 0x68)
  262.       {
  263.         HGAData[0] = 0x68;
  264.         HGAStartBitDetected = true;
  265.         HGAByteCounter = 1;
  266.       }
  267.     }
  268.   }
  269.  
  270.   if (pr == 1) {
  271.     pr = 0;
  272.     //1200baud 8E1:
  273.     for ( byte i = 1 ; i <= j; i++ ) {
  274.       //Serial.println(bitle[i]);
  275.       if (bitle[i] < 7500 && bitle[i] >= 1000) bitle[i] =   bh * 2 / 12 * 1;
  276.       else if (bitle[i] < 12500 && bitle[i] >= 7500) bitle[i] =  bh * 2 / 12 * 2;
  277.       else if (bitle[i] < 17500 && bitle[i] >= 12500) bitle[i] = bh * 2 / 12 * 3;
  278.       else if (bitle[i] < 22500 && bitle[i] >= 17500) bitle[i] = bh * 2 / 12 * 4;
  279.       else if (bitle[i] < 27500 && bitle[i] >= 22500) bitle[i] = bh * 2 / 12 * 5;
  280.       else if (bitle[i] < 32500 && bitle[i] >= 27500) bitle[i] = bh * 2 / 12 * 6;
  281.       else if (bitle[i] < 37500 && bitle[i] >= 32500) bitle[i] = bh * 2 / 12 * 7;
  282.       else if (bitle[i] < 42500 && bitle[i] >= 37500) bitle[i] = bh * 2 / 12 * 8;
  283.       else if (bitle[i] < 47500 && bitle[i] >= 42500) bitle[i] = bh * 2 / 12 * 9;
  284.       else if (bitle[i] < 52500 && bitle[i] >= 47500) bitle[i] = bh * 2 / 12 * 10;
  285.       else if (bitle[i] < 57500 && bitle[i] >= 52500) bitle[i] = bh * 2 / 12 * 11;
  286.       else if (bitle[i] < 62500 && bitle[i] >= 57500) bitle[i] = bh * 2 / 12 * 12;
  287.  
  288.     }
  289.     //Serial.println();
  290.  
  291.     for ( byte i = 1 ; i <= j; i++ ) {
  292.       if (i % 2 == 1) {
  293.         PORTD = PORTD | B00100000;
  294.       }
  295.       else
  296.       {
  297.         PORTD = PORTD & B11011111;
  298.       }
  299.       delayMicroseconds((bitle[i]));
  300.     }
  301.  
  302.     PORTD = PORTD & B11011111;
  303.     j = 0;
  304.   }
  305. }
  306.  
  307. void sign() {
  308.   th = 1;
  309.  
  310. }
  311.  
  312. ISR(ANALOG_COMP_vect)
  313. {
  314.  
  315.   sample = micros();
  316.   value = sample - lastsample;
  317.   sum = sum - readings[index];
  318.   readings[index] = value;
  319.   sum = sum + value;
  320.   index = (index + 1) % window_size;
  321.   averaged = sum / window_size;
  322.  
  323.   lastsample = sample;
  324.  
  325.   if (averaged > Bittime && averaged < 550 ) {
  326.     state = 1;
  327.     nosig = 0;
  328.   }
  329.   if (averaged < Bittime && averaged > 350 ) {
  330.     state = 0;
  331.     nosig ++;
  332.   }
  333.   if (state != laststate) {
  334.     bitle[j] = (sample - lastsample1);
  335.     if (j < Signalarray)j++;
  336.     lastsample1 = sample;
  337.   }
  338.   laststate = state;
  339.   if (nosig > 150 && j > 0) {
  340.     nosig = 0;
  341.     pr = 1;
  342.   }
  343.  
  344. }
(#) HeZ válasza GPeti1977 hozzászólására (») Feb 16, 2022 /
 
Bár nem néztem át tüzetesen a programkódodat (te írtad, te érted ), de a megszakítás a Delay-jel, sőt, az LCD rutinbeli Delay-ekkel is összeakadhat. Arduino-n vagy egyik, vagy másik vagy gyorsabb mikrovezérlő (120-240 MHz-es órajelű) kell a dekódoláshoz.
Én is építenék HGA22 dekódert - segítek a szoftver megírásában, ha segítesz az FM vevő megépítésében (4 topikban is futott ez a vevő téma).
A hozzászólás módosítva: Feb 16, 2022
(#) sdrlab válasza GPeti1977 hozzászólására (») Feb 16, 2022 /
 
Az UART modult nem lehet levinni 200Baudra alapban?
(#) sdrlab válasza HeZ hozzászólására (») Feb 16, 2022 /
 
200Baud feldolgozásához 120-240MHz-es órajel??! ))) Szép új világ, talán még egy hello world futtatásához is elég lehet?
(#) GPeti1977 válasza sdrlab hozzászólására (») Feb 16, 2022 /
 
Sajnos nem, 16M kristállyal 300baud a minimum, még érdekesebb hogy a windows soros terminálok sem tudják a 200baudot, beírhatom de valójában 300-on megy.
(#) GPeti1977 válasza HeZ hozzászólására (») Feb 16, 2022 /
 
Köszönöm. Késöbb felrakom az aktuális kapcsolási rajzot.
(#) sdrlab válasza GPeti1977 hozzászólására (») Feb 16, 2022 /
 
Dehogynem! 1Baud-ig teszteltem nemrég a PC baud generátorát, simán ment még! A 200Baud nem jelenhet gondot szerintem egyik hardvernek sem! Ha a program nem tudja, akkor cseréld le olyanra, ami nem korlátoz szabvány értékekre....
Esetleg kvarc csere 10MHz-esre? )
(#) GPeti1977 válasza sdrlab hozzászólására (») Feb 16, 2022 /
 
Akkor ki kell lépnem az arduino korlátaiból, nem nagy gond mert lehet olyan bootloader fájlt is írni ahol módosítva van a kristály frekvencia és magát a bootloadert nem kell lecserélni a kontrollerben, 8MHz kristállyal is lehetséges, régebben kaphatóak voltak ilyen panelek.
(#) GPeti1977 válasza HeZ hozzászólására (») Feb 16, 2022 /
 
A legutóbbi verzió, kérdezz ha valami nem világos.
Minél zajosabb a környezet annál előbb kifagy, valahol az arduino Serial.available körül kell keresni a hibát megérzésem szerint.

hga22_2.png
    
(#) HeZ válasza sdrlab hozzászólására (») Feb 17, 2022 /
 
A 200 Baud feldolgozása csak az egyik feladata a programnak. A részprogramok együtt nem működnek megfelelően. Ma már a 16MHz-es órajelű mikrovezérlőkhöz hasonló árszinten sokkal gyorsabb és lassabb hardver is használható. Én is kérdezhetném: 200 Baudra miért kell 16MHz-es Arduino mikrovezérlő, amikor létezik olcsóbb, lassabb, akár 6 lábú verzió is?
(#) sdrlab válasza HeZ hozzászólására (») Feb 17, 2022 /
 
...És teljesen jogos lenne a kérdésed!!

Azonban nyilván az Arduino, mint elterjedt eszköz, amit csak leemelsz a polcról jobbik esetben mindig kéznél van, és egyszerű, kényelmes rá programot írni! Emiatt gyakran jobb választás, mint pl egy 6 lábú PIC-el megcsinálni azt, amire az is kényelmesen elég lenne!
De egy 120-240MHz-es procit ilyen feladatra egyszerűen szégyen lenne berakni már(főképp, mert gondolom 32 bites amúgy is). Én is erősen benne vagyok egy szoftver-rádióban éppen, és ha leírnám, mennyi mindent csinál a program, kb elszörnyednél, és azt mondanád, az biztos lehetetlen...., pedig "csak" 70MHz/16bit...
(#) sdrlab válasza GPeti1977 hozzászólására (») Feb 17, 2022 /
 
Ez igaz, erre nem gondoltam....
Bár, ha a cél a számítógépbe való információ juttatás, akkor végképp ki lehet hagyni akár az egész mikrovezérlőt is, programostól.... Én egy teszt erejéig simán beküldtem a soros portra a demodulált HGA jelet a 200Baud-al, és tökéletesen ment a hibátlan vétel...
(#) HeZ válasza sdrlab hozzászólására (») Feb 17, 2022 /
 
A célom DCF77 vevős (és GPS vevős) óra kiváltása HGA22 vevős órával. A demodulált FM rádiójelet ne (a drága) SDR vevő, hanem egy minél egyszerűbb FM vevő biztosítsa. Az amilyen-van-a-polcon típusú mikrovezérlő ezt feldolgozza, kijelzi, ugyanúgy, ahogy a DCF77 vagy GPS vevő órák teszik.
GPeti1977 rajzához a megépítési információk hiányoznak - pedig megér egy misét...
Járható(bb) út egy olcsó FM vevő kit (TEA5767, RD5807, SI4703, amik max. 108 MHz-esek) vagy meglévő rádió áthangolása 108 MHz-ről 135 MHz-re pl a kvarc frekvencia megváltoztatásával?
A hozzászólás módosítva: Feb 17, 2022
(#) GPeti1977 válasza HeZ hozzászólására (») Feb 17, 2022 /
 
Tévedsz 3 nagyságrendet, a hga22 nem 135MHz-en ad hanem 135kHz-en. Írd le mit nem értesz.
(#) sdrlab válasza GPeti1977 hozzászólására (») Feb 17, 2022 /
 
Gondolom a kapcsolási rajzodon lévő nagy mennyiségű érték nélküli alkatrészekre gondolt HeZ Ha közzétételre is szánsz valamit, nagyon nem árt legalább minimális szinten gatyába rázni a kapcsolási rajzot!
(#) HeZ válasza GPeti1977 hozzászólására (») Feb 17, 2022 /
 
Bizony nem mindegy a MHz és a KHz...
Járható(bb) út egy olcsó vevő kit vagy meglévő rádió áthangolása?
A cél az utánépítés. Miért kell két egymást követő fokozat? Miért és mikor kapcsolod a D9 kapcsolót? A D5 kimenetnek mi a funkciója? Hogyan és mivel állítod be, hangolod a vevőt?
A hozzászólás módosítva: Feb 17, 2022
(#) GPeti1977 válasza sdrlab hozzászólására (») Feb 17, 2022 /
 
Mivel 3 3 egymás utáni fokozat van az alkatrészek értéke meg van adva egy egy helyen így logikus hogy a másik két helyen is ugyanaz lesz.
(#) GPeti1977 válasza HeZ hozzászólására (») Feb 17, 2022 /
 
Egy analóg AM vevő KF-je 450kHz, 9 kHz sávszélességgel, ide 2,4kHz KF kell, ha több az arduino már nem tudja megmérni a micros 4us felbontásával a frekvencia változást.
(#) sdrlab válasza GPeti1977 hozzászólására (») Feb 17, 2022 /
 
Logikus - neked! Másnak, aki esetleg kevésbé járatos a te elképzelésedben, korántsem biztos, hogy az lesz! Ne kimagyarázd magad, hanem lásd be, nem véletlenül van az alkatrészeknek legalább értékük megadva, amit minden egyes alkatrészhez erősen ajánlott odaírni! Ez így egy kézi sniccnek, önmagad számára elmegy, de ha már másnak is meg akarod mutatni, nem kell ennyire lustának lenned!
Következő: »»   729 / 853
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem