Help! Probeer om input een integer naar eZ430-RF2500 target board

B

bettyxyz1028

Guest
Ik wil naar een andere hardware aansluiten om dit doel boord.Die doelstelling bestuur stuurt een integer om dit doel boord.

Ik kies P2.0 als input pin.

Maar toen ik open putty.exe om de overdracht van gegevens te controleren, ik zie alleen 60.

Door rechts moet, ik zie aNumber = 0 als er geen input van toepassing op de haven.Is het?

Hier is de code (alleen het uittreksel een deel):int aNumber;P2IN | = 0x01;/ / P2.0 = inputP2DIR | = 0x00;/ / P2.0 = inputP2IE | = 0x01;/ / P2.0 interrupt enabledP2SEL | = 0x01;/ / P2.0 = USCI_A0 TXD / RXD
UCA0CTL1 = UCSSEL_2;/ / SMCLKUCA0BR0 = 0x41;/ / 9600 van 8MHzUCA0BR1 = 0x3;

UCA0MCTL = UCBRS_2;UCA0CTL1 & = ~ UCSWRST;/ / ** Initialize USCI state machine **IE2 | = UCA0RXIE;/ / Enable USCI_A0 RX onderbrekenmsg [7] = aNumber; / / Voeg ONW meer plaats om msg [] om de waarde van uitzenden End apparaat naar Toegangspunt./ / USCIA interrupt service routine

# pragma vector = USCIAB0RX_VECTOR

__interrupt void USCI0RX_ISR (void)

(

aNumber = UCA0RXBUF;

)

 
Hoi,
Je hebt verschillende fouten in de code, dus het schrijven van een beknopt antwoord op uw probleem onmogelijk.
Bovendien, je niet laten zien genoeg code voor ons om erachter te komen wat het is u probeert te doen en vind alle fouten.

I'm guessing u wilt instellen of andere vorm van seriële communicatie, maar het lijkt je de verkeerde poort voor dat doel gebruikt.Een snelle blik in de datasheet toont pins P3.4 / P3.5 als UCA0_TX / RX, respectievelijk, en niet P2.0 (die een analoge ingang).
Ik zal niet ingaan op het configureren van de pennen (zul je het in de handleiding), maar de code met betrekking tot P2.0 is irrelevant en u kunt verwijderen.
Anyway, ik wilde wijzen op een fout wanneer je schrijftCode:

P2DIR | = 0x00; / / heeft geen betekenis: laat alle bits intact.
Moet "& ="
 
Tks a lot!Ik ben nieuw in deze tool.XP

Ik download sommige voorbeeldcode van TI.De hele programmering is gebaseerd op de VGM-monitor sensor voorbeeldcode.Wijzig ik mijn code vandaag (juz Ik schrijf de belangrijkste onderdelen):

int aNumber

belangrijkste
(
P1DIR = 0xFB; / / P1.2 (button) = input
P1OUT = 0x04; / / P1.2 pullup
P1REN | = 0x04; / / P1.2 pullup
P1IE | = 0x04; / / P1.3 interrupt enabled
P1IES | = 0x04; / / P1.3 Hi / lo rand
P1IFG & = ~ 0x04; / / P1.3 IFG gewist
P2DIR = 0x2E;
P2REN | = 0x01;
P2OUT = 0x01;
P3SEL = 0x30; / / P3.4, 5 = USCI_A0 TXD / RXD
P3DIR = 0xFF; / / Alle P3.x uitgangen
P3OUT = 0; / / Alle P3.x reset
P3REN | = 0x20; / / Enable-Pull Down Res voor / Charge
P4DIR = 0xFF; / / setup-poort 4
P4OUT = 0x00;

/ / Initialize Tx
UCA0CTL1 | = UCSSEL_2 / / SMCLK
UCA0BR0 = 8; / / 1MHz 115200
UCA0BR1 = 0; / / 1MHz 115200
UCA0MCTL = UCBRS1 UCBRS0; / / Modulatie UCBRSx = 3
UCA0CTL1 & = ~ UCSWRST; / / ** Initialize USCI state machine **
IE2 | = UCA0RXIE; / / Enable USCI_A0 RX onderbreken
__bis_SR_register (LPM3_bits GIE); / / Enter LPM3, interrupts enabled
)# pragma vector = USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR (void)
(
aNumber = UCA0RXBUF;
)

 
AHHHH Ik vergat een vraag post .............. ik was te moe tat dag.

Toen ik de drukknop duwen, toont het rode licht in plaats van groen licht.Ik controleer n vinden als ik de poort 3 initiële instelling, wist het groene licht zou hebben geleid.

dan denk ik dat het misschien de baudrate probleem.Dus veranderde ik de baudrate op 9600, die dezelfde is als AP.

Rode LED schijnt ook ..............

Iedereen kan helpen???Tks zo veel!Toegevoegd na 6 minuten:plus, de P3.4 en 3,5 zijn op de batterij boord.So i juz sluit de batterij aan boord?

 
P3.5 kan niet worden gebruikt.B / C wordt het gebruikt om te communiceren met zonne-chip .............

 

Welcome to EDABoard.com

Sponsor

Back
Top