<html>
<head>
<meta content="text/html; charset=ISO-8859-2"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">Ano, presne takto se to
chova.<br>
<br>
r5 = 0x50000000<br>
LDR r0,[r5,#0]<br>
r0 = 0x685555A5 (spravna hodnota z GPIOA->MODER)<br>
<br>
r5 = 0x50000000<br>
r0 = 0x00000001<br>
LDM r5!,{r0}<br>
r5 = 0x50000004<br>
r0 = 0x00000000<br>
<br>
Prijde mi, ze LDM pouziva jiny pristup ke sbernici, takze nejde
nacist hodnoty z HW registru...<br>
<br>
Hynek<br>
<br>
<br>
</font>
<div class="moz-cite-prefix">Dne 8.7.2015 12:05, Jan Waclawek
napsal(a):<br>
</div>
<blockquote cite="mid:PC195201507081205500175225b88e1@TEST-VISTA"
type="cite">
<blockquote type="cite">
<pre wrap="">Na procesoru STM32L05x potrebuju neprimo pristupovat k nekterym HW
registrum. Cast kodu pro pristup je zapsana takto:
unsigned long *ptr;
test_send (*ptr++, 4);
Tento pristup vygeneruje instrukci
LDM r5!,{r0}
Vysledkem operace je vzdy hodnota 0.
</pre>
</blockquote>
<pre wrap="">
To ste krokovali? V r5 pred instrukciou bola spravna a spravne zarovnana
adresa, a v pamati na tej adrese bola nenulova hodnota, a v r0 bola
nenulova hodnota; a po kroku bolo v r0 nula?
wek
</pre>
</blockquote>
</body>
</html>