Jump to content

Najbolji članovi

Popularan sadržaj

Showing content with the highest reputation on 04/19/18 u svim oblastima

  1. Fukushima

    Poredjenje Aleph pojacavaca

    Zbunjujete ljude koji nesto hoce da saznaju, tim skretanjima sa teme u nebuloznim pravcima cisto da bi se nesto napisalo. Kakve veze imaju "ccs diode" kada se raspravlja o izlaznom stepenu? Ovo govorim iz licnog iskustva, da bih saznao informaciju x na forumima ovog tima, u koliko si pocetnik, treba ti mnogo izgubljenog vremena za registrovanje i odbacivanje smeca.
    1 poen
  2. Danas mi se vratile laste u stara gnezda na zgradi. Lepo. Gledam ih sa terase kako rade, cirkam lager zajecarski, pojacao muziku u susednoj sistem sobi, zasad niko nema zamerke zbog radi buke. Slusam sad ovo, mozda zvuci cudno uz pricu o godisnjem povratku lasti u Pekam ali album je 5* by Trotter, pa da ga pomenem na internetu... Ovaj lik je, msm, uvek snimao albume za slusanje u sumrak ili dark night sessions. Covek je, inače, za one koji su nemači pojma, genije. Sent from my SM-G361F using Tapatalk
    1 poen
  3. Проблем #2 Раније сам писао да сам имао проблеме са имплементацијом CD4066B: Моја имплементација је радила, али мање него идеално. Нипошто за решење на дуже стазе. Решење Након дискусије, и предлогa који је @guja011 дао: Заменио сам CD4066B за четири BC337 транзистора, у комплету са 1кО отпорницима на сваку од транзисторских база: Нема цурења, нема проблематичних понашања, ради како је оригинално замишљено. Редизајнирао плочицу, нови сет Гербера и breadboard слике на GitHub-у. Код је, као и увек (3d63b2a), овде: https://github.com/stojnev/dwr-controller
    1 poen
  4. skrstic

    6V6 Salas Preamp by Alex

    I ti si čuo isto ko i ja puta?
    1 poen
  5. Унапређење #4 Рутине за чување укупног времена свирања. Позадина Како већ погон користи флексибилну (читај програмабилну) контролу, једна од задњих опција које сам хтео имплементирати је снимање укупног времена свирања. Ово је, бар за мене, прилично корисна функција за праћење старости звучнице. Ова могућност би морала укључити бар следећe: Снимање укупног времена ротације; Приказ тог времена у формат који се лако чита (нарочито на минијатурном дисплеју); и, Брисање (ресетирање) укупног времена. Приступ Типично, Ардуино ресетира све параметре (променљиве) при сваком искључивању. На срећу, Nano има ЕЕПРОМ (non-volatile) величине једног (1) килобајта, што би требало бити довољно за ову фукнционалност. Имплементација је прилично једноставна: При сваког извршења главне петље, упоређује се број тикова (ticks) са ранијом вредности; Кад разлика тикова надмаши 1 секунду, у ЕЕПРОМ се упише нова вредност; Кад се напуни слот ЕЕПРОМ-а, показивач се повећа. Код Сва логика око снимања се налази унутар процедури checkTimer(): void checkTimer() { if (timerCurrentMicros == 0 && timerPreviousMicros == 0) { timerCurrentMicros = micros(); timerPreviousMicros = timerCurrentMicros; } else { timerCurrentMicros = micros(); } int timerSeconds = (int) ((timerCurrentMicros - timerPreviousMicros) / 1000000); if (timerSeconds > 0) { for (int e = 0; e < timerSlots; e++) { byte valueX = EEPROM.read(e); timerX[e] = (int) valueX; } timerPreviousMicros = timerCurrentMicros; int changeX = timerSeconds; for (int e = 0; e < 4; e++) { timerX[e] += changeX; if (timerX[e] > 255) { changeX = timerX[e] - 255; timerX[e] = changeX; changeX = 1; } else { changeX = 0; } EEPROM.write(e, timerX[e]); } } } А регулира се уз помоћ пар променљива: unsigned long timerCurrentMicros = 0, timerPreviousMicros = 0; const int timerSlots = 4; int timerX[timerSlots]; const int timerMessageWait = 5000; long timerMessage = 0; boolean timerShown = false; Калкулација укупног времена је у процедури calculateRunTime(): void calculateRuntime(int & calcX1, int & calcX2) { long runtimeX = 0; for (int e = 0; e < timerSlots; e++) { int tempX = (int) EEPROM.read(e); if (tempX > 0) { runtimeX += tempX * pow(255, e); } } calcX2 = (runtimeX / 60) % 60; calcX1 = (int) (runtimeX / 3600); } Ресетирање тајмера (ЕЕПРОМ-а) је у процедури clearTimer(): void clearTimer() { if (activeSpin || !timerShown) { return; } writeToDisplay(5); for (int e = 0; e <= timerSlots; e++) { EEPROM.write(e, 0); } } Рад За приступ тајмеру, тахометар мора да буде у stand-by стању: Дужи притисак на дугме за промену брзине показује укупно време; Након 5 секунди дисплеј се враћа на stand-by мод; Дужи притисак на дугме за укључивања ротације док је дисплеј у моду првог корака (показано укупно време) ресетира тајмер. Приказ показује укупан број сати и минута, због ограничења простора на дисплеју: Закључак Ово је задње планирано унапређење. Будуће промене су планиране једино у склопу оддржавања. Код је, као и увек (4f0184d), овде: https://github.com/stojnev/dwr-controller
    1 poen
×
×
  • Kreiraj novo...