Latest Publications

I2C cu Arduino (AT24C64)

Am gasit printr-o cutie mai veche niste componente, printre care si un EEPROM serial AT24C64 pe care m-am gandit sa-l leg la Arduino (bineinteles). Scopul principal e sa folosesc montajul pentru a testa un OpenBench Logic Sniffer. Memoria foloseste pentru comunicatie bus-ul I2C (two-wire).

Pinii memoriei seriale sunt dispusi astfel:
AT24C64 Pinout

Semnificatia pinilor este urmatoarea:
AT24C64 Pin Functions
Pinii A2, A1 si A0 sunt folositi pentru a seta adresa dispozitivului, permitand conectarea a pana la opt memorii simultan, pe cele doua fire ale bus-ului I2C (SDA si SCL). Modul de stabilire a adresei este redat mai jos:
AT24C64 Device Address
Astfel, daca am conecta pinii A0, A1 si A2 la VCC, adresa ar fi 1010111 (binar), adica 57 (hexazecimal) sau 87 (zecimal). Daca am conecta numai pinul A2 la VCC si pinii A0 si A1 la GND, am obtine 1010100b, adica 0×54 (hexa) sau 84 (zecimal). Toti cei trei pini pot fi de asemenea lasati neconectati si asa voi proceda in continuare, pentru simplitate. In acest caz, A0, A1 si A2 au valoarea 0, iar adresa memoriei este 0×50.

Pinul WP (7), atunci cand este legat la GND, permite operatiile de scriere, in timp ce atunci cand este legat la VCC blocheaza operatiile de scriere. Cand este lasat neconectat, operatiile de scriere sunt permise, prin urmare il vom lasa neconectat.

Avem nevoie astfel de:

  • o memorie AT24C64 (sau mai mica AT24C32, sau mai mare AT24C128, AT24C256 etc.)
  • doua rezistoare (eu am ales 4k7, probabil ar fi mers si alte valori apropiate)
  • un breadboard mic
  • cateva fire (“jumper wires”)
  • bineinteles, un Arduino

Arduino AT24C64
Pregatim mai intai alimentarea, conectand un fir rosu la pinul 8 si un fir negru la pinul 4.
AT24C64 I2C
Adaugam rezistoarele de pull-up, de la pinii SDA (5) si SCL (6) la VCC (catre pinul 8).
AT24C64 Arduino
Legam firele pentru bus-ul de comunicatie, verde la SDA si alb la SCL.
AT24C64 ATmega
Legam pinul SDA (firul verde) la pinul SDA de la Arduino (analog 4) si pinul SCL (firul alb) la pinul SCL de la Arduino (analog 5). Am folosit un montaj pe care l-am prezentat pe aici, cu o clona Arduino produsa de DFRobot si un ecran LCD 2×16. Alimentarea memoriei se face de pe breadboard-ul cu LCD-ul.
Arduino I2C
Pentru partea de soft gasiti un exemplu aici. Sau puteti downloada varianta modificata de mine, care scrie un string in memorie si apoi il citeste caracter cu caracter si il afiseaza pe LCD, cu o mica pauza dupa fiecare caracter.
ATmega I2C
Mai jos am pus un clip care arata cum functioneaza programul.




Download: EEPROM LCD Sketch

LCD 2×16 cu Arduino

Desi au devenit accesibile ca pret dispozitive mult mai performante de afisare, afisajele cu cristale lichide raman destul de interesante si utile pentru electronistii amatori.

In randurile urmatoare voi prezenta pas cu pas modul de conectare a unui LCD 2×16 la Arduino, avand ca scop folosirea librariei LiquidCrystal (care vine cu Arduino IDE) fara nicio modificare sau configurare software.

Avem nevoie de:

  • Arduino – eu folosesc aici o varianta produsa de DFRobot, cu ATmega328
  • un rezistor semireglabil de 10K
  • un mini-breadboard
  • un LCD 2×16 (compatibil HD44780)
  • mai multe fire electrice cu pini (“jumper wires”)

Arduino LCD - Componente
De la stanga la dreapta privind spre display, pinii sunt urmatorii:
Afisaj LCD HD44780 Pinout
Schema de conectare este urmatoarea:
Schema Arduino LCD

(sursa: http://arduino.cc/en/uploads/Tutorial/lcd_schem.png)

Pentru inceput, fixam rezistorul semireglabil undeva pe breadboard:
Arduino LCD 2x16 - Semireglabil
Conectam pinul 5V si GND de la Arduino la breadboard (firul rosu este 5V, iar cel negru de pe exterior masa) si apoi conectam +5V la pinul 15 al LCD-ului (firul alb) si GND la pinul 16 (firul negru). Atentie! La unele ecrane pinii Bklt+ si Bklt- (backlight) sunt inversati, verificati documentatia sau marcajele. In acest moment, daca Arduino este alimentat, LCD-ul ar trebui sa se aprinda.
Arduino LCD - Alimentare VCC, GND
In continuare realizam urmatoarele conexiuni:

  1. GND la pinul 1 al LCD-ului
  2. +5V la pinul 2 al LCD-ului
  3. GND la unul dintre pinii exteriori ai rezistorului semireglabil (nu are importanta care)
  4. +5V la celalalt pin exterior al rezistorului
  5. pinul central al rezistorului la pinul 3 al LCD-ului (firul albastru)

Acum ar trebui sa devina vizibil primul rand de caractere al LCD-ului.
Atmega LCD - Contrast
Din semireglabil se poate ajusta contrastul.
Arduino LCD - Test
Ar trebui ca primul rand de caractere sa fie bine definit. Daca nu obtineti ceva similar, nu mergeti mai departe. Verificati din nou toate conexiunile si ajustati din semireglabil.
Arduino LCD - Test
Pinul RS “spune” afisajului daca informatia primita pe pinii de date (D0-D7) trebuie afisata sau daca este vorba de o comanda (de exemplu mutarea cursorului). Vom conecta pinul RS (4) al LCD-ului la pinul D12 de pe Arduino.
Arduino LCD - RS
Pinul RW (5) spune display-ului daca microcontrolerul vrea sa scrie in LCD (de exemplu sa afiseze date sau sa dea comenzi de mutare a cusorului) sau sa citeasca date din LCD (situatie mai putin comuna). Libraria LiquidCrystal nu citeste date din LCD ci numai transmite date catre acesta, prin urmare acest pin poate fi legat la masa, ca in imaginea urmatoare (firul negru).
Arduino LCD - RW
Pinul E (enable) informeaza LCD-ul ca datele transmise de microcontroler sunt gata pentru a fi citite si va fi legat la pinul D11 de pe Arduino (firul alb):
Arduino LCD - Enable Pin
Pentru a transmite date afisajelor de tip HD44780 se pot folosi 8 pini (D0-D7) sau numai 4 pini (D4-D7). Libraria LiquidCrystal foloseste al doilea mod de comunicatie, cu numai 4 pini, prin urmare vom conecta pinii D4-D7 ai LCD-ului la pinii D5-D2 de pe Arduino, ceilalti fiind lasati neconectati, astfel (firele verzi):

  • LCD D4 (11) — Arduino D5
  • LCD D5 (12) — Arduino D4
  • LCD D6 (13) — Arduino D3
  • LCD D7 (14) — Arduino D2

Arduino LCD - Hello World
Cu aceasta am incheiat conectarea. Deschideti IDE-ul Arduino, mergeti la Examples -> LiquidCrystal -> HelloWorld si uploadati sketch-ul respectiv. Daca totul a mers bine, veti obtine ceva similar cu imaginea de mai sus. Succes!

Aveti mai jos si un clip care prezinta aproape toate exemplele care vin cu libraria LiquidCrystal (Autoscroll, Blink, Cursor, Display, HelloWorld, Scroll, SetCursor, SetDirection).

HC-2000 pe monitor LCD (Convertor RGB-VGA)

Faptul ca sunt atat de pasionat de calculatoarele vechi produse de I.C.E. Felix a devenit se pare atat de cunoscut incat reprezentantii unui club de fotbal m-au contactat recent pentru ca HC-ul pe care il foloseau pentru controlul tabelei de marcaj se imbolnavise. Trebuia sa ma laud, ce sa fac :)

