Wie willst du (falls du das planst) den Font einbauen?
Ich bin mal gespannt ob wir nich das drehende IC zu sehen kriegen, aber dafür habe ich wohl in Mathe nicht genug aufgepasst *grins*
Hallo,
das Bascom nicht unbedingt langsamer ist als C wurde hier im forum glaube ich schonmal bewiesen. Leider haben hier einige (ICH übrigens auch) gar keine Erfahrung mit C und wollen es evtl auch gar nicht? (finde Pascal und Basic wesentlich angenehmer zu lesen)
Wenn dir der Beitrag hier nicht passt, werde ich ihn von Frank verschieben lassen.
Achja ich möchte eigentlich das aufkommen von diskussionen vermeiden, die nicht zum Thema gehören. Habe das schon oft beobachtet (auch bei mikrocontroller.net) das einige leute sachen posten die nicht zum eintrag gehören, was ich nicht sehr angenehm finde, und die auch besonders bei langen threads oft verwirren.
Hallo,
Also es geht weiter !
Das mit den Objekten ging viel einfacher als ich erwartet hatte.
ich musste allerdings leider das Programm ziemlich umbauen,
weil es wegen der ständigen Herumschieberei der Variablen
so gebremst wurde, das es schon zu Flimmern anfing.
Ich hab wieder auf globale Vars umgestellt. Sorry
Aber dafür bewegen sich jetzt schon zwei Objekte
schön flüssig über den Oszi-Schirm.
Probier es mal aus.
Z-Achse hab ich immer noch "ausgeblendet"
Gruß Jan
Code:$regfile = "m32def.dat" $crystal = 16000000 '######### Variablen Hauptprogramm Dim H As Integer Dim Hs As Integer Dim Ss As Byte '########### Variablen Vektorgrafik Dim X As Integer Dim Y As Integer Dim Z As Integer Dim Xa As Integer Dim Ya As Integer Dim Xe As Integer Dim Ye As Integer Dim Xs As Integer Dim Ys As Integer Dim T as integer '########### Deklarationsteil für Subroutinen Declare Sub Moverel Declare Sub Moveabs Declare Sub Drawrel 'Zeichnet vom aktuellen Punkt zur relativen position eine linie Declare Sub Drawabs 'Zeichnet vom aktuellen Punkt zu den angegebenen kordinaten eine linie Declare Sub Showdot Declare Sub Drawobj '########### Deklarationsteil für Ports Xp Alias Porta Yp Alias Portc Zp Alias Portf.1 'wenn f=0 dann ist der punkt sichtbar, wenn f=1 then ist der punkt aus Config Xp = Output Config Yp = Output '################# Start Hauptprogramm 'Zp = 1 ' dunkel H = 0 Hs = 1 Ss = 0 Do X = 50 : Y = 50 : Call Moveabs X = 100 : Y = 0 : Call Drawrel X = 0 : Y = 100 : Call Drawrel X = -100 : Y = 0 : Call Drawrel X = 0 : Y = -100 : Call Drawrel Xa = 50 : Ya = 150 : X = 100 : Y = 200 : Call Drawabs Xa = 150 : Ya = 150 : X = 100 : Y = 200 : Call Drawabs Xa = 50 : Ya = 150 : X = 150 : Y = 50 : Call Drawabs Xa = 50 : Ya = 50 : X = 150 : Y = 150 : Call Drawabs X = 0 : Y = 0 : Call Moveabs Restore Obj5 : X = 60 : Y = 80 : Call Drawobj Restore Obj5 : X = 130 : Y = 80 : Call Drawobj H = H + Hs If H = 200 Then Hs = -1 If H = 0 Then Hs = 1 Restore Obj5 : X = 20 : Y = H : Call Drawobj Ss = Ss + 1 Restore Spaceship : X = Ss : Y = 170 : Call Drawobj Loop End '################# Ende Haputprogramm; beginn subroutinen Sub Drawabs X = X - Xa : Y = Y - Xa Xp = Low(xa) : Yp = Low(ya) Call Drawrel End Sub '################################# Sub Drawrel Xe = Xa + X : Ye = Ya + Y Xs = 1 : Ys = 1 If X < 0 Then Xs = -1 : X = 0 - X End If If Y < 0 Then Ys = -1 : Y = 0 - Y End If If X < Y Then Goto Walky Walkx: T = X Shift T , Right , 1 Do 'Zp = 0 Xp = Xa : Yp = Ya Xa = Xa + Xs ':immer einen Schritt in x-Richtung weiter T = T - Y ';Schritt in Y-Richtung nötig ? If T <= 0 Then ';wenn <=0 dann ja T = T + X '; Ya = Ya + Ys ';Schritt in Y-Richtung End If Loop Until Low(xa) = Low(xe) ';Wiederholen bis Ende der Linie 'Zp = 1 Goto Ex1 Walky: T = Y Shift T , Right , 1 Do 'Zp = 0 Xp = Xa : Yp = Ya Ya = Ya + Ys ':immer einen Schritt in x-Richtung weiter T = T - X ';Schritt in Y-Richtung nötig ? If T <= 0 Then ';wenn <=0 dann ja T = T + Y '; Xa = Xa + Xs ';Schritt in Y-Richtung End If Loop Until Low(ya) = Low(ye) ';Wiederholen bis Ende der Linie 'Zp = 1 Ex1: End Sub '############################## Sub Moveabs 'Bewegt den punkt gedimmt zu der angegebenen position (x,y) Xa = Low(x) 'Xaktuell setzen Ya = Low(y) 'Xaktuell setzen Xp = Low(x) 'Xport setzen Yp = Low(y) 'yPort setzen End Sub '############################## Sub Moverel Xa = Xa + X : Ya = Ya + Y End Sub '############################## Sub Showdot 'zeigt den punkt an seiner aktuellen position an 'Zp = 0 'licht ein Waitus 2 'kurz warten 'Zp = 1 'lichtwieder aus End Sub '############################## Sub Drawobj Call Moveabs Do Read X : Read Y : Read Z If Z > 0 Then Call Drawrel Else Call Moverel Loop Until Z > 1 End Sub '######## Objektdefinitionen 'X, Y, Z 'X, Y, Z 'X und Y sind relative Positionen 'z=0 bedeutet moverel 'z=1 bedeutet sichtbare Linie 'Ende Objekt ist wenn z=3 Spaceship: Data 15% , 8% , 1% Data -15% , 8% , 1% Data 6% , -8% , 1% Data -6% , -8% , 1% Data 4% , 8% , 0% Data -5% , 3% , 1% Data 5% , -3% , 1% Data -5% , 0% , 1% Data 5% , 0% , 1% Data -5% , -3% , 1% Data 5% , 3% , 3% Obj5: Data 5% , 0% , 1% Data 5% , 5% , 1% Data 0% , 5% , 1% Data -5% , 5% , 1% Data -5% , 0% , 1% Data 0% , 10% , 1% Data 10% , 0% , 3%
@Pebisoft:
Hallo Peter,
schön, das du dich auch dafür interessierst.
Warum machst du nicht mit, und steuerst auch
ein paar hilfreiche Ideen dazu bei,
um die Sache voranzubringen ?
Als nächstes möchten wir Objekte drehen und skalieren können.
Hast du da einen Vorschlag für, wie man das machen könnte ?
Gerne auch in C.
Gruß Jan
Hallo,
ich denke das das so passt mit Z... (spart jedes mal ein bisschen zeit) man kann ja den anschluss lassen, und nur wenn man es nicht anders vermeiden kann ausblenden.... Habe noch ein altes RFT oszi wo der vorbesitzer ganzganz schlecht mit umgegangen ist... wenn das hier schön läuft, werde ich die röhre und den trafo nehmen und mal schauen was man vielleicht stand alone anrichten kann. melde mich dann wenn die software läuft.
@jan: Wie machst du die objekte - im kopf??
hallo, ich habe ein projekt mit einem fernseher (15cm) 12volt, habe horizontale und vertikale steuerung abgeklemmt und die strahlausschaltung. bei mir auf dem arbeitstisch steht nur die bildröhre, die ich im rahmen befestigt habe. man kann auch schön die frequenz mit pwm simulieren.
habe alle anschlüsse an der röhre steckbar gemacht. steuere die beiden jetzt über einen AVR an und einem verstärkungstransistor. die endausschläge des strahls brauchen ca 12 volt. kann den strahl nach rechts nach links nach oben und nach unten schicken. schalte ihn ein wenn er leuchten muss oder auch nicht. eine einfache und günstige lösung. es funktioniert genauso wie auf dem scope. eine schöne experimentielle grundlage auch für diejenigen, die sich kein scope leisten können. die kleinen fernseher mit 12v netzteil bekommt man/frau bei Ebay schon für 15 euro. mfg pebisoft
Also das prog läuft soweit. Habe Z erstmal drin gelassen, weil wenn man nur das shiffchen und die 5 bewegt (mit 10ms pause) dann prennt der eine punkt doch schon ganz schön... Da das nun funktioniert, wäre ein font echt geil, meinst du einstrich font oder so jeder character mit nem rahmen zu zeichnen sieht besser aus??
Hallo phebisoft, sorry für den etwas garstigen eintrag von mir gestern. War warscheinlich überreagiert.. Mit dem TV ist echt ne geile idee, was mich interessiert ist, pfeifft der trafo in den dingern immernoch so erbärmlich, wie bei dem, den ich mir vor 10 jahren mal gekauft habe?
zur zeit arbeite ich am cmu2cam projekt und am gameboycam projekt im zusammenhang mit video-capture, übertragen der bilder seriell zum pc, daten als ton-frequenz vom AVR über video/audio-funk vom robby zum pc und den ton auswerten und umwandeln in daten. objekterkennung mit einem gegrabten video-bild von einer lifeübertragung und objekterkennung an einem seriell übertragenen bild.
also zur zeit ausgelastet.
mfg pebisoft
Lesezeichen