» »

Potrebuje HEX v BIN pretvornik

Potrebuje HEX v BIN pretvornik

Jok3r ::

Imam program v hex obliki in da ga lahko zapecem v cip mora biti v bin obliki. :\ Pozna kdo kaksen taksen progy?

Hvala ;)

Sergio ::

WHAT? :)

Ce bos prebral hex in zapisal bin, odprl stvar z istim programom -- bos videl isto :)
Tako grem jaz, tako gre vsak, kdor čuti cilj v daljavi:
če usoda ustavi mu korak,
on se ji zoperstavi.

Jok3r ::

Hmmm

Ce ofnem bin datoteko je v njem ASC|| koda (neki cudni hiroglifi) no v to bi blo treba pretvoriti iz HEX :)

snow ::

Hm, za ker čip gre to?


V Microchipove PICe se vpisuje hex. File pa zgleda nekaj takega če ga odprem z viewevjem:
:020000040000FA
:020000000428D2
:080008008501860187018316C2
:10001000031306309F0083120313831600308700FA
:10002000E030860083120830C70056244808A80034
:10003000C9000130C70056244808A9000230C70093
:1000400056244808AA000330470856244808AB0045
:100050000430470856244808AC00053047085624A9
:100060004808AD000630470856244808AE0007305F
:10007000470856244808AF00B0017323A023262365
:10008000B708A000B808A1007C23A0232623B70846
:10009000A200B808A3008523A0232623B708A40044
:1000A000B808A5008E23A0232623B708A600B80809
:1000B000A7000130B002031C662830182D21B018AB
Random mutation plus nonrandom cumulative natural selection - Richard Dawkins

Exilian ::

Jok3r: :)... za 2 jurja ti ga napisem.

resno, tak program pride pribljižno 10 min dela in 15 vrstic kode za dos okolje.
It's not the opensource i hate.
It's the fanclub I cannot stand.

Jok3r ::

Uhhh si nisem mislu da je to tako zahtevo pretvarjat :)
Čip ATMEL 89C4051 programiram z Bascomom 8051 (blowIT programator) kjer potrebujem bin datoteko da ga uspesno sprogramiram. :8)

Jok3r ::

Ă•đ" .`@ä"t"HH`@ä"t"®ć÷ Ţú" ˜ä"0˜ýĺ™Â˜"ŔŕtpýĐŕ "0™ý™ő™"řt¦ pő Řđ"0˜ýĺ™Â˜"Ă®ć7÷ Ţů"tŔđ…đ¤˙ĐđxľĂxĆxĆPx yßí"®v Ţű"®ć3öŢú"®Óćô4 öŢř"ĺőđ*őÂŐxľ¨đľç`1´-ŇŐ€'”0ŔŕŔxy Mxľxv
›uA uB

Tole je pa ce odprem bin z notepadom. Sem mislil da bom v njejn nasu same 1111001001001001001 :D

buba švabe ::

Ti pa nisi ne vem kako domač z računalniki, kajne :)? Tisi "čudni hieroglifi", ki jih vidiš, je ASCII predstavitev binarne kode. Če bi isto zadevo odprl v kakšnem hex-editorju, bi isto videl v hex predstavitvi. In če bi isto zadevo odprl v binarnem editorju (še nisem slišal za to, ampak verjetno obstaja) bi spet isto videl v binarni predstavitvi, se pravi same ničle in enke. Se pravi, ne rabiš nič pretvarjat, ker že maš binarni fajl!

Ne vem sicer, kako poteka programiranje tega tvojega čipa, ampak če ugibam, bi rekel, da je takole: napišeš kodo v čipovem assemblerju, jo prevedeš v binarni fajl in "uploadaš" na čip s programatorjem. Če ugibam dalje, maš probleme s programatorjem, pa ne zato, ker ne bi imel progrma v binarni obliki, ampak zato, ker si ga ali napačno prevedel, ali pa si programator napačno nastavil/povezal/itd. Mam kaj od tega prav ali sem čisto zgrešil? Prosim bolj detajlno opiši svoj problem, pa ti bo mogoče kdo celo znal pomagat...
če hočeš razumet rekurzijo, moraš najprej razumet rekurzijo

Zgodovina sprememb…

Jok3r ::

Nimam problemov z programatorjem ker deluje :). Problem je samo v tem ker ne morem z hex datoteko zapceti cipa z ASCII pa lahko. Tako potrebujem HEX => ASCII pretvornik ce sploh obstaja. Ce bi mel program napisan v assemblerju nebi bilo problema skompelirat v ASCII, tako imam pa samo hex datoteko. :8)

buba švabe ::

OK, zdaj te pa res ne razumem. Kje si pa potem dobil binarni fajl oz. hex kot ti temu praviš? A nisi sam napisal programa in ga prevedel? Pa kako si sploh prišel do binarnega fajla, če pa praviš, da programator zahteva ASCII?

No ja, če že ravno hočeš hex->ascii konverter, tule maš celo kodo, napisano v C/C++:

// hex2ascii.cpp
#include <stdio.h>

int main(int argc, char **argv) {
	if (argc < 3) {
		printf("Usage: hex2ascii.exe infile.bin outfile.txt\n");
		return 1;
	}
	
	FILE *in = fopen(argv[1], "rb");
	if (!in) {
		printf("ERROR: Can't open input file (%s)\n", argv[1]);
		return 2;
	}
	
	FILE *out = fopen(argv[2], "wt");
	if (!out) {
		fclose(in);
		printf("ERROR: Can't create output file (%s)\n", argv[2]);
		return 3;
	}
	
	int counter = 0;
	while (!feof(in)) {
		unsigned char c = fgetc(in);
		fprintf(out, "%02X ", c);
		++counter;
		if (counter == 16) {
			fprintf(out, "\n");
			counter = 0;
		}
	}

	fclose(in);
	fclose(out);

	return 0;
}


Program preverjeno deluje, samo če hočeš kako drugačno oblikovanje, boš moral, ponavljam še enkrat, bolj detajlno definirat problem.

Aja, pa dva jurja prosim lepo... :)
če hočeš razumet rekurzijo, moraš najprej razumet rekurzijo

Zgodovina sprememb…

roscha ::

Kaj ko bi kdo za spremembo kako specifikacijo kdaj pogledal?

Tale M$ je res fahidiote naredil iz vas. Za vsak drek izumljat toplo vodo.


Intel hex spec.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C++(bin file) vprašanje

Oddelek: Programiranje
121508 (1386) technolog
»

[c] Enaki datoteki

Oddelek: Programiranje
71038 (898) Spura
»

[C++][Naloga] Tekstovne datoteke, realna števila

Oddelek: Programiranje
254053 (3669) Gundolf
»

[java ali C] Datoteka v obliki 0 in 1

Oddelek: Programiranje
191854 (1574) Mmm'Aah
»

c++ datoteke

Oddelek: Programiranje
464059 (3548) Vesoljc

Več podobnih tem