Totusi, in ultimul timp mi-am neglijat complet aceasta pasiune, motivul principal fiind lipsa unui mijloc mai comod de afisare. Monitorul de HC e prea mare pentru a fi tinut pe un birou si asa destul de ocupat, afisarea pe TV e de asemenea incomoda din motive evidente. Am testat mai demult utilizarea unui TV tunner, cu rezultate nesatisfacatoare. Solutia a ramas un convertor RGB – VGA (CGA la VGA), insa abia de curand am gasit unul la un pret decent.

Si… iata rezultatul:
HC2000 Monitor VGA (LCD)
HC-ul 2000 afiseaza perfect pe un monitor LG FLATRON L1953TR.
I.C.E. Felix HC-2000
Convertorul pe care l-am folosit (GBS 8220) vine intr-un pachet destul de sarac, insotit numai de un cablu adaptor, fara alimentator, fara carcasa, si necesita putina munca pentru “instalare” si configurare.
Convertor CGA RGB VGA
Are nevoie de un alimentator 5V – 2A si, pentru a fi folosit la HC, de o mufa tip port serial, tata, cu 9 pini, ca aici. Conform manualului, legaturile care trebuie facute sunt urmatoarele:

Red Video to Red Wire (R)
Green Video to Green Wire (G)
Blue Video to Blue Wire (B)
H. Sync to Gray Wire (S)
V. Sync to Yellow Wire (VS)
Ground Ref to Black Wire

Mufa VIDEO OUT de la HC are urmatoarele semnale (conform manualului HC-91):

1 - SHVL
2 - MASA
3 - R (rosu)
4 - G (verde)
5 - B (albastru)
6 - BRGH. (intensitate)
7 - VIDEO OUT
8 - Hsync
9 - Vsync

Conform manualului convertorului CGA-VGA, butonul AUTO ar trebui sa detecteze automat sursa de intrare, insa la mine nu a functionat si a trebuit sa apas repetat butonul SW pentru a selecta intrarea RGB.
GBS-8220 I.C.E. Felix HC 2000
Placa are un meniu de configurare pentru Imagine, Geometrie, Rezolutie si Limba (imi cer scuze pentru calitatea pozei).
RGB-VGA Menu
Deocamdata am testat cu trei HC-uri 2000 diferite, insa sunt sigur ca functioneaza la fel de bine si cu HC-90 sau HC-91. Voi reveni cu amanunte dupa ce testez, daca descopar ceva probleme. Pentru exemplificare am facut o poza in CP/M. Dupa cum se observa, calitatea afisarii este foarte buna, cu mult mai buna ca pe TV.
CP/M HC-91 - HC2000
Culorile mi se par de asemenea destul de bune (si se mai pot ajusta din meniul convertorului, precum si din cele trei rezistoare variabile de pe placa).
RGB - VGA
Daca ti-am trezit amintiri placute, da un click pe unul din icon-urile de mai jos, sa mai afle si altii. Daca te intereseaza un astfel de convertor si nu gasesti in alta parte sau ai nevoie de ajutor sa-l configurezi, lasa un comentariu.

Cum sa pui Windows 7 pe un stick USB

Avand de instalat Windows 7 pe un laptop fara CD-ROM m-am lovit de problema de a pune imaginea CD-ului de instalare pe un stick USB. As fi putut sa folosesc o unitate CD-ROM externa, dar cum nu aveam asa ceva si cum preturile la astfel de dispozitive pleaca de la 130 de lei, memoria flash USB a fost cea mai comoda solutie.

Exista pe internet diverse exemple de folosire a unei multitudini de aplicatii (printre care UNetbootin) pentru crearea unui stick USB bootabil, insa cele mai multe sunt destul de greu de urmarit. Pentru ca nu aveam dispozitia necesara sa urmez prea multi pasi si sa fac cine stie ce operatiuni complexe, am cautat putin si am gasit un program de la Microsoft care face exact acest lucru: pune o imagine Windows 7 pe o memorie USB. Aplicatia se numeste Windows 7 USB/DVD Download Tool si poate fi descarcata gratuit direct de la Microsoft sau de pe Download.com.

Pentru a face o copie a DVD-ului de instalare Windows 7 in format ISO se poate folosi ImgBurn, un utilitar foarte bun si pentru scrierea de CD-uri/DVD-uri, despre utilizarea caruia nu voi intra in detalii.

