PIC24HJ64GP502: Unterschied zwischen den Versionen
Aus Wiki_2020
Wezi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Wezi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 23: | Zeile 23: | ||
ergibt in Assembler: | ergibt in Assembler: | ||
<syntaxhighlight lang="MPASM" line start="100" enclose="div"> | <syntaxhighlight lang="MPASM" line start="100" enclose="div"> | ||
773: while(1) | 773: while(1) | ||
774: { | 774: { | ||
775: asm("bset, LATB #14"); | 775: asm("bset, LATB #14"); | ||
000882 A8C2CD BSET 0x2CD, #6 | 000882 A8C2CD BSET 0x2CD, #6 | ||
776: asm("bclr, LATB #14"); | 776: asm("bclr, LATB #14"); | ||
000884 A9C2CD BCLR 0x2CD, #6 | 000884 A9C2CD BCLR 0x2CD, #6 | ||
777: asm("bset, LATB #14"); | 777: asm("bset, LATB #14"); | ||
000886 A8C2CD BSET 0x2CD, #6 | 000886 A8C2CD BSET 0x2CD, #6 | ||
778: asm("bclr, LATB #14"); | 778: asm("bclr, LATB #14"); | ||
000888 A9C2CD BCLR 0x2CD, #6 | 000888 A9C2CD BCLR 0x2CD, #6 | ||
779: } | 779: } | ||
00088A 37FFFB BRA 0x882 | 00088A 37FFFB BRA 0x882 | ||
</syntaxhighlight > | </syntaxhighlight > | ||
bei korrekter 4MHz Instructiontakt | bei korrekter 4MHz Instructiontakt | ||
[[Datei:MCU_Taktung.png]] | [[Datei:MCU_Taktung.png]] |
Aktuelle Version vom 23. Oktober 2022, 09:50 Uhr
Anpassung des internen Oszillators auf exakt 8MHz (4MHz Istructioncycle) durch Register OSCTUNE
<syntaxhighlight lang="MPASM" line start="100" enclose="div">
OSCTUN = 15; // 16 = 255ns Tinstr // 15 = 250ns Tinstr = 4MHz
</syntaxhighlight >
Testroutine in main()
<syntaxhighlight lang="MPASM" line start="100" enclose="div">
while(1)
{ asm("bset, LATB #14"); asm("bclr, LATB #14"); asm("bset, LATB #14"); asm("bclr, LATB #14"); }
</syntaxhighlight >
ergibt in Assembler:
<syntaxhighlight lang="MPASM" line start="100" enclose="div"> 773: while(1) 774: { 775: asm("bset, LATB #14"); 000882 A8C2CD BSET 0x2CD, #6 776: asm("bclr, LATB #14"); 000884 A9C2CD BCLR 0x2CD, #6 777: asm("bset, LATB #14"); 000886 A8C2CD BSET 0x2CD, #6 778: asm("bclr, LATB #14"); 000888 A9C2CD BCLR 0x2CD, #6 779: } 00088A 37FFFB BRA 0x882 </syntaxhighlight >
bei korrekter 4MHz Instructiontakt