Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern Kategorie: Programmierung Basic (von PeterS - 13.09.2010 12:00) | |
Als Antwort auf Port auf 32 Bit oder mehr gleichzeitig ansteuern von Fred - 12.09.2010 10:52
| |
> Hallo Leute, > > Ich hab ein Problem mit dem Mega 128, und zwar brauch ich 32 bit oder mehr mit 1 Befehl, > damit keine Zeitverzögerung drin ist. mit dem c-control 1 konnte man beide Ports mit wordport > ansteuern (Ausgänge). Kann man auch mit dem 128er alle ports gemeinsam ansteuern? Wäre nett, > wenn mir da jemand helfen könnte. > > Endergebnis wäre dann ein Würfel, wie man ihn bei diversen Videoportalen bewundern kann (8x8x8 RGB) > Da ich für den alten c-control 1 vorher den 4x4x4 rgb würfel gebaut habe, dieser auch perfekt > funktioniert, aber für mehr einfach zu langsam ist, wollte ich den 128er dafür verwenden. ich > versuch grad, den 4x4x4 würfel auf dem 128er zum laufen zu bekommen, habe hier aber timingprobleme, > weil ich die ports nur einzeln ansprechen kann, also jeweils nur 8 bit. > > ich hab meinen bisherigen programmcode mal drunterkopiert, dann ist das problem wohl ersichtlich. Sag mal, in welcher Zeit mu� denn auf den Port geschrieben werden? Ich kann das mal messen, aber ich würde darauf tippen, das 8-Bit in ca. 100µs auf den Port geschrieben werden. Gruss Peter > > > Dim delval As Integer > Sub Port_CNT(delay_val As Integer) > Dim i As Integer > Dim a As Integer > a = 0 > #define PORT3 3 > Port_DataDir(PORT3,255) > #define PORT2 2 > Port_DataDir(PORT2,255) > For i=0 To 255 > a = a + 1 > Port_Write(PORT3,0) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,1) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,2) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,3) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,4) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,5) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,6) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,7) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,8) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,9) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,10) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,11) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,12) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,13) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,14) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Port_Write(PORT3,15) > Port_Write(PORT2,a) > AbsDelay(delay_val) > Next > End Sub > > '------------------------------------------------------------------------------ > ' Hauptprogramm > ' > Sub main() > delval=0 > Do While True > Port_CNT(delval) > End While > End Sub > | |
Antwort schreiben Antworten: Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Fred - 13.09.2010 18:57) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Franz-Peter - 13.09.2010 20:21) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Fred - 14.09.2010 22:05) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Franz-Peter - 14.09.2010 22:46) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Fred - 15.09.2010 21:28) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Franz-Peter - 15.09.2010 22:08) Re: Port auf 32 Bit oder mehr gleichzeitig ansteuern (von Franz-Peter - 15.09.2010 22:54) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum