Author Archives: Administrator

ARM:0010 STM32CubeMX- USB 2 COM dongle

Taigis. Karantinas ir po gana daug dienų degradacijos nutariau dar kiek pasinagrinėti tą MX kubą ir pagaminti USB į serial adapterį. Taip jau gavosi, kad prigriebiau kažkada tokių PCB su STM32F102 procesoriuku. Kas tai buvo originaliai aš nežinau. Tačiau čia yra “košerinis” USB ir RS485/422 išvadas. Todėl eksperimentams kaip tik:

STM32F102 as USB to UART/COM dongle
Prigriebiau tik tiek. O buvo dešimtim. Tokiom nesulaužytom plokštėm. Per vidurį išvesti programavimo ir kitokie signalai. Ant popieriaus parašytas pinoutas. Todėl ten pajungiam STLink programatorių. O su raudonu ir žaliu laideliu uždarom serial porto kilpą. Ten diferencialinis signalas, todėl du laidai- pliusinis ir minusinis.

Taigis pradedam…
Continue reading →

Ausys namordnikui

Darbe turime “full face” respiratorius su elektrinio ventiliatoriaus pumpuojamu oru. Tai totalus overkill. Turim ir paprastus cheminius 3M respiratorius su “bajonet” filtrais. Anie irgi biški overkill. O paprastas ansnukis (skudurinė, medicininė kaukė) ilgai panešiojus žiauriai pjauna per ausis. Pas 3M respiratorių gana ergonomiškai padaryta- viena guma eina aplink galvą žemiau ausies, o viršutinė dalis turi svorio paskirstytoją ir stabilizatorių. panašus reikalas reikalingas ir medicininiai kaukei. Tačiau matyti modeliai man pasirodė per siauri ir turėtu slysti.

Šis variantas vos telpa į mano 3D printerį ir beveik kopija nuo 3M respiratoriaus. Žiedas galėtu būti ir didesnis. Jis turi būti lankstus.

3d printed face mask holder to save your ears

Dowloadinti 3D modelį, stl ir aml formate.

ARM:0009 STM32CubeMX ir kaip jis valgosi

Yra tokia kiniška plokštelė Bluepill, su STM32F103C8 procesoriuku. Ji kogero pigiausia iš visų. Procesorius ten gana galingas ir šiuolaikinis, todėl kad pamirksėti LEDu, tenka pripumpuoti kalną softo. Mikroschemos gamintojas pats irgi suprato, kad su mikroschemos (ir kitų serijų taip pat) konfiguravimu galima susipainioti galutinai. Todėl sukūrė savo “duino”- STM32CubeMX. Pirmosios programos versijos buvo bugavotos ir labai žalios. Bet laikas bėga ir programa jau daug maž veikianti ir suprantama paprastam vartotojui. Netgi man. Kad veiktu pilnai, mums reikia, kad kompiuteryje veiktu gcc skirtas arm procesoriams. Tai irgi žiaura bėda. Mano didžiajam kompiuteryje (stacionariam) tų gcc gyvas velnias ir vieną dieną jie taip susipainiojo, kad kažkodėl ARM gcc nebeveikia. Gerai, kad yra atsarginis kompiuteris ir ten viskas veikia.

Kaip sakoma, geriau vieną kartą pamatyti, todėl žiūrom:
SM32CubeMX blue pill stm32f103c8
Pasileidžiam programą ir pasirenkam procesoriuką (STM32F103C8). Du kartus baGstelim ant dešinėje esančio procesoriaus kodo. Galima netgi pasirinkti pagal turimą devboardą, bet man atrodo, kad bluepill ten nėra.
Continue reading →

COVID-19

Nesirkit ir biški galvokit. Šiandien važiavau automobiliu į kaimą ir kiek stebėjau žmones. Tik 3 žmonės buvo su kaukėm. Mačiau kad priemiestiniam mikroautobuse važiuoja pensininkai be kaukių ir pats vairuotojas nieko neužsidėjo. Pats turiu 79 metų motiną ir suprantu kokie kvaili ir užsispyre tie pensininkai. Pabandykit jiems išaiškinti, kad viruso mirtingumas skaičiuojamas tada kai jis gydomas- ten visokios priemonės prieš plaučių uždegimą ir panašiai. Kaip manot, kiek pas mus yra intensyvios terapijos lovų ir kiek yra plaučių ventiliavimo aparatų. Męs ne kinai, per 10 dienų naujos ligoninės nepastatysim.

Net jei ir galvojat, kad tai nesamonės, pagalvokit logiškai- kas blogiau, pasirodyti kvailiu ir persisaugoti, ar susirgti ir susargdinti savo artimuosius. Kas geriau- truputis gėdos ar laidotuvės.

Manau visi turim suvokti šias taisykles:

  1. Vaistų nėra, česnakas nepadės.
  2. Vaikštom su pirštinėm, kad ir megztom- tai apsisaugom nuo debilno įpročio liesti savo veidą ir čiulpti nagus.
  3. Dedam veido kaukes, net ir tos kurios nepadeda. Kiekviena priemonė mažina TIKIMYBĘ susirgti. Ypač tai svarbu tiems jauniems kurie gal serga lengva forma ir gali spjaudytis virionais. Gal net nešiojam akinius.
  4. Plaunam rankas su muilu. Netgi neteisingai plaunamos rankos mažina tikimybę. Naudojam dezinfekcinius skysčius, kad ir degtine ar net izopropilo alkoholį.
  5. Nevaikštom po viešas vietas- visokius sporto klubus, kabakus ir savivaldybes.
  6. Nevažinėjam visuomeniniu transportu jei yra gilmybė. Šikt ant Gretos Tunderbolto.
  7. Tampame intravertais ir nedalyvaujam, nesiliečiam ir panašiai su kitais žmogėnais. Jei galima saviizoliacija, tai ją ir darom- labas torrentai, youtube ir pornhubas.
  8. Valgom vitaminus ir vėdinam kambarius.
  9. Neleidžiam tikinčiams eiti į bažnyčias.

