[elektro] PPS

Tóth Család monipetiotthon at freemail.hu
Sat Feb 19 13:48:19 CET 2011


Sziasztok!

Nem fogjátok elhinni, hogy milyen marhaság miatt szívtam 2 napig!
Az U1TX multiplexere az RPOR4 regiszterben van, ezt próbáltam 
beállítani. A lentebbi kód alapján sikerült működésre bírni, és 
kiderült, hogy véletlenül RP0R4-et gépeltem, ami kétszeresen 
megszívatott, mert a nulla és az O betű ugyanúgy néz ki MPLAB-ban és 
valamiért a fordító sem jelzett hibát, szó nélkül lefordította nullával 
gépelve.
A lényeg, hogy folytathatom végre a programot, és még egyszer köszönöm a 
segítséget!

ToPe

>       Itt van:
> üdv: Nándi
>
> 1269:                   __builtin_write_OSCCONL(OSCCON&  0xBF);  // Unlock PPS
>   131B2  803A11     mov.w 0x0742,w1
>   131B4  200BF0     mov.w #0xbf,w0
>   131B6  608100     and.w w1,w0,w2
>   131B8  200461     mov.w #0x46,w1
>   131BA  200570     mov.w #0x57,w0
>   131BC  207423     mov.w #0x742,w3
>   131BE  784981     mov.b w1,[w3]
>   131C0  784980     mov.b w0,[w3]
>   131C2  784982     mov.b w2,[w3]
> 1270:
> 1271:                   // Inputs
> 1272:                   RPINR20bits.SDI1R = 21;
>   131C4  206A81     mov.w #0x6a8,w1
>   131C6  784091     mov.b [w1],w1
>   131C8  B3CC00     mov.b #0xc0,w0
>   131CA  60C000     and.b w1,w0,w0
>   131CC  B34150     ior.b #0x15,w0
>   131CE  B7E6A8     mov.b w0,0x06a8
> 1273:                   RPINR0bits.INT1R = 26;
>   131D0  206811     mov.w #0x681,w1
>   131D2  784091     mov.b [w1],w1
>   131D4  B3CC00     mov.b #0xc0,w0
>   131D6  60C000     and.b w1,w0,w0
>   131D8  B341A0     ior.b #0x1a,w0
>   131DA  B7E681     mov.b w0,0x0681
> 1274:                   RPINR19bits.U2RXR = 17;
>   131DC  206A61     mov.w #0x6a6,w1
>   131DE  784091     mov.b [w1],w1
>   131E0  B3CC00     mov.b #0xc0,w0
>   131E2  60C000     and.b w1,w0,w0
>   131E4  B34110     ior.b #0x11,w0
>   131E6  B7E6A6     mov.b w0,0x06a6
> 1275:
> 1276:                   // Outputs
> 1277:                   RPOR9bits.RP19R = SCK1OUT_IO;
>   131E8  206D31     mov.w #0x6d3,w1
>   131EA  784091     mov.b [w1],w1
>   131EC  B3CC00     mov.b #0xc0,w0
>   131EE  60C000     and.b w1,w0,w0
>   131F0  A03400     bset w0,#3
>   131F2  B7E6D3     mov.b w0,0x06d3
> 1278:                   RPOR13bits.RP27R = SDO1_IO;
>   131F4  206DB1     mov.w #0x6db,w1
>   131F6  784091     mov.b [w1],w1
>   131F8  B3CC00     mov.b #0xc0,w0
>   131FA  60C000     and.b w1,w0,w0
>   131FC  B34070     ior.b #0x7,w0
>   131FE  B7E6DB     mov.b w0,0x06db
> 1279:                   RPOR5bits.RP10R = U2TX_IO;
>   13200  206CA1     mov.w #0x6ca,w1
>   13202  784091     mov.b [w1],w1
>   13204  B3CC00     mov.b #0xc0,w0
>   13206  60C000     and.b w1,w0,w0
>   13208  B34050     ior.b #0x5,w0
>   1320A  B7E6CA     mov.b w0,0x06ca
> 1280:
> 1281:                   __builtin_write_OSCCONL(OSCCON | 0x40); // Lock PPS
>   1320C  803A11     mov.w 0x0742,w1
>   1320E  200400     mov.w #0x40,w0
>   13210  708100     ior.w w1,w0,w2
>   13212  200461     mov.w #0x46,w1
>   13214  200570     mov.w #0x57,w0
>   13216  207423     mov.w #0x742,w3
>   13218  784981     mov.b w1,[w3]
>   1321A  784980     mov.b w0,[w3]
>   1321C  784982     mov.b w2,[w3]
> 1282:
> 1286:
> 1287:                   AD1PCFG = 0xFFFF;
>   1321E  EB8000     setm.w w0
>   13220  881960     mov.w w0,0x032c
>
> >  Szia!
>
> >  Be tudnád nekem másolni az ASM kódot, amit erre a C rutinra fordít az
> >  MPLAB? Ismerem ezt az utasítássorozatot, amit bemásoltál, benne van az
> >  adatlapban, én meg elvileg az ASM forrását másoltam be lejjebb, de
> >  szerintem valami hiányzik belőle, mert nem akar működni. Feltűnt, hogy a
> >  kódodban van egy komment, hogy minden port analógra van állítva alapból.
> >  Ezt spec. nem néztem, de tudom programból billegtetni azt a portlábat,
> >  amin a led van, tehát elvileg nem lehet analóg, de majd megnézem ezt is.
> >  Igazából ebben:  __builtin_write_OSCCONL(OSCCON&  0xBF); // Unlock PPS
> >  van a trükk, ennek kellene nekem az ASM megfelelője, mert már kitéptem
> >  az összes hajam :S
>
> >  ToPe



More information about the Elektro mailing list