Sari la conținut
ELFORUM - Forumul electronistilor

HEX MICROPICSCOPE


Vizitator MISU ATU

Postări Recomandate

Caracterele pe care le vezi tu in fisierele hex sunt o reprezentare "prietenoasa omului" pentru codul ASCII. Intern, fiecare caracter este "codificat" prin 0 si 1. Cifra "1", de exemplu, e codificata binar (si salvata in microcontroller prin programare) prin 01100001.

 

Mda, asa ar trebui sa fie insa pentru caracterul "a" (cod ASCII 97, 0x61 in hex), deoarece pentru caracterul 1 este codul ASCII 49, respectiv 0x31 in hex.

Ceea ce vezi in fisierele .hex sunt pentru uC instructiunile in cod-masina pe care acesta trebuie sa le execute si care arhitectura interna a acestuia le converteste in 0 si 1.

Spre exemplu, intructiunea 7B se poate traduce in limbaj de asamblare pentru Intel 8080 ca "MOV A,E" sau altfel spus, muta continutul registrului "A" in registrul "E"

Link spre comentariu
  • Răspunsuri 26
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • MatyC

    6

  • francezu

    4

  • Liviu M

    3

  • vcdec

    3

Top autori în acest subiect

Ceea ce vezi in fisierele .hex sunt pentru uC instructiunile in cod-masina pe care acesta trebuie sa le execute si care arhitectura interna a acestuia le converteste in 0 si 1.

Microcontroller-ul execută direct codul maşină; arhitectura internă nu face nici un fel de conversie, codul maşină este compus din 0 si 1.
Link spre comentariu

Ceea ce vezi in fisierele .hex sunt pentru uC instructiunile in cod-masina pe care acesta trebuie sa le execute si care arhitectura interna a acestuia le converteste in 0 si 1.

Microcontroller-ul execută direct codul maşină; arhitectura internă nu face nici un fel de conversie, codul maşină este compus din 0 si 1.
Corect, imi pun cenusa in cap
Link spre comentariu

Iniţial am bănuit că LCD-ul folosit de autor avea alte adrese pentru rândul 2. MISU ATU foloseşte un RAYSTAR-RC1602B-B/W-ESX. Am verificat rutinele responsabile cu afişarea pe al doilea rand şi adresarea se face corect, deci nu este asta cauza. Pentru că a incercat si cu alt lcd, nici pe acesta nu mai pot să-l banuiesc de defect. Am incercat să rulez codul in simulator (Proteus), dar pentru că rutinele responsabile cu ADC nu sunt prea corect scrise( se declansează o nouă citire adc fără a aştepta execuţia celei anterioare, in realitate nu e neaparat o problemă) simularea decurge foarte greu, si nu afişează nimic pe lcd ( contrar cu realitatea). În următoarele zile MISU o să-mi aducă montajul şi am să vad ce se poate face. Voi posta aici rezultatele.

Link spre comentariu
  • 2 săptămâni mai târziu...

Aşa cum am promis, revin cu rezultate. Schema are prevăzut la pinul 13 (RC2) al microcontroler-ului un comutator ce permite activarea/dezactivarea afişării frecvenţei şi a amplitudinii semnalului. Scrie in documentaţie ce rost şi avantaj/dezavantaj are acest comutator. În montajul lui MISU acel pin este legat la masă, de aceea nu afişa nimic pe rândul 2.

Link spre comentariu

Poate ma luminati si pe mine intr-o chestiune elementara: cum se face ca un microcontroller accepta sa-i fie dat un fisier in format .hex? Are cumva intern, hardware, un convertor .hex-.bin, la iesirea caruia obtine cod-masina, format din 0 si 1 pe care-l utilizeaza?! :jytuiyu

deja ai fost luminat, da vin io suav ca soarele, și spun: .hex și .bin sunt același lucru! :rade: inițial însemnau lucruri diferite, adică .hex era un fișier de date binar în format intel, .bin era același lucru, într-un format altul decât intel.și ca să fie și mai bulinoasă treaba, când faci un dump de e(e)prom sau de mcu, poți foarte bine să-i dai fișierului orice extensie îți tună, de pildă, dump.cuc.după care, te poți distra copios cum 10 ”ingineri” își sparg capul încercând să afle cu ce se poate deschide .cuc ăla... mai ales când pe calculatoarele din firmă nu există nimic altceva decât windows, și alea sunt setate să nu lase să se vadă extensiile, și nici să le poți modifica!!! :rade:
Link spre comentariu

Nu degeaba am facut trimitere la manualul montajului. Citisem in manual treaba cu linia 2 LCD ca are legatura cu SW din RC2 dar cum poze canci, nu m-am pronuntat. Sa inteleg ca merge oscilocopul asa ca ia sa postez codul sursa care a iesit dupa conversia din TASM in MPASM. Am introdus doar directiva __CONFIG cu valoare hexa asa cum apare in MPLAB.

picscope_asm.zip

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări