Modtag bits fra lpt til pic

I

irmus

Guest
Hej.
Jeg bruger SPP mode LPT.Jeg læste en smule fra lpt, eksempel 1, jeg får næste bit eksempel 0 indtil alle få alle 8 bits.How opbevarer alle bits i en "byte" variabel.Jeg bruger Picbasic compiler.
Tak

 
Well en beskidt måde at gøre dette er at gemme bit du modtager på
sin egen variabel.Så du
gerne have en "for loop" at loopes 8 gange og logisk 'eller' de lpt bit med sløjfen counter.Jeg ved ikke, pic grundlæggende syntaks, men C-kode vil se nogenlunde sådan her:

byte_value = 0; / / indstille byte værdien til 0
for (ii = 0x80; i> 0x00 ii / 2) (/ / loop 8 gange

if (lpt_bit == 1) (
byte_value = (byte_value | ii) / / hvis bit er 1 eller byte med loop count
)
...
)

Denne første gang gennem loop, denne tager lpt bit og 'eller
er det med 10000000b.Næste gang gennem loop det 'eller
er det med 01000000b osv. Efter 8 gange, hver plads i byte vil være 1 af dine bit værdier, med MSB i byte er den første værdi, du læser fra lpt port.

Hope this helps

 
Tak, det gaffelgreb OK!
Hvis jeg har byte i eprom $ A0 og jeg vil sende til lpt?
Hvordan kan jeg (eksempel) får fra $ A0 til 10100000 i pic og send det til lpt
Hjælp
Tak

 
Variablen "værdi" ville være den byte i $ A0.Skal du bruge samme løkke (loop 8 gange).

Code:usignerede CHAR ii;

for (ii = 0x80; ii> 0 ii / = 2) / / skift bit for blænding

(

hvis (ii & værdi) (/ / hvis bit i $ A0 er en 1/ / sende et 1 til LPT port

)

else (/ / hvis bit i $ A0 er en 0/ / sende en 0 til LPT port

)

)

 
Tak.Måske du nu!I data fra pic læses med lpt pin 12 med kommandoen
(port1.port [$ 379] og $ 20) shr 5
Men hvordan data læses fra pic bruger pin 10?
Tak!

 

Welcome to EDABoard.com

Sponsor

Back
Top