Gal net ištraukiam “kvarco” lempą (UVC baktericidinę lempą) jei turim.

Ir laukiam R0 skaičiaus sumažėjimo iki mažiau vieno.

Atari 2600 jr

Einu kartą per lobynus ir matau raritetą- Atari 2600 (jr) PCB. Pirmiausia ji buvo plaktuku išlupta iš korpuso, o poto kažkas dar ir užlipo su kojom. Bet šiuolaikinė medicina viską gali…

Atari 2600 jr
Deja, pajungus maitinimą, vaizdelis neatsirado. Nors procesoriukas kaip ir veikė, bet pastoviai striginėjo. Tikslesnė analizė parodė, kad CPU A7 (rodos) koja “kabo ore”. Tai buvo labai keista. Išlitavus viskas paaiškėjo:
Atari 2600 jr
Procesorius perskilo per pusę, tačiau kristalas nepasižeidė. Ir nepasižeidė visos kojos išskyrus vieną.

O toliau banalu- pirmiausiai pirkau pigiai iš kino CPU, poto buvo pinigai atgal, neigiami atsiliepimai, skundai ebay. Poto buvo dar vienas pirkimas jau iš Vokietijos (bet irgi pridurkas- užsienio siuntimas jam kainavo kosmosą. Teko naudotis virtualiu adresu.) ir aparatas kaip ir veikia. Tiesa, reikia padaryti teisingą video signalo stiprintuvą.

ZX LCD

Besitvarkant daiktus (čia retas reiškinys), radau savo seną eksperimentą su FPGA/CPLD ir LCD (tik ekranas jau buvo kitas). Tas eksperimentas buvo nedabaigtas dėl žinių, noro ir kantrybės stokos. Dabar visko kiek daugiau, tai nudraskiau nereikalingas detales ir pridėjau naujų:
ZX Spectrum in CPLD LCD mode
Tai labai panaši sistema kaip ir paprastam ZX Spectrum CPLD/VGA. Tik pasikeitė keletas esminių koncepcijų:
Senesnėje versijoje atmintis buvo bendra- procesorius ir VGA buferis naudojosi ta pačia atminties mikroschemą, todėl CPLD stengėsi atlikti atminties arbitro (MMU) darbą ir laiko rėžiais (time slot) prileisdavo tai CPU tai VGA prie tos pačios atminties. Ši schema kiek kitokia- pirmiausia, naudojama atskira atmintis procesoriui- Toshiba TC551001BPL-85. Tai žymiai lėtesnė atmintis, tačiau ji skirta tik procesoriui. VGA ar LCD kontroleris visiškai nesikreipia į ją. LCD/VGA kontroleris tik sėdi ant duomenų ir adreso linijų ir stebi jam reikiamas kombinacijas- jei pastebimas rašymas į video atminties plotą, duomenys dubliuojami ir LCD/VGA atmintyje. Taip pat stebim Z80 IN/OUT veiksmus, nes mums reikia vaizduoti pajungta klavietūrą, magnetofoną ir garsiakalbį.

ZX Spectrum in CPLD LCD mode
Tačiau tai vienspalvis LCD monitorius, 320 x 240 taškelių. Duomenys pumpuojami po 4 bitus iš karto, todėl sistemos dažnis netgi kiek lėtesnis. Tačiau labai lėtinti negalima, nes kažkur prie 40Hz kadrų dažnio labai matosi vaizdo mirgėjimas. Dabar LCD veikia virš 60Hz dažniu. Deja, jis labai inertiškas- “border” efektai susilieja…

ZX Spectrum in CPLD LCD mode
O judantys objektai beveik nesimato.

Aišku šiame variante visiškai ignoruojami spalvų atributai (“flash” veikia), todėl žaidimų vaizdeliai keistoki. O borderį padariau dryžuota, kad kiek nors skirtusi “spalvos”.

Šis antras maketas buvo surinktas ne dėl ZX spectrum. Aš galvoju čia sudėti kokį nors kitą retro kompiuterį, bet ZX yra vienas iš paprasčiausių, tai testavimui suėjo.
Schemotechnika visiškai paprasta- adresų šyna po stiprintuvo 2x SN74HCT541N (nelabai jis reikalingas) eina į CPLD, ROM, RAM. Tas pats, tik be buferio, padaryta su duomenų šyna. Viskas “sumontuota” CPLD mikroschemoje. Ten aišku tebeliko keletas klaidų, tačiau sistema veikia.

Ir aišku visi failai:
Intel-Altera Quartus CPLD source code for ZX Spectrum LCD version.

Jei jums nepasileido, tai atminkite, kad kai kurie Z80 CPU reikalauja, kad jų clock būtų 5Vpp, o ne TTL lygio.

LCD ekranas iš senoviško dauginimo aparato: EDMMPU3BDF, jo pinout:


1. ON/OFF
2. n.c.
3. VS
4. HS
5. pix CLK
6. Vcc, +5V
7. GND
8. Vee, -25V
9. D3, pixel data
10. D2
11. D1
12. D0
13. Vee, same as 8.
14. contrast.