Editare 30.05.2011 SCHEMA AMPLIFICATOR CU 2N3055 IN EAGLE AMPLASARE COMPONENTE AMPLIFICATOR CU 2N3055 O VARIAN...
Nu pot sa spun ca e cine stie ce dar mi se pare ca daca iti doresti un amp mai micut, stereo si cu un trafo usor de gasit cred ca...
In articolul anterior am adaptat codul lui Nicu Florica pentru un display de 2" cu ILI9163 care functiona pe STM32. M-am gindit sa fac ...
A very simple yet interesting Chasing LED arrow car tun signal indicator circuit is discussed in this article. The circuit uses just a single 10 stage
This is an Infrared Intruder Alarm circuit that interesting. Imagine some people walk through restricted areas. At that moment, this circuit immediately sounded to alert you. It uses the principle of cut the infrared light. The circuit will recognize, control relay runs, and turns on a warning signal like a siren for us to hear. ... Read more
Am testat modificarea unei surse ATX oarecare folosind un montaj adaptor cu TL494 (care se gaseste de cumparat la doar 2 lei). Cu acesta se poate modifica practic orice sursa ATX indiferent de circuitul de comanda (circuit de comanda care la mai toate modelele nu ofera reglaj curent de iesire, protectia la scurt fiind cu blocarea oscilatorului) Am luat o sursa oarecare ce o aveam ca "defecta" (condensatori explodati) si am trecut la o inspectie preliminara. Astfel pe transformatorul ce da tensiunea de 5V firului violet, am mai descoperit o tensiune de +16V. De pe sursa am eliminat condensatorii de filtraj, iar pe bara de 12V (yellow) am pus un 4700/35, rezistele de descarcare, si am scos circuitul de comanda (2002 in acest caz). am identificat apoi iesirile acestuia catre cei 2 tranzistori de comanda. In cazul de fata pinii 7 si 8 de pe placa sursei. Am eliminat si cei citiva tranzistori responsabili cu protectia lui B2002 (anterior cind i-am ignorat au scos fum la peste 15V tensiune de iesire) Am realizat pe o placa de test schema de mai jos: Dupa care capatul potentiometrului de 10K responsabil de reglajul tensiunii de iesire l-am legat la pinul 12 al lui TL494, si am alimentat circuitul cu 16V dintr-o sursa externa. Am reglat referinta de 1V , am reglat apoi "tensiunea de iesire" pina am obtinut oscilatii pe cele 2 iesiri, pinul 7 respectiv 10 al lui TL494, conform cu imaginile de mai jos: Placa sursei initial era ca in imaginea: Dupa ce am inceput s-o eliberez" Asa ca am conectat la +16V pinul 12 de la TL494, iesirile catre tranzistori, masa si capatul potentiometrului de 10K la fostul +12V yellow). Initial am lucrat cu un bec de 220V serie cu alimentarea. In aceasta situatie sursa a pornit, am testat reglajul min/max al tensiunii de iesire, si i-am pus ca sarcina un bec auto. Avind becul inseriat cu alimentarea de 220V curentul debitat nu depasea 2,7A. Am eliminat becul de protectie si am pus-o in sarcina testind reglajul curentului de iesire, si protectia la scurt. In urma acestor teste radiatorul cu diodele era rece, cel cu tranzistorii de comanda s-a incalzit accepabil in sensul ca era suportabila la degete. Testele le-am facut fara racire suplimentara ca nu am avut la indemina un 7812 pentru ventilator. 7812 isi va lua intrarea din cei 16V ce alimenteaza TL-ul. Pentru situatia de fata am abuzat de google care a gasit o bucata de schema cu B2002 unde sint toate detaliile Circuitul de comanda cu tranzistori ce se vede in partea stinga a schemei de mai sus este cumva universal (cu mici variatiuni) la toate sursele ATX. Tensiunea de +16V care in schema de mai sus este 12 poate avea diverse valori intre 7v si 27V. Functie de valoarea maxima ce rezulta la iesire se mai poate ajusta rezistenta din pinul 1 a lui TL494. In cazul de fata am ajuns la 220 Ohm, la o alta sursa ce avea 27V in loc de 16V rezistenta din pinul 1 a ajuns la 2,2K pentru 26V iesire . Pe bara tensiunii de iesire am pus o rezistenta de 4k7/2W pentru descarcare care la 27V este foarte usor calda. In lipsa ei este dificil relajul exact al tensiunii de iesire dorita. Tensiunea minima Circuitul adaptor fixat pe o lamela de la radiator. Ca senzor de curent am folosit o rezistenta de 0,02/2W care a incaput pe placa de test, iar amplasarea placii inttre cele 2 radiatoare ii va asigura suficienta racire, desi la circa 5A dupa vreo ora abia era calduta. Tensiunea maxima. Pe viitor placa probabil va arata ca mai jos: 10-iun-2018 O alta placa modificata: placa este fixata pe radiatorul cu diodele, iar suruburile le-am potrivit in locul celor 2 diode eleminate Pe spate am cautat sa-l las cit mai curat Tensiunea minima Tensiunea maxima fara modificarea transformatorului In sarcina cu un bec de far auto Pregatit de in cutie Aproape asamblat si gata de lucru, Ventilatorului i-am schimbat pozitia, deoarece carcasa este de la alta sursa care avea radiatoarele mai joase.
This is a pulse generator with adjustable duty cycle made with the 555 timer IC. The circuit is an astable multivibrator with a 50% pulse duty cycle. The
Editare 30.05.2011 SCHEMA AMPLIFICATOR CU 2N3055 IN EAGLE AMPLASARE COMPONENTE AMPLIFICATOR CU 2N3055 O VARIAN...
Am testat zilele trecute o sursă de tensiune și curent reglabile inspirată de pe site-ul unui cetățean rus, care a fost foarte generos cu detaliile. Schema de bază este cea de mai jos, căreia i-am pus doi tranzistori IRFZ44 pe partea de regulator, modificările se pot observa pe desenul cablajului. După câteva zile de teste pot spune ca funcționează foarte bine și este stabilă. Inițial am testat cu alimentare din sursa de laborator, apoi de pe un smps forward construit să dea 32V pe ieșire. Cablajul l-am modificat astfel: și a ieșit așa: Este răcit cu un cooler de CPU căruia i-am pus un ventilator de 24V. În mod absolut aleatoriu încă apare câte un vârf de tensiune la oprirea alimentării, deci va trebui evitat ca "chestiile" sensibile și pretențioase să fie alimentate în momentele de on/off a sursei. Nefiind repetitiv fenomenul este cumva dificil de determinat cauza. În rest la chestiile mai puțin pretențioase dar care cer curenți mari cu variații bruște este destul de robustă.
Urmatoarea schema este spre deosebire de cea de sus cu tranzistoare, dar mult mai simpla. Este adevarat ca numarul led-urilor est...
Am testat zilele trecute o sursă de tensiune și curent reglabile inspirată de pe site-ul unui cetățean rus, care a fost foarte generos cu detaliile. Schema de bază este cea de mai jos, căreia i-am pus doi tranzistori IRFZ44 pe partea de regulator, modificările se pot observa pe desenul cablajului. După câteva zile de teste pot spune ca funcționează foarte bine și este stabilă. Inițial am testat cu alimentare din sursa de laborator, apoi de pe un smps forward construit să dea 32V pe ieșire. Cablajul l-am modificat astfel: și a ieșit așa: Este răcit cu un cooler de CPU căruia i-am pus un ventilator de 24V. În mod absolut aleatoriu încă apare câte un vârf de tensiune la oprirea alimentării, deci va trebui evitat ca "chestiile" sensibile și pretențioase să fie alimentate în momentele de on/off a sursei. Nefiind repetitiv fenomenul este cumva dificil de determinat cauza. În rest la chestiile mai puțin pretențioase dar care cer curenți mari cu variații bruște este destul de robustă.
La sugestia unei cunoștințe am testat un radio cu RDA5807 cu codul unui rus , cu scopul de a-l adapta pentru display mai mare. Acesta a realizat proiectul pe un OLED ce mie nu-mi place datorită duratei mici de viata. Acesta a prevăzut în cod stingerea ecranului, dar am preferat să folosesc un LCD căruia i-am anulat stingerea denumit amber-gold cu chip ST7565 prezentat la un proiect anterior. Schema de conexiuni originală cu OLED este: După ce am modificat codul (care se află pe github) cu afișare în engleza mi-a ieșit așa: Eu am folosit tot un arduino mini dar alimentat la 3,3V pentru a nu mai folosi un adaptor de nivel pentru RDA5807. Rusul nu folosește însa cu ani in urmî s-a dovedit că dacă pinii I2C ai lui RDA5807 sunt puși la nivele de 5V acesta se defectează dupa un timp. Deoarece s-a folosit lib-ul U8glib modificările pentru alt display au fost simple. Conexiunile sunt conform definiției ce o înlocuiește pe cea a OLED-ului: U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 și am testat cu două LCD-uri: Cu amber-gold și cu unul similar dar ceva mai mare, prezentat și acesta într-un articol anterior: Butoanele reacționează foarte bine, iar meniul acoperă toate funcționalitățile lui RDA5807 mai puțin RDS care deocamdată nu ne interesează.
Zilele acestea a sosit un modul radio FM cu SI4703 ce este cumva similar la specificații cu RDA5807 ( este pregatit pentru RDS si RBDS) numai că se conectează diferit cu Arduino. La fel ca RDA-ul are și acesta posibilitatea de reglaj a volumului. Arată ca în poza de mai jos: Funcționează și acesta ca și TFT-ul tot la 3,3V însă intrările suportă nivel TTL, eu am testat vreo două săptamâni pe un arduino nano, unde SI-ul și TFT-ul sunt alimentate la 3,3V iar intrările sunt legate direct la Arduino. Conexiunile sunt comentate în cod. Modulul are antena conectată la firul de masă al jack-ului de căști, iar în link este dată schema placuței, și modificarea pentru o eventuală antenă exterioară. Pentru funcționarea cu arduino, am abuzat din nou de google, și m-am oprit pe un material al lui Matthias Hertel care a studiat în amanunt aceste circuite având github lib-urile testate. Dupa ce am verificat testele, am luat exemplul cu LCD și butoane și l-am adaptat pentru un TFT de 1,44" 128/128 cu ST7735. În general s-a comportat foarte bine, ținând cont că zona de test nu este favorabilă recepției radio. Teoretic codul ar fi funcțional și pentru RDA5807 și TEA5767 (acesta nu are RDS și volum - va trebui găsit atceva pentru a ocupa spațiul de pe TFT). Deocamdată nu am pentru un test rapid. Modificarea ar fi doar de aici: // RDA5807M radio; ///< Create an instance of a RDA5807 chip radio SI4703 radio; ///< Create an instance of a SI4703 chip radio. //SI4705 radio; ///< Create an instance of a SI4705 chip radio. // TEA5767 radio; ///< Create an instance of a TEA5767 chip radio. iar aici: #include trebuie înlocuit corepunzător. Varianta testată a ieșit ca mai jos: Deocamdată lipsesc butoanele, pentru test am simulat cu un conductor legat la masa. (Seek up/down, volum up/down, și un buton care apăsat aduce forțat un anume post radio ce este definit în cod) Pentru că mai aveam loc în arduino, am adaugat și un DHT11 Pe ondrive am pus un mic filmuleț cu funcționarea acestuia.
Descargue este archivo Chip Electronico PNG ,dibujos Tecnología Electrónica, Circuito, Chip PNG o PSD de forma gratuita. Pngtree proporciona millones de png libre, vectores y recursos gráficos psd para diseñadores.| 5401683
Stim cu totii ca iPhone 7 va veni fara un port audio, compania Apple dorind sa elimine aceasta componenta din dispozitivele sale in ciuda faptului ca multa lume nu intelege cum ceva vechi de zeci de ani poate fi pensionat pentru a face loc unor tehnologii noi. Diverse speculatii au aparut in legatura cu motivele
Am pornit de la articolul de aici unde mi-a placut realizarea acestuia. Initial am testat codul omului, a functionat insa cercul in realitate arata rau de tot, mai ales daca e privit de aproape, asa ca am renuntat la el. Asta datorita rezolutiei ecranului. Ulterior m-am hotarit sa fac un ceas mai serios cu cifre cit mai mari si reglaj manual ca sa nu depind de calculator la trecerile ora vara/iarna, eventual alarma daca mai raminea memorie disponibila, si din pacate nu a mai ramas. Pentru display este folosita o biblioteca U8glib cu care m-am "imprietenit" mai greu (pe link este cea folosita de mine.). Modul de conectare al display-ului la arduino este descris cu foarte multe detalii de Nicu Florica la el pe blog , si nu voi repeta aici. I-am adaugat un DS1307, un DS18B20 si trei butoane : #define meniu 9 #define minus 10 #define plus 11 #define ONE_WIRE_BUS 8 La scrierea codului m-am inspirat de aici pentru ca foloseste tot U8GLIB si a iesit ca mai jos: Am marit atit cit a fost posibil fontul orei iar restul informatiilor le-am incadrat la dimensiunea maxima acceptata de rezolutia ecranului. Aici se poate vedea modul de reglaj imediat dupa Duminica . Am vrut sa sterg ecranul in modul reglaj insa codul depasea marimea maxima a lui Arduino micro (pe asta l-am folosit spre final), si astfel singurul loc liber era cel imediat dupa afisarea zilei. La rutina de reglaj m-am inspirat tot de la Nicu, ca mi s-a parut foarte simpla de implementat. (Sketch uses 29814 bytes (97%) of program storage space. Maximum is 30720 bytes.) Codul final si bibliotecile folosite sint aici: Consumul este sub 100mA Modelul de senzor e temporar pina soseste unul in capsula TO-92 update:34-iul-2018 Dupa varianta lui Nicu realizata cu encoder, am adaptat codul pentru 3 butoane (nu am avut disponibil nici un encoder): Functionalitatile in mare au ramas cele descrise de Nicu Florica pe blog-ul lui. Codul pentru poza din stinga este pe github iar pentru cel din dreapta tot pe github. La varianta din dreapta am corectat afisarea secundelor analogice pentru ca era o mica abatere fata de cele numerice. In plus fata de ce a testat Nicu Florica am adaugat un senzor DS18B20. Fonturile utilizate ocupa foarte multa memorie si am incercat sa fac un compromis pentru o afisare cit mai vizibila. update 11-aug-2019 A sosit zilele astea display-ul de mai jos pe care am facut citeva teste: Pentru a functiona a trebuit sa fac upgrade la u8glib, iar driverul a functionat cu: U8GLIB_DOGM128 u8g(8, 9, 5, 7); // SPI Com: SCK , MOSI, CS, A0 RST-ul LCD-ului l-am legat la pinul reset al lui arduino. Neajunsul este ca are un offset pe x de -4 puncte. Codul de test aferent pozelor de mai jos este pe github. Ecran luminat Neajunsul cu offset-ul se poate distine usor in partea dreapta unde aprinde pixeli in mod aleatoriu. Mai exact, zona de lucru este de la 4(x=0) la 124, diferenta de 4 pixeli apare aleatoriu in dreapta la pornirea tensiunii de alimentare Fara lumina de fundal O alta clona modificata, cod pe github Update: 22-ian-2022 Cam acelasi cod dar de data asta cu arduino mega si un display 240x64 DG24064 cu T6963 Legaturile se deduc foarte usor din codul postat pe github pentru prima varianta si tot pe github si pentru a doua.
Tu stii care e necesarul de prize in casa? Cert e ca nicodata nu sunt suficiente. Intodeauna se va mai gasi ceva ce trebuie alimentat de la priza si ori priza va fi prea departe, ori nu se mai gaseste una libera in toata casa. Cel mai des ne lovim de lipsa unor prize in...
Fata de partea I, in care am prezentat date generale si am comandat integratul TEA5767 cu placa Arduino si am afisat date pe un LCD cu 16 coloane si 2 randuri, apoi pe unul compatibil Nokia 5110, acum voi conectata si modulul de timp real (RTC) cu integratul DS1307, astfel incat voi avea si informatii despre ora si data. Dupa ce am modificat un pic sketch-ul anterior pentru a muta informatiile legate de frecventa radio, am urmatoarea prezentare: Am completat sketch-ul cu partea de RTC, obtinand: /********************************************************************* This is an example sketch for our Monochrome Nokia 5110 LCD Displays Pick one up today in the adafruit shop! ------> http://www.adafruit.com/products/338 These displays use SPI to communicate, 4 or 5 pins are required to interface Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! Written by Limor Fried/Ladyada for Adafruit Industries. BSD license, check license.txt for more information All text above, and the splash screen must be included in any redistribution *********************************************************************/ // Nokia 5110 LCD (PCD8544) from https://code.google.com/p/pcd8544/ /* niq_ro ( http://nicuflorica.blogspot.ro ) case for Nokia 5110 LCD (PCD8544) - LPH 7366: For module from China, you must connect like this: * Pin 1 (RST) -> Arduino digital 6 (D6) * Pin 2 (CE) -> Arduino digital 7 (D7) * Pin 3 (DC) -> Arduino digital 5 (D5) * Pin 4 (DIN) -> Arduino digital 4 (D4) * Pin 5 (CLK) - Arduino digital 3 (D3) * Pin 6 (Vcc) -> +5V thru adaptor module (see http://nicuflorica.blogspot.ro/2013/06/afisajul-folosit-la-telefoanele-nokia.html ) * Pin 7 (LIGHT) -> +5V thru 56-100 ohms resistor (for permanent lights) or... other pin control * Pin 8 (GND) -> GND1 or GND2 */ // Date and time functions using a DS1307 RTC connected via I2C and Wire lib // original sketck from http://learn.adafruit.com/ds1307-real-time-clock-breakout-board-kit/ // add part with SQW=1Hz from http://tronixstuff.wordpress.com/2010/10/20/tutorial-arduino-and-the-i2c-bus/ // adapted sketch by niq_ro from http://nicuflorica.blogspot.ro // version 4.0 for FM radio with TEA5767 - http://www.tehnic.go.ro #include #include // Adafruit_PCD8544 display = Adafruit_PCD8544(SCLK, DIN, DC, CS, RST); Adafruit_PCD8544 display = Adafruit_PCD8544(3, 4, 5, 7, 6); #include // from https://github.com/andykarpov/TEA5767 #include #include // from http://arduino-info.wikispaces.com/file/view/Button.zip/405390486/Button.zip // TEA5767 begin TEA5767 Radio; double old_frequency; double frequency; int search_mode = 0; int search_direction; unsigned long last_pressed; Button btn_forward(11, PULLUP); Button btn_backward(12, PULLUP); // TEA5767 end #include "RTClib.h" RTC_DS1307 RTC; void setup () { Wire.begin(); Radio.init(); Radio.set_frequency(104.5); Serial.begin(9600); display.begin(); // init done // you can change the contrast around to adapt the display // for the best viewing! display.setContrast(60); display.clearDisplay(); RTC.begin(); // RTC.adjust(DateTime(__DATE__, __TIME__)); // if you need set clock... just remove // from line above this // part code for flashing LED Wire.beginTransmission(0x68); Wire.write(0x07); // move pointer to SQW address Wire.write(0x10); // sends 0x10 (hex) 00010000 (binary) to control register - turns on square wave Wire.endTransmission(); if (! RTC.isrunning()) { Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled RTC.adjust(DateTime(__DATE__, __TIME__)); } // Print a logo message to the LCD. display.setTextSize(1); display.setTextColor(BLACK); display.setCursor(8,0); display.println("tehnic.go.ro"); display.setCursor(20, 8); display.print("& niq_ro"); display.setCursor(16, 24); display.print("radio FM"); display.setCursor(5, 32); display.print("si ceas/data"); display.setCursor(0, 40); display.print("versiunea "); display.setTextColor(WHITE, BLACK); display.print("4.0"); display.display(); delay (5000); display.clearDisplay(); } void loop () { DateTime now = RTC.now(); unsigned char buf[5]; int stereo; int signal_level; double current_freq; unsigned long current_millis = millis(); if (Radio.read_status(buf) == 1) { current_freq = floor (Radio.frequency_available (buf) / 100000 + .5) / 10; stereo = Radio.stereo(buf); signal_level = Radio.signal_level(buf); display.setTextSize(2); display.setTextColor(BLACK); if (current_freq >=100) display.setCursor(0,16); else display.setCursor(12,16); display.print(display.print(current_freq)); // erase 2 number from right for (int x = 16; x < 30; x++) { display.drawLine(60, x, 84, x, WHITE); } display.setTextSize(1); display.setCursor(65,19); display.print("MHz"); display.setCursor(0,35); display.setTextSize(1); display.setTextColor(WHITE, BLACK); if (stereo) display.print("STEREO"); else display.print("MONO"); display.display(); delay (500); display.clearDisplay(); // draw a signal level triangle... display.drawLine(80, 30, 80, 45, BLACK); display.drawLine(80, 45, 50, 45, BLACK); display.drawLine(50, 45, 80, 30, BLACK); // draw an antenna display.drawLine(55, 32, 55, 40, BLACK); display.drawLine(56, 32, 56, 40, BLACK); display.drawLine(52, 32, 55, 36, BLACK); display.drawLine(51, 32, 55, 37, BLACK); display.drawLine(59, 32, 56, 36, BLACK); display.drawLine(60, 32, 56, 37, BLACK); int sl = signal_level; for (int x = 0; x < sl; x++) { display.drawLine(50+2*x, 45, 50+2*x, 45-x, BLACK); } } if (search_mode == 1) { if (Radio.process_search (buf, search_direction) == 1) { search_mode = 0; } } if (btn_forward.isPressed()) { last_pressed = current_millis; search_mode = 1; search_direction = TEA5767_SEARCH_DIR_UP; Radio.search_up(buf); delay(300); } if (btn_backward.isPressed()) { last_pressed = current_millis; search_mode = 1; search_direction = TEA5767_SEARCH_DIR_DOWN; Radio.search_down(buf); delay(300); } delay(100); // need for display time int zs = now.second()/10; int us = now.second() - zs*10; if (us > 2 ) { display.setTextSize(2); display.setTextColor(BLACK); display.setCursor(0, 0); { if ( now.hour() < 10) { display.print(" "); display.print(now.hour(), DEC); } else { display.print(now.hour(), DEC); } display.setCursor(20, 0); display.print(":"); display.setCursor(28, 0); if ( now.minute() < 10) { display.print("0"); display.print(now.minute(), DEC); } else { display.print(now.minute(), DEC); } display.setCursor(48, 0); display.print(":"); display.setCursor(57, 0); if ( now.second() < 10) { display.print("0"); display.print(now.second(), DEC); } else { display.print(now.second(), DEC); } } } else { display.setTextSize(1); display.setTextColor(BLACK); display.setCursor(16, 0); if ( now.hour() < 10) { display.print(" "); display.print(now.hour(), DEC); } else { // display.setCursor(16, 0); display.print(now.hour(), DEC); } display.print(":"); if ( now.minute() < 10) { display.print("0"); display.print(now.minute(), DEC); } else { display.print(now.minute(), DEC); } display.print(":"); if ( now.second() < 10) { display.print("0"); display.print(now.second(), DEC); } else { display.print(now.second(), DEC); } display.setCursor(10, 8); if ( now.day() < 10) { display.print("0"); display.print(now.day(), DEC); } else { display.print(now.day(), DEC); } display.print("/"); if ( now.month() < 10) { display.print("0"); display.print(now.month(), DEC); } else { display.print(now.month(), DEC); } display.print("/"); display.print(now.year(), DEC); } } Filmuletul, care prezinta, ce am scris mai sus, se numeste FM radio with TEA5767 and Arduino (III): 29.iun.2013 Am mai facut un filmulet, numit FM radio with TEA5767 and Arduino (IV) PS: Am conectat si senzorul DHT11 si am informatii despre temperatura si umiditate, dar pare prea "sorcova", asa ca nu am mai "bibilit" la sketch prea mult... /********************************************************************* This is an example sketch for our Monochrome Nokia 5110 LCD Displays Pick one up today in the adafruit shop! ------> http://www.adafruit.com/products/338 These displays use SPI to communicate, 4 or 5 pins are required to interface Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! Written by Limor Fried/Ladyada for Adafruit Industries. BSD license, check license.txt for more information All text above, and the splash screen must be included in any redistribution *********************************************************************/ // Nokia 5110 LCD (PCD8544) from https://code.google.com/p/pcd8544/ /* niq_ro ( http://nicuflorica.blogspot.ro ) case for Nokia 5110 LCD (PCD8544) - LPH 7366: For module from China, you must connect like this: * Pin 1 (RST) -> Arduino digital 6 (D6) * Pin 2 (CE) -> Arduino digital 7 (D7) * Pin 3 (DC) -> Arduino digital 5 (D5) * Pin 4 (DIN) -> Arduino digital 4 (D4) * Pin 5 (CLK) - Arduino digital 3 (D3) * Pin 6 (Vcc) -> +5V thru adaptor module (see http://nicuflorica.blogspot.ro/2013/06/afisajul-folosit-la-telefoanele-nokia.html ) * Pin 7 (LIGHT) -> +5V thru 56-100 ohms resistor (for permanent lights) or... other pin control * Pin 8 (GND) -> GND1 or GND2 */ // Date and time functions using a DS1307 RTC connected via I2C and Wire lib // original sketck from http://learn.adafruit.com/ds1307-real-time-clock-breakout-board-kit/ // add part with SQW=1Hz from http://tronixstuff.wordpress.com/2010/10/20/tutorial-arduino-and-the-i2c-bus/ // adapted sketch by niq_ro from http://nicuflorica.blogspot.ro // version 4.1 for FM radio with TEA5767 - http://www.tehnic.go.ro #include #include // Adafruit_PCD8544 display = Adafruit_PCD8544(SCLK, DIN, DC, CS, RST); Adafruit_PCD8544 display = Adafruit_PCD8544(3, 4, 5, 7, 6); #include // from https://github.com/andykarpov/TEA5767 #include #include // from http://arduino-info.wikispaces.com/file/view/Button.zip/405390486/Button.zip // TEA5767 begin TEA5767 Radio; double old_frequency; double frequency; int search_mode = 0; int search_direction; unsigned long last_pressed; Button btn_forward(11, PULLUP); Button btn_backward(12, PULLUP); // TEA5767 end #include #define DHTPIN A2 // what pin we're connected DHT11 #define DHTTYPE DHT11 // DHT 11 DHT dht(DHTPIN, DHTTYPE); #include "RTClib.h" RTC_DS1307 RTC; void setup () { Wire.begin(); Radio.init(); Radio.set_frequency(104.5); Serial.begin(9600); // sensor DHT for humidity and temperature dht.begin(); display.begin(); // init DHT done // you can change the contrast around to adapt the display // for the best viewing! display.setContrast(55); display.clearDisplay(); RTC.begin(); // RTC.adjust(DateTime(__DATE__, __TIME__)); // if you need set clock... just remove // from line above this // part code for flashing LED Wire.beginTransmission(0x68); Wire.write(0x07); // move pointer to SQW address // Wire.write(0x00); // turns the SQW pin off Wire.write(0x10); // sends 0x10 (hex) 00010000 (binary) to control register - turns on square wave at 1Hz // Wire.write(0x13); // sends 0x13 (hex) 00010011 (binary) 32kHz Wire.endTransmission(); if (! RTC.isrunning()) { Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled RTC.adjust(DateTime(__DATE__, __TIME__)); } // Print a logo message to the LCD. display.setTextSize(1); display.setTextColor(BLACK); display.setCursor(8,0); display.println("tehnic.go.ro"); display.setCursor(20, 8); display.print("& niq_ro"); display.setCursor(16, 24); display.print("radio FM"); display.setCursor(5, 32); display.print("si ceas/data"); display.setCursor(0, 40); display.print("versiunea "); display.setTextColor(WHITE, BLACK); display.print("4.1"); display.display(); delay (5000); display.clearDisplay(); } void loop () { DateTime now = RTC.now(); unsigned char buf[5]; int stereo; int signal_level; double current_freq; unsigned long current_millis = millis(); if (Radio.read_status(buf) == 1) { current_freq = floor (Radio.frequency_available (buf) / 100000 + .5) / 10; stereo = Radio.stereo(buf); signal_level = Radio.signal_level(buf); display.setTextSize(2); display.setTextColor(BLACK); if (current_freq >=100) display.setCursor(0,16); else display.setCursor(12,16); display.print(display.print(current_freq)); // erase 2 number from right for (int x = 16; x < 30; x++) { display.drawLine(60, x, 84, x, WHITE); } display.setTextSize(1); display.setCursor(65,16); display.print("MHz"); display.setCursor(65,24); display.setTextSize(1); display.setTextColor(WHITE, BLACK); if (stereo) display.print("ST"); else display.print(" "); // read value from DHT sensor int h = dht.readHumidity(); int t = dht.readTemperature(); display.setTextColor(BLACK); display.setCursor(6,32); display.setTextSize(1); display.print(h); display.print("%H"); display.setCursor(0,40); display.setTextColor(WHITE, BLACK); display.print("+"); display.print(t); display.print("^C "); display.display(); delay (500); display.clearDisplay(); // draw a signal level triangle... display.drawLine(80, 30, 80, 45, BLACK); display.drawLine(80, 45, 50, 45, BLACK); display.drawLine(50, 45, 80, 30, BLACK); // draw an antenna display.drawLine(55, 32, 55, 40, BLACK); display.drawLine(56, 32, 56, 40, BLACK); display.drawLine(52, 32, 55, 36, BLACK); display.drawLine(51, 32, 55, 37, BLACK); display.drawLine(59, 32, 56, 36, BLACK); display.drawLine(60, 32, 56, 37, BLACK); int sl = signal_level; for (int x = 0; x < sl; x++) { display.drawLine(50+2*x, 45, 50+2*x, 45-x, BLACK); } } if (search_mode == 1) { if (Radio.process_search (buf, search_direction) == 1) { search_mode = 0; } } if (btn_forward.isPressed()) { last_pressed = current_millis; search_mode = 1; search_direction = TEA5767_SEARCH_DIR_UP; Radio.search_up(buf); delay(300); } if (btn_backward.isPressed()) { last_pressed = current_millis; search_mode = 1; search_direction = TEA5767_SEARCH_DIR_DOWN; Radio.search_down(buf); delay(300); } delay(100); // need for display time int zs = now.second()/10; int us = now.second() - zs*10; if (us > 2 ) { display.setTextSize(2); display.setTextColor(BLACK); display.setCursor(0, 0); { if ( now.hour() < 10) { display.print(" "); display.print(now.hour(), DEC); } else { display.print(now.hour(), DEC); } display.setCursor(20, 0); display.print(":"); display.setCursor(28, 0); if ( now.minute() < 10) { display.print("0"); display.print(now.minute(), DEC); } else { display.print(now.minute(), DEC); } display.setCursor(48, 0); display.print(":"); display.setCursor(57, 0); if ( now.second() < 10) { display.print("0"); display.print(now.second(), DEC); } else { display.print(now.second(), DEC); } } } else { display.setTextSize(1); display.setTextColor(BLACK); display.setCursor(16, 0); if ( now.hour() < 10) { display.print(" "); display.print(now.hour(), DEC); } else { // display.setCursor(16, 0); display.print(now.hour(), DEC); } display.print(":"); if ( now.minute() < 10) { display.print("0"); display.print(now.minute(), DEC); } else { display.print(now.minute(), DEC); } display.print(":"); if ( now.second() < 10) { display.print("0"); display.print(now.second(), DEC); } else { display.print(now.second(), DEC); } display.setCursor(10, 8); if ( now.day() < 10) { display.print("0"); display.print(now.day(), DEC); } else { display.print(now.day(), DEC); } display.print("/"); if ( now.month() < 10) { display.print("0"); display.print(now.month(), DEC); } else { display.print(now.month(), DEC); } display.print("/"); display.print(now.year(), DEC); } } Schema de conectare devine:
Stai acasă și comandă online! Pe timp de carantină poți face comandă online cu livrare la domiciliu a oricărui produs. Vezi companiile care își continuă activitatea.
Acme Circuit is one of the most well known company in the specialization of PCB programming & testing in India. Request a quote now!
Sisteme de calcul Un calculator este un dispozitiv electronic de calcul pentru prelucrarea datelor. Un astfel de dispozitiv rezolvă probleme într-un timp scurt și cu cheltuieli minime față de alte moduri de rezolvare a acestora. Există mai multe tipuri de calculatoare în funcţie de diferite criterii de clasificare: a) după…
Am testat un mic amplificator cu MJE2055 si 3055. Este bazat pe materialul de la darkamp pe care l-am chinuit să scot un semnal dreptunghiular cât mai bun. Schema este: Și câteva imagini aferente testelor. Cablajul a ieșit 5x4cm. Răcirea este pe un cooler de cpu AMD. Cele mai bune rezultate le-am scos pe TL080 si LM308 varianta de IPRS
Pentru un panou solar am testat o altă variantă de step-up/down cu UC3843 ce mi-a atras atenția urmărind un clip video al unui rus. Detalii mai multe sunt prezentate de un conațional de-al său aici, pagină ce se poate traduce foarte din chrome. Schema prezentată de acesta este: Eu am utilizat un IRF530 iar pentru alimentarea lui UC3843 am pus un LM7809, în plus am mai adăugat un condensator de 100nF de la pinul 7 la GND, C5=1nF, iar R5 este un trimer de 50KOhm pentru ajustarea frecvenței. Modificările sunt ca urmare a simulării cu micro cap conform cu transformatorul ce mi-a ieșit mie. Cablajul propus de AKA arată ca mai jos: Și cablajul modificat de mine. Valoarea inductanței; In final a ieșit astfel: Frecvența de lucru și tensiunea maximă dorită de mine pentru o intrare între 9V-18V Consumul in gol pentru ieșire de 36V: Deși nu ma interesa, am verificat tensiunea minimă de la care pornește (impulsurile sunt in pinul 4): Fișierele sunt urcate în cloud.
Alege sa lucrezi cu o echipa profesionala care sa te ajute in proiectele tale de debitare laser pentru a atinge performanta. Tăierea cu laser este un proces de tăiere fără contact pentru materiale metalice și nemetalice. Fie metal, plastic, sticlă, ceramică, lemn sau hârtie – o mare varietate de materiale pot fi tăiate cu laser. Chiar și materialele complexe în formă de placă sau tridimensionale pot fi tăiate fără aplicarea de forță și cu toleranțe precise. Ce este tăierea cu laser? Laserul a devenit de mult un instrument indispensabil de înaltă tehnologie în industria de producție de astăzi. Tăierea cu laser în special poate fi cu greu depășită în ceea ce privește precizia. Permite prelucrarea fără contact a aproape tuturor grupelor de materiale - o mare varietate de sarcini de tăiere pot fi efectuate la cel mai înalt nivel de calitate. Fie că sunt materiale în formă de placă sau geometrii tridimensionale - laserul decupează sutimi de toleranțe în diverse materiale precum metal, plastic, hârtie sau piatră. Tăierea cu laser este deosebit de economică în domeniul prelucrării tablei: sunt posibile o mare varietate de contururi și viteze mari de tăiere. Cum funcționează tăierea cu laser? Laserul poate tăia, suda, găuri sau eticheta. Un fascicul laser grupat, care este generat folosind gaz sau cristal, servește drept instrument de tăiere. Fasciculul de lumină este intensificat de un sistem de lentile, un fel de sticlă care arde și concentrat cu o precizie maximă pe o zonă mică și mică a piesei de prelucrat, rezultând o densitate mare de energie. Materialul se topește sau se vaporizează acolo unde fasciculul de lumină îl lovește și începe procesul de tăiere. Materialul îndepărtat este suflat din tăietură de un jet de gaz care iese din duză împreună cu fasciculul laser. Puterea laserului și viteza de tăiere pot fi adaptate în mod flexibil la materialul de prelucrat și la grosimea curentă a materialului. Debitarea cu laser executata de catre echipa Laser Processing este realizata cu utilajer performante - Trumpf si cu muncitori cu experienta. Astfel orice proiect indiferent de cat de complex este va fi realizat foarte precis si bine. www.laserprocessing.ro
Tutorial para montar una fuente de alimentación casera con una fuente de ordenador ATX, de alta potencia y bajo coste, para nuestros proyectos (1/2)
2N2925 Characteristics / ParametersComponent CharacteristicsComponent ParametersType Designator2N2925Transistor OutlinePackage TypeCASE: TO-92FamilyBJT, NPNMaterial of TransistorSiliconPolarityNPNMaximum Power Dissipation600mW, Maximum Collector to Base Voltage25VMaximum Collector to Emitter Voltage25VMaximum Emitter Base Voltage5VMaximum Collector Current500mAMinimum hFE235Maximum hFE470FunctionAmplification / SwitchManufacturersCentral Semiconductor Corp.New Jercy Semiconductor Products Inc.
La solicitarea unui prieten am pornind de la articolul anterior si am adaptat codul initial pentru afisare pe display OLED I2C. Urmeaza a fi ascuns intr-un radio decedat. Am renuntat la afisarea canalului in favoarea unei dimensiuni mai mari pentru frecventa. Din informatiile oferite de functia RDS am renuntat la afisarea orei pentru ca nu am gasit nici un post de radio care sa transmita ora actualizata. Restul a ramas cam la fel, adica la apasarea butonului meniu trecem din acord automat, in manual, si apoi in reglaj volum. Schema cu utilizare cu oled devine: Eu am folosit un arduino micro pe care l-am alimentat la 3,3V Codul actualizat este pe github, impreuna cu biblioteca lui RDA5807 care este utila in aceast caz doar pentru functionarea functiei de RDS. Partea initiala de cod pentru RDS nu am reusit s-o adaptez pentru o afisare corespunzatoare. Imagini de la teste: Pe display in dreapta sus am afisat nivelul semnalui receptionat. Ca antena acum are un fir de circa 10cm Deoarece m-a secat breadboard-ul utilizat (pene de contact) am procedat la lipirea firelor de conexiune Update: Confom unor observatii library-ul folosit era setat pe 128/32, motiv pentru care afiseaza elativ ciudat. Deci fisierul Adafruit_SSD1306.h trebuie editat sa arate astfel: /*========================================================================= SSD1306 Displays ----------------------------------------------------------------------- The driver is used in multiple displays (128x64, 128x32, etc.). Select the appropriate display below to create an appropriately sized framebuffer, etc. SSD1306_128_64 128x64 pixel display SSD1306_128_32 128x32 pixel display SSD1306_96_16 -----------------------------------------------------------------------*/ #define SSD1306_128_64 // #define SSD1306_128_32 // #define SSD1306_96_16 /*=========================================================================*/ Insa in aceasta situatie codul devine prea mare (110%). asa ca m-am mobilizat si am adaptat codul scris initial pentru RDS ocazie cu care am renuntat la biblioteca RDA5807 pe care am folosit-oinitial doar pentru functia RDS. Astfel am reusit sa compilez codul pentru arduino micro. "Design-ul" a devenit:
Keeping quantum computers' memories stable isn't easy, but researchers found a way to make them last up to 10 minutes using the rare earth element holmium.
Pentru sursa din articolul anterior am facut un indicator tensiune/curent cu Attiny85 pe un LCD 8x2 . Initial la teste am plecat cu un LCD 16x2 care a cedat si care oricum nu incapea unde voiam sa-l pun. Sursa de inspiratie a fost blogul lui Nicu, (nu voi intra in detalii ca sint suficiente cele oferite de Nicu) unde am facut urmatoarele modificari care de fapt se pot observa si in cod: Pe pinul 2 al lui Attiny85 am pus un divizor de tensiune cu o rezistenta de 470Ohm la masa si 100k catre tensiunea de masurat, pe pinul 3 am cules tensiunea de pe rezistenta de sunt din circuitul sursei. Partea de interfata cu LCD-ul a ramas identica, iar referinta am trecut-o pe intern. Pinul 1 reset a ramas legat la 5V printr-o rezistenta de 10K. Alimentarea lui Attiny85 am luat-o de firul violet al sursei (+5V). Se poate observa din imaginile de mai jos ca erorile de afisare sint relativ mici. Citeva imagini de la teste: Montajul urmeaza sa fie strins pe un cablaj imprimat Aici este sursa din articolul anterior la care i-am adaptat un modul cuTL494 fixat pe o lamela de radiator And ready for work Si o varianta de cablaj imprimat In teste:
This time I will make the power supply without the use of a conventional transformer to save costs, this symmetrical power supply 350W power...
Célula fotoeléctrica muy fácil de hacer con solo 2 transistores que enciende las luces de casa cuando llega la noche. También se puede usar como barrera fotoeléctrica.
This is a pulse generator with adjustable duty cycle made with the 555 timer IC. The circuit is an astable multivibrator with a 50% pulse duty cycle. The
Cet article présente un schéma de filtre actif audio à 3 voies avec fréquences de coupure ajustables ainsi que les détails de conceptions et les calculs