<div dir="ltr">No ano, ale zjavne sa jedna o problem identifikacie pamatovych priestorov. Mozno by stacilo pozriet niekam do manualu. Ta eeprom je totiz definovana ako volatile pointer s adresou 0. A kedze pointer je aj identifikator pre polia, tak sa pristupuje priamo na danu adresu XBYTE[addr]... Tak pozrite do nejakych hlavickovych suborov, ci sa to v tej novej verzii SDCC nezmenilo, pripadne pozrite manual na temu pamatove identifikatory a ako posledne pozrite datasheet od mcu, kde sa k tej eeprom pristupuje v adresnom priestore a podla toho pouzite pamatovy identifikator. Mimochodom este ma napadlo, ze potom tie dve __ musite dat aj pred __data BYTE val vo funkcii ReadEEpromByte.<br>
<div class="gmail_extra"><br></div><div class="gmail_extra">A.<br><br></div><div class="gmail_extra"><div class="gmail_quote">2014/1/3 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>No tak pĹ™esnÄ› tohle jsem uĹľ zkoušel, kromÄ› toho Ĺľe tato verze SDCC striktnÄ› trvá na tom Ĺľe xdata musĂ mĂt to podtrĹľenĂ.<br>
</div>PĂše se to v návodu a skuteÄŤnÄ› to bez toho nefunguje. <br></div>
Já v zásadÄ› to makro XBYTE na nic nepotĹ™ebuju, kdyby se mi podaĹ™ilo nÄ›jak naadresovat to EEpromku<br></div>pĹ™Ămo, byl bych spokojen. Ale protoĹľe jsem to dĹ™Ăv jen sprostÄ› opsal z pĹ™Ăkladu k RD2 kitu, tak teÄŹ jsem v koncĂch.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 3. ledna 2014 22:09 Andrej Jancura <span dir="ltr"><<a href="mailto:aj.hwlist@gmail.com" target="_blank">aj.hwlist@gmail.com</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 dir="ltr"><div>Skuste este prepisat ten XBYTE takto:<br><br>#define XBYTE ((xdata volatile unsigned char *) 0), lebo mam pocit, ze inak to berie ako programovu pamat, a teda konstanty v eprom.<span><font color="#888888"><br>
<br></font></span></div><span><font color="#888888">A. <br></font></span></div><div><div>
<div class="gmail_extra"><br><br><div class="gmail_quote">2014/1/3 Andrej Jancura <span dir="ltr"><<a href="mailto:aj.hwlist@gmail.com" target="_blank">aj.hwlist@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div><div><div>No zjavne robi problem riadok XBYTE[addr] = val; resp jeho inverzna funkcia. ked sa pozriete na definiciu<div><br><br>#define XBYTE ((unsigned char volatile xdata *) 0) <br></div>
data BYTE val;<br><br>
</div><div>tak kvalifikatory xdata a data urcuju o aky typ pamati sa jedna. xdata by mala byt externa ramka a 16 bitova adresa, co koresponduje s hlaskou const char...<div><br><br>error 47: indirections to different types assignment<br>
from type 'const-char  [61] code '<br>to type 'volatile-char fixed '<br></div></div><br>Skuste v tej Vasej definici <br><div>#define XBYTE ((unsigned char volatile __xdata *) 0)<br><br></div></div>
<div>to xdata bez tych __ . myslim, ze xdata je standartne klucove slovo v kompilatoroch C pre x51 a netreba ho podciarkovat. To je dane historiou vzniku jednotlivych kompilatorov a aj keil ich pouziva.<br>
</div><div><br></div>"volatile char fixed" by mohlo korespondovat s tou castou "data BYTE val".<br><br></div>Tuna Vam vsak uz okrem identifikacie problemu a nacrtu mozneho riesenia dalej moc nepomozem. To treba uz niekoho, kto sa v tom vyzna lepsie ako ja. Tak dufam, ze aspon nieco som Vam pomohol.<span><font color="#888888"><br>
<br></font></span></div><span><font color="#888888">A.<br><div><div><br></div></div></font></span></div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">2014/1/3 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>No s tou hláškou si nevĂm rady , jde o ÄŤtenĂ a zápis do EEPROM 89C51RD2<br><br></div>FunkÄŤnĂ verze ( pro starĂ© SDCC ) vypadá takto :<br>
<br>#define XBYTE ((unsigned char volatile xdata *) 0)Â <br>
<br></div>a tady jsou ty funkce - je to opsané z návodu k RD2 kitu od HW serveru<br><br><br>BYTE ReadEEPromByte(WORD addr)<br>{ data BYTE val;<br> while(EECON&EEBUSY){}; // wait until eeprom programming busy flag set<br>
 EECON |= EEE;          // enable eeprom space <br> val = XBYTE[addr];     // read byte<br> EECON &= ~EEE;         // disable eeprom space <br> return val;<br>}<br><br><br>// --- Write byte to given eeprom address. --- //<br>
void WriteEEPromByte(WORD addr, BYTE val)<br>{ EETIM = EETIM_VAL;<br>Â while(EECON&EEBUSY){};Â // wait until eeprom programming busy flag set<br>Â EECON |= EEE;Â Â Â Â Â Â Â Â Â Â // enable eeprom space<br>Â XBYTE[addr] = val;Â Â Â Â Â // write byte<br>
 EECON = 0x50;          // write 0x5X followed by 0xAX to launch programming<br> EECON = 0xA0;           <br>}<br><br><div>tu definici jsem upravil podle předchozà diskuze na <br></div><div>#define XBYTE ((unsigned char volatile __xdata *) 0) <br>
ale to bude právÄ› asi blbÄ› a já tomuto zápisu nerozumĂm.<br></div><div>Jestli mĹŻĹľete pomoci, budu vděčnĂ˝<br></div><div><br><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 3. ledna 2014 21:29 Andrej Jancura <span dir="ltr"><<a href="mailto:aj.hwlist@gmail.com" target="_blank">aj.hwlist@gmail.com</a>></span> napsal(a):<div>
<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Ten help a info treba bud cez /help /? alebo -help pripadne --help. V najhorsom sa pozrite do manualu.<br>
<br>Problem moze byt aj ta hlaska, ktoru dostanete pri samostatnom preklade a bolo by dobre ju odstranit. Zial takto bez sdcc na w7 a zdrojaku Vam s tym nepomozem. Ale myslim si, ze to moze byt primarny problem preco ten make nezbehne. Proste nejaky z tych exacov nahlasi chybu a make potom nevie vygenerovat dalsie option.<span><font color="#888888"><br>
<br></font></span></div><span><font color="#888888">A.<br></font></span></div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">2014/1/3 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div><div><div>KdyĹľ dám za make help nebo info, napĂše to to samĂ© - No rule to make target ....<br></div>V PATH problem nebude, mám všechno v jednom adresáři. <br></div>KdyĹľ to pĹ™ekládám pĹ™Ămo SDCC tak to funguje, jen tam mám ještÄ› nÄ›jakou chybu <br>
v typech proměnných <br><br>error 47: indirections to different types assignment<br>from type 'const-char  [61] code '<br>to type 'volatile-char fixed '<br><br></div>Je to ale přesně stejný soubor, který jde na starém SDCC pod XP přeložit normálně. <br>
</div>Asi jsou tady nějaké lepšà kontroly kompatibility proměnných. <br><br><div><div><br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">Dne 3. ledna 2014 21:14 Andrej Jancura <span dir="ltr"><<a href="mailto:aj.hwlist@gmail.com" target="_blank">aj.hwlist@gmail.com</a>></span> napsal(a):<div>
<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Dobry vecer,<br><br></div>kedze ma to zaujima, tak sa skusim spytat, skusali ste vypisat info alebo help toho make.exe v dos commmand line? Mohli by vam chybat nejake option, ktore treba nastavit. Druhy problem by mohli byt nenastavene PATH cesty... Ale to sme na urovni dosu, takze iste znalosti predpokladam.<br>
<br></div>Skusal ste to bez toho make.exe ako som Vam napisal uz poobede, teda zavolat compile.exe, link.exe, bin2hex.exe (za nazvy execov si dajte command line prikazy z toho sdcc balika, mali by byt vsetky v adresari bin.) A ked vam to zbehne same o sebe, tak si to automatizujte cez .bat subor.<span><font color="#888888"><br>
<br></font></span></div><span><font color="#888888">A.<br></font></span></div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">2014/1/3 Jirka Mww <span dir="ltr"><<a href="mailto:jirka.mww@gmail.com" target="_blank">jirka.mww@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div><div><div><div>DobrĂ˝ veÄŤer,<br><br></div>opravdu mám v tom pouĹľitĂ make nÄ›jakĂ˝ problĂ©m. Volám to jako dĹ™Ăv jen <br>make all v .bat souboru , kterĂ˝ je v adresáři, kde je vlastnĂ zdrojovĂ˝ soubor<br></div>
i Makefile. Na starĂ©m PC to funguje, tady to pĂše <br></div>*** No rule to make target all. Stop.<br></div>MĹŻĹľete mi ještÄ› pomoci ?<br><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div>
Dne 3. ledna 2014 15:44 Jan Waclawek <span dir="ltr"><<a href="mailto:konfera@efton.sk" target="_blank">konfera@efton.sk</a>></span> napsal(a):<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Nerozumiem, aky bol ten problem s make.<div><div><br>
<br>
Ale s tym sfr at 0x80 P0 je problem ten, ze klucove slova sfr a at sa teraz<br>
maju pisat s dvomi podciarnikmi ako __sfr a __at<br>
<br>
Manual SDCC, kap. 1.5 Compatibility with previous versions:<br>
...special sdcc keywords which are not preceded by a double underscore are<br>
obsoleted (removed) in version<br>
3.2.0 and higher.<br>
<br>
Ak Vam to vsak nevypisalo chybovu hlasku typu<br>
89c51rd2.h:22: syntax error: token -> 'at' ; column 6<br>
tak mate v tom pouzivani make este niekde nejaky problem. Tazko povedat,<br>
kym nezverejnite ten makefile.<br>
<br>
Doporucujem pouzivat dodany header <p89v51rd2.h>.<br>
<br>
wek<br>
<br>
<br>
----- Original Message ---------------<br>
>Ne , tam nic nenĂ. TeĂŻ jsem zkusil spustit pøeklad souboru rovnou a vypadá<br>
>to, že je problém<br>
>s deklaraènĂm souborem  89C51RD2.H  . Je tam deklarace jednobitovĂ˝ch<br>
>registrĂą stylem<br>
<div>>sfr at 0x80  P0   a to at to nezná.  Asi to tahle verze SDCC takto neumĂ.<br>
</div>>Staré to nedìlalo problém.<br>
>Budu muset nastudovat nìjaké dokumenty, jak to nadeklarovat jinak.<br>
<div><div>><br>
<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>
</div></div></div></div></blockquote></div><span><font color="#888888"><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</font></span></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><br></div>
</div></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><font color="#888888"><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</font></span></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><br></div>
</div></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><font color="#888888"><br><br clear="all"><br>-- <br>Zdravi<br>Jirka OK1MWW
</font></span></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><br></div>
</div></div></blockquote></div><br></div>
</div></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>
<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">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><br></div></div>