<div dir="ltr"><div><div><div><div><div>Tak na tu chybu jsem přišel. Vůbec nešlo o tu definici pole, SDCC poslední verze<br></div>nesnáší takovoto definici pole.<br><br>volatile char LED_bfr[] = {"AH 0J"}; // vystupni buffer pro 4 mistny LED <br>
<br></div>Toto je na začátku programu a chybu to hlásilo až na posledním řádku, hned za <br></div>rutinami pro čtení a zápis do EEPROM. <br></div>Je to tedy klasická zxavlečená chyba se vším všudy.<br></div>Tak teď už jen ten make .<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 4. ledna 2014 9:31 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span> napsal(a):<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div>Máte naprosto pravdu, ta architektura 8051 je opravdu příšerná, kdysi jsem na 8051<br></div>musel ( ještě v práci) přejít ze Z80 a byl jsem z toho nešťastný. Já už to v nových<br>( už jen hobby) projektech taky používat nebudu, ale tohle zařízení je funkční <br>
a potřebuje jen nějaké úpravy.<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 4. ledna 2014 9:25 Jaroslav Buchta <span dir="ltr"><<a href="mailto:jaroslav.buchta@hascomp.cz" target="_blank">jaroslav.buchta@hascomp.cz</a>></span> napsal(a):<div>
<div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div>No ona je taky architektura 51 pro
jazyk C naprosto nevhodna, kvuli ruznym typum pameti a pristupu je
to samy nestandardni rovnak na ohejbak, jsem rad, ze uz to mnoho
let nepouzivam... (v SDCC jsem ale taky par projektu napsal)<br>
<br>
Dne 4.1.2014 9:10, Jirka Mww napsal(a):<br>
</div><div><div>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>Díky za odkaz na tu knížku. Celé se
mi to nějak komplikuje.<br>
</div>
Původní záměr byl přenést projekt na
notebook a upravit SW v zařízení, které <br>
</div>
je nepřenosné. Kapacitní plán byl tak půl
dne max. SW mám formálně odladěn na RD2
kitu,<br>
takže šlo jen o to odlatit HW závislé
funkce, které nedokážu nasimulovat.<br>
Teď už na tom pracuji třetí den, zatím jsem
to na notebooku ani nepřeložil.<br>
</div>
no ale zase jsem se toho dost naučil. <br>
</div>
S tím make si pomocí té vaší knížky už asi
poradím, <br>
</div>
horší je, že aktuální SDCC neumí přiřadit prvek
pole typu unsigned char do <br>
</div>
jednotlivé proměnné stejného typu. <br>
<br>
</div>
Mám tuhle definici pole <br>
#define XBYTE ((unsigned char volatile __xdata *) 0)<br>
<br>
</div>
a pak ve funkci mám takovéto přiřazení <br>
<br>
</div>
val = XBYTE[adr] kde val je taky unsigned char a adr
je unsigned int<br>
<br>
</div>
vypadá to, že poslední verze SDCC je striktnější neř Pascal,
co se týče typů proměnných. <br>
</div>
Nevím co s tím, na Internetu je řada podobných dotazů, ale
žádné řešení. <br>
</div>
V předchozí vezi SDCC s tím nebyl problém. Asi to přepíšu do
assemleru. <br>
<div>
<div>
<div>
<div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">Dne 4. ledna 2014 5:20 Jakub Ladman <span dir="ltr"><<a href="mailto:ladmanj@volny.cz" target="_blank">ladmanj@volny.cz</a>></span>
napsal(a):<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ohledně
gnu make doporučuju tuto knihu:<br>
<br>
<a href="http://oreilly.com/catalog/make3/book/index.csp" target="_blank">http://oreilly.com/catalog/make3/book/index.csp</a><br>
<br>
Já ji mám koupenou, ale tady je celá online.<br>
<br>
Než jsem ji pročetl (nikoliv přečetl), ty makefile jsem
hrozně pytlíkoval a<br>
trápil se stím.<br>
<br>
Od té doby jsem schopen napsat a udržovat celkem elegantní
makefile.<br>
<br>
Největší problém byl u mě, ze zpětného pohledu, v
implicitních pravidlech, o<br>
kterých jsem nevěděl, a které mi překrývaly moje nepovedená
pravidla.<br>
<br>
Volat make z bat je zbytečné, protože možnosti makefile jsou
podstatně větší<br>
než jaké má bat<br>
<span><font color="#888888"><br>
Jakub Ladman<br>
_______________________________________________<br>
HW-list mailing list - sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
</font></span></blockquote>
</div>
<br>
<br clear="all">
<br>
-- <br>
Zdravi<br>
Jirka OK1MWW
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
HW-list mailing list - sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<br>
<br><br>
</div></div><hr style="border:none;color:#909090;background-color:#b0b0b0;min-height:1px;width:99%">
<table style="border-collapse:collapse;border:none">
<tbody><tr>
<td style="border:none;padding:0px 15px 0px 8px">
<a href="http://www.avast.com/" target="_blank">
<img src="http://static.avast.com/emails/avast-mail-stamp.png" border="0">
</a>
</td>
<td>
<p style="color:#3d4d5a;font-family:"Calibri","Verdana","Arial","Helvetica";font-size:12pt">
Tato zpráva neobsahuje viry ani jiný škodlivý kód -<a href="http://www.avast.com/" target="_blank">avast! Antivirus</a> je aktivní.
</p>
</td>
</tr>
</tbody></table>
<br>
</div>
<br>_______________________________________________<br>
HW-list mailing list - sponsored by <a href="http://www.HW.cz" target="_blank">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz" target="_blank">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list" target="_blank">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
<br></blockquote></div></div></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</font></span></div>
</blockquote></div><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</div>