Odata ce aveti imaginea DVD-ului de instalare in format ISO, crearea stick-ului USB bootabil cu Windows 7 USB/DVD Download Tool este extrem de simpla, necesitand urmarea a 4 pasi.

Windows 7 USB Stick

Windows 7 USB Stick

Pasul 1: Alegeti imaginea ISO pe care vreti sa o scrieti pe stick, folosind butonul Browse.

Instalare Windows 7 de pe stick USB

Instalare Windows 7 de pe stick USB

Pasul 2: Apasati butonul USB device.

USB Stick Kingston 4GB

USB Stick Kingston 4GB

Pasul 3: Alegeti stick-ul USB pe care vreti sa scrieti imaginea. Aveti grija sa folositi o memorie suficient de mare (4GB ar trebui sa fie OK) si sa nu aveti date importante pe stick pentru ca evident va fi formatat si toata informatia continuta se va pierde. Odata aleasa destinatia, apasati butonul Begin copying.

Creare stick USB bootabil

Creare stick USB bootabil

Pasul 4: Asteptati, dureaza cateva minute, in functie de dimensiunea imaginii si de viteza dispozitivului USB.

Stick USB bootabil Windows 7

Stick USB bootabil Windows 7

Daca totul a mers bine, veti obtine un mesaj ca in imaginea de mai sus. Nu aveti decat sa introduceti stick-ul in laptopul pe care veti instala Windows 7 si sa-l setati sa booteze de pe USB (se poate face din BIOS sau apasand F8 – in cele mai multe cazuri). Si daca tot folositi un stick USB, puteti copia pe el si alte fisiere, cum ar fi driverele sau kit-ul de Office.

Laptop ieftin si bun HANNspree HannsBook SN12E2

De ceva vreme prietenul meu Doru cauta un laptop nici scump, nici ieftin, nici usor, nici greu, nici mare, nici mic, nici slab, nici prea puternic. Lasand gluma la o parte, cauta un laptop care sa fie usor de carat si cu care sa-si faca treaba. Pana la urma s-a hotarat la un laptop Hannspree cu procesor Intel® Pentium® Dual Core SU4100 1.3GHz si a decis sa ia un resigilat de la eMAG, care era cu 200 de lei mai ieftin, avand un pixel aprins verde in centru.

Laptop Ieftin cu Windows 7 - HANNspree

Laptop Ieftin cu Windows 7 - HANNspree

Trebuie sa recunosc, la inceput am fost destul de sceptic, fiind obisnuit cu branduri cunoscute – Toshiba, Alienware, Asus si altele asemanatoare – si evitand pe cat posibil sa dau banii pe produse “defecte”. Dupa ce am vazut laptop-ul insa, mi-am schimbat parerea atat de mult incat am cumparat si eu unul, tot resigilat. Probabil ca de acum inainte voi verifica de fiecare data stocul de resigilate, pentru ca se pare ca reducerea merita.

Vreau sa ma refer in primul rand la pixelii defecti, pentru care am primit reducerea de 200 de lei (fiecare). La rezolutia de 1366 X 768 si dimensiunea ecranului de 12.1″, pixelul este extrem de mic. Ne-a luat minute bune sa-i gasim. Pixelul meu rosu este sesizabil numai pe fundal negru, in rest este aproape invizibil si nu deranjeaza deloc. Pixelul verde de la Doru este si mai greu de identificat. Pe scurt, pentru 200 de lei reducere as fi acceptat si 4 pixeli morti in loc de unul.

In al doilea rand vreau sa mentionez ca pe pagina produsului la eMAG sunt deja o multime de comentarii, cele mai multe pozitive, ceea ce a ajutat mult la decizia de cumparare.

Netbook-urile au venit in ambalajele originale, cu toate accesoriile si foliile de protectie. Cutia originala purta sticker-ul “RESIGILAT eMAG” si era in stare perfecta.

HANNspree SN12E2 - un laptop ieftin si bun

HANNspree SN12E2 - un laptop ieftin si bun

Laptop la reducere - Resigilat eMAG

Laptop la reducere - Resigilat eMAG

