Problem med koding SPI for PIC16F818

C

chevymn1964

Guest
Hei alle sammen, Its vært en stund siden Ive vært på her ... Jeg jobber med et nytt prosjekt som innebærer å bruke SPI med en PIC16F818 .... Jeg går av et datablad finnes på mikrobrikker web ... Å sende data på en MASTER det står til: Send_DT BCF SS movf Data, w movwf SSPBUF banksel SSPSTAT Send_DT_1 btfss SSPSTAT, BF goto Send_DT_1 banksel SSPBUF movf SSPBUF, w bsf SS returnere Problemet som jeg har er at for noen grunn i MPLAB SIM rutinen Send_DT_1 blir sittende fast i en sløyfe med ingen data eller klokke sendt?? Alle andre som har dette problemet?? alle hjelpe ville være stor! takk!
 
Ja, dette skjer. MPLAB ikke simulere alle eksterne enheter. Jeg tror SPI er en av dem. Bare prøv å kjøre resten av koden, ved å endre registre manuelt eller opprette et register stimulans fil.
 
Takk VVV Jeg lurte på det selv ... Jeg ganske hoppet pistolen ... Jeg tryed det i kretsen, og det er clockin & sende data ... Nå er jeg bare må få resten (slave) arbeider haha ​​.... Takk igjen! -Ryan
 
Hei Eveyone .... Likevel, jeg har et annet spørsmål .... Hva ville være den beste ruten å sende (MASTER) og motta (SLAVE) 16 bits med data?? Akkurat nå er jeg bare sende bytes (H_Byte & L_Byte) rett etter en og annen ... Programmet fungerer fint til ca d'200 'til d'400' så det ser ut som bytes blir byttet?? humm?? noen thaughts eller ideer der ute??
 
Du bedre bruk programvare simulatorer som Proteus, kan du vise hele programmet kjører som i ekte maskinvare. Angående ur 16 bit data, det er ingen annen måte å sende det hele, men sende den byte etter den andre. Din subroutine i å sende data over SPI ser bra ut. Så sannsynligvis at problemet er et annet sted i koden.
 
Hei alle, jeg tror jeg har funnet ut problemet ... Jeg satte inn en kort forsinkelse mellom å gjøre SS pin HIGH og sende faktiske data på MASTER og det synes å fungere så langt (tror jeg) ... Takk alle sammen! Jeg skal holde dere alle lagt ut! -Ryan
 

Welcome to EDABoard.com

Sponsor

Back
Top