Re: schnelles SPI Kategorie: Progr. Assembler, TaskingTools, OS (von Michael - 2.05.2006 22:37) | ||
Als Antwort auf Re: schnelles SPI von André H. - 1.05.2006 22:13 | ||
| ||
> Hallo Micha, > > > ich möchte gern ein Vollgrafikfähiges Display (Handy-Display) an die C-Control anschliessen. > > Diese Displays werden über SPI angesteuert. Das Proggi vom Ablauf her geht klar. > > Mein Problem besteht darin, dass der ganze Bildaufbau zu langsam stattfindet. > > Dh. die Bitweise serielle Ausgabe an der CControl funzt zu langsam und somit kann man den > > Bildaufbau Pixelweise beobachten. > > Leider hab ich keinen blassen von Assemblerprogrammierung um das ganze > > in einer Weise ablaufen zu lassen die annehmbar ist. > > > > Kennt jemand aus der Gemeinde einen Link (oder Idee) worüber man eine schnelle SPI über zwei frei > > wählbare Ports bekommt? Mit dem Clock einer CC2 sollte das doch sicher machbar sein, oder > > stosse ich hier an Grenzen der CC. > > An Grenzen stö�t Du hier sicher nicht. > Es sind nur kleine ASM-Routinen für eine schnelle Ausgabe nötig: > > ; P1L.0 CC60IO DI > ; P1L.1 COUT60 DO > ; P1L.2 CC61IO CLK > ; P1L.3 COUT61 > ; P1L.4 CC62IO > ; P1L.5 COUT62 > ; P1L.6 COUT63 > ; P1L.7 CTRAP > ; P1H.0 CC6POS0 > ; P1H.1 CC6POS1 > ; P1H.2 CC6POS2 > ; P1H.3 T7IN > ; P1H.4 CC24IO > ; P1H.5 CC25IO > ; P1H.6 CC26IO > ; P1H.7 CC27IO > > OSsegment EQU 0 > POP_R4 EQU 0765AH ;uses: R4, R12, R13, R14 > PUSH_R12 EQU 075D6H ;uses: R1, R2, R12, R13,R14,R15 > > ; Byte schreiben SPI > > wrbyte proc far > CALLS OSsegment,POP_R4 ;data > MOVB RH4, RL4 > MOV R13,#0h > _1: ;for i=0 ... 7 > > ROL R4, #1 > BMOV COUT60,C > > BCLR CC61IO ; Clock > BSET CC61IO > CMPI1 R13,#07h > JMPR cc_SLT,_1 ; next for; jump if R13 < 0x07 > > BSET COUT60 > > POP R1 > POP R1 > RETS > wrbyte endp > > ; Byte lesen SPI > > rdbyte proc far > > MOV R12,#0 > MOV R13,#0h > _2: ;for i=0 ... 7 > > BCLR CC61IO ; Clock > SHL R12, #1 > BMOV R12.0,CC60IO > > BSET CC61IO > CMPI1 R13,#07h > JMPR cc_SLT,_2 ; next for; jump if R13 < 0x07 > > CALLS OSsegment,PUSH_R12 > POP R1 > POP R1 > RETS > rdbyte endp > > > Das ganze kannst Du z.B. über die Tasking-Tools assemblieren. > > MfG André H. > Hallo André, dank erst mal für deine schnelle Beantwortung meiner Frage. Ich hab zwar zum Assembler noch keinen Draht, werde mich aber mit dem Tasking-Tool beschäftigen. (hoffe dass ich damit klar komme ;-) ). Wenn ich das korrekt lese stehen die UP`s auf Adresse 0765AH und 075D6H Wie rufe ich diese Unterprogramm dann korrekt auf? Gru� Micha | ||
Antwort schreiben Antworten: Re: schnelles SPI (von André H. - 14.05.2006 16:02) Re: schnelles SPI (von Michael - 8.06.2006 20:03) |