Laptop Hannspree cu procesor Intel® Pentium® Dual Core SU4100 1.3GHz

Pachetul contine o husa destul de interesanta, care poate fi folosita si pe post de geanta. Fiind o husa totusi, nu exista loc suficient pentru alimentator, insa are un buzunar interior pentru cateva documente sau chiar stick-uri USB sau carduri de memorie.

Husa - Geanta Laptop

Husa - Geanta Laptop

Laptop-ul in sine vine foarte bine ambalat si are folii lipite pe ecran, pe capacul superior, pe rama ecranului si a tastaturii, pe touchpad si pe baterie. Fiind resigilat, bateria vine deja montata in notebook, dar cei de la eMAG au trimis chiar si ambalajul acesteia.

HANNspree Procesor Intel Pentium Dual Core SU4100

HANNspree Procesor Intel Pentium Dual Core SU4100

HANNspree SN12E2 Review

HANNspree SN12E2 Review

Pachetul mai contine alimentatorul – destul de mic si cu folia de protectie pe el, o laveta – necesara avand in vedere carcasa glossy care nu prea poate fi ferita de amprente, doua CD-uri – unul cu drivere Windows si altul cu sistemul de operare Linux preinstalat, un ghid rapid de instalare si certificatul de garantie.

Accesorii Netbook Resigilat

Accesorii Netbook Resigilat

Cablul de la priza de energie electrica la alimentator este putin cam rigid, as fi preferat ceva mai flexibil.

Desi pe site-ul eMAG la sectiunea “sistem de operare” scrie Free DOS, laptop-ul a venit cu FoxOS preinstalat, un linux bazat pe Fedora. Nu m-am jucat prea mult cu el dar in cele cateva minute de butonare am constatat ca se misca destul de bine si ca are minimul necesar pentru utilizarea de zi cu zi – editare de documente cu OpenOffice, browsing, IM etc.

FoxOS - HANNspree HannsBook SN12E2

FoxOS - HANNspree HannsBook SN12E2

Ce m-a determinat sa-mi iau si eu acest laptop ieftin a fost felul in care se misca Windows 7 pe el. Poate ca si din cauza ca asteptarile mele erau destul de mici, am fost impresionat. Windows 7 Starter porneste in mai putin de 40 de secunde si revine din modul “hibernate” in mai putin de 20 de secunde. Nu stiu daca e doar o impresie dar toate aplicatiile Office 2010 pornesc parca mai repede decat pe laptopul Alienware cu procesor Core i3 pe care il folosesc in mod curent.

In concluzie, nu-mi pare rau de banii pe care i-am dat. Este pur si simplu un laptop cu care iti faci treaba de zi cu zi, in conditii bune. Reducerea de 14% a ajutat la decizia de a cumpara si nu regret alegerea facuta. Pixelul defect este practic insesizabil in conditii normale.

Se pare ca nu numai eu sunt incantat, lucru dovedit de comentariile pozitive de pe eMAG dar si de opiniile de pe NotebookReview.com.

HTC Desire 2.29.405.5 firmware update

La mai putin de o luna de la ultimul update (2.29.405.2), iata ca apare altul. N-as putea sa spun ce aduce nou, dar se pare ca meniurile camerei foto sunt mai rapide si ca a disparut lag-ul de la filmarea/redarea HD.

HTC Desire 2.29.405.5

HTC Desire 2.29.405.5

Update-ul are 4.8 MB si e marcat “system enhancements”. Instalarea a decurs fara probleme, telefonul nu s-a plans nici macar de lipsa de spatiu, ca la update-ul trecut.

Desire 2.29.405.5 Download

Desire 2.29.405.5 Download

HTC Desire 2.29.405.5 Instalare Firmware

HTC Desire 2.29.405.5 Firmware Installation

Dupa instalare versiunea de soft este 2.29.405.5 CL293415.

2.29.405.5 CL293415

2.29.405.5 CL293415

Desire 2.29.405.5 Updated

Desire 2.29.405.5 Updated

NaviMATE 43T2, grab it while it’s cheap

Am scris acum ceva timp un tutorial despre cum se poate accesa direct Windows CE pe Serioux NaviMATE 43T2 (si probabil si alte device-uri GPS). GPS-ul mi l-am luat de la eMAG, la 349 de lei cu Sygic Drive 10 si harta Romaniei incluse, plus un mic bonus.

GPS NaviMate cu harta Romaniei

Produsul e la super-oferta acum, asa ca … luati-l cat e ieftin: 299 de lei, acelasi soft, aceleasi harti, fara bonus totusi. :)

Android 2.1 pentru XPERIA X8

Se pare ca azi a fost ziua update-urilor: dupa ce HTC Desire a primit un update la 2.29.405.2, Xperia X8 a primit si el mult-asteptatul update la Android 2.1 (de la 1.6).

XPERIA X8 Android 2.1

XPERIA X8 Android 2.1


Desi nu e 2.2 Froyo, e totusi un pas inainte. Dupa parerea mea, versiunea veche de Android era printre putinele minusuri ale acestui telefon.

Update-ul a decurs relativ bine. Din pacate nu toate setarile au fost restaurate dupa update, iar contactele au fost sincronizate cu contul GMail, altfel cred ca ar fi trebuit introduse manual.

Firmware nou pentru HTC Desire – 2.29.405.2

Astazi am descarcat si instalat o noua versiune de firmware pe HTC Desire (2.29.405.2). Din pacate n-am avut rabdare sa fac poze pentru a documenta procesul de update, insa am retinut ca fisierul pe care l-am descarcat are 28.87 MB si ca sunt necesari 25 MB de spatiu liber in memoria interna. Asa ca cel putin eu am fost nevoit sa dezinstalez unele aplicatii, printre care s-au numarat Skype si Facebook.

HTC Desire 2.29.405.2

HTC Desire 2.29.405.2


Din ce am mai citit pe net, sunt zvonuri ca firmware-ul ar fi disponibil numai pentru terminale neblocate intr-o anumita retea, insa la mine s-a instalat pe un telefon despre care cred ca e blocat in Vodafone. Acum nu prea stiu ce sa zic, sunt zvonuri nefondate sau terminalul meu nu e blocat? :)
HTC Desire Update 2.29.405.2HTC Desire eMAG

Termometru digital cu EvB 4.3

Am postat acum ceva timp in articolul despre placa de dezvoltare EvB 4.3 o poza cu LCD-ul placii respective afisand temperatura din camera. Recent am fost intrebat despre programul care ruleaza pe placa respectiva pentru a arata temperatura si despre configuratia hardware. Din cate imi aduc aminte, atunci am avut ceva probleme cu afisarea, in sensul ca folosind programele demo care vin cu placa si care sunt disponibile aici, dupa recompilare (Rebuild All) nimic nu mai functiona cum trebuie. Asa ca am pus cap la cap diverse surse si am reusit sa obtin un program functional, pe care il voi pune mai jos.

EvB 4.3 - Termometru

EvB 4.3 - Termometru, senzor conectat corect

Configuratua hardware este urmatoarea:

  • senzorul de temperatura DS18B20 legat pe pinul PD6 (in spatele senzorului de temperatura si al senzorului infrarosu sunt doi pini – cel din stanga este pentru temperatura si se leaga la PD6)
  • LCD-ul este legat astfel: D4 – PA4, D5 – PA5, D6 – PA6, D7 – PA7, E – PA3, RS – PA2, BL – 5V (backlight, poate fi neconectat)

Referitor la partea de program, am folosit pentru citirea senzorilor (se pot lega mai multi si am testat asta cu succes) am folosit aplicatia lui Martin Thomas, disponibila aici. Am folosit versiunea 0.8, se pare ca intre timp Martin Thomas a mai lansat si alte versiuni.

Pentru partea de afisare pe LCD am folosit libraria disponibila aici. Restul adaptarilor le-am facut eu. Programul scoate in continuare pe serial temperatura si diverse alte mesaje pentru debugging.

Output Termometru

Output Termometru

Daca senzorul este neconectat, programul arata un mesaj de eroare, ca mai jos.

EvB 4.3 - Termometru, senzor deconectat

EvB 4.3 - Termometru, senzor deconectat

Programul complet se poate descarca aici: evb43_ds18x20.zip.

Succes!