Hallo Leute,
habe mir jetzt einen 8-Bit DAC aus 10k bzw. 20k R, einem TLC272 und einem BC337-16 gebaut. Das ganze funktioniert ganz gut, bis auf dass ich max. 3.6V ca. Ausgangsspannung habe. Das liegt aber glaube ich daran, dass der TLC272 und der BC337-16 die restliche Spannung "verbrauchen".
Das ist jetzt auch garnicht mein Problem!
Ich möchte mir damit einen Sinus ausgeben lassen, was ich auch mit folgendem Code schön hinbekommen habe:
Jedoch möchte ich mir die Werte durch den µC selbst ausrechnen lassen, mit der Sinus funktion! Hier mal mein Programm dazu:Code:$regfile = "m32def.dat" $crystal = 16000000 $framesize = 80 $hwstack = 80 $swstack = 80 Config Portc = Output Portc = 0 Dim X As Byte X = 0 Dim Y As Byte Do Incr X If X = 120 Then X = 0 Y = Lookup(x , Dta) Y = Y / 2 Portc = Y Waitus 1 Loop End Dta: Data 128 , 134 , 141 , 147 , 154 , 160 , 167 , 173 , 179 , 185 , 191 , 197 , 202 , 208 , 213 , 218 , 222 , 227 , 231 , 234 , 238 , 241 , 244 , 247 , 249 , 251 , 252 , 253 , 254 , 255 , 255 , 255 , 254 , 253 , 252 , 251 , 249 , 247 , 244 , 241 , 238 , 234 , 231 , 227 , 222 , 218 , 213 , 208 , 202 , 197 , 191 , 185 , 179 , 173 , 167 , 160 , 154 , 147 , 141 , 134 , 128 , 121 , 114 , 108 , 101 , 95 , 88 , 82 , 76 , 70 , 64 , 58 , 53 , 47 , 42 , 37 , 33 , 28 , 24 , 21 , 17 , 14 , 11 , 8 , 6 , 4 , 3 , 2 , 1 , 0 , 0 , 0 , 1 , 2 , 3 , 4 , 6 , 8 , 11 , 14 , 17 , 21 , 24 , 28 , 33 , 37 , 42 , 47 , 53 , 58 , 64 , 70 , 76 , 82 , 88 , 95 , 101 , 108 , 114 , 121 , 128
Die ZeileCode:$regfile = "m32def.dat" $crystal = 16000000 $framesize = 80 $hwstack = 80 $swstack = 80 $baud = 19200 Dim X As Single Dim Y As Single Do For X = 0 To 90 Step 5 Y = Sin(x) Y = Y * 250 Print "Ausgabewert: " ; Y Print "" Wait 1 Next X Loop End
y = y * 250
ist nur dazu da, damit ich Werte zwischen ca. 0 und 250 bekomme, welche ich dann direkt auf den Portc geben möchte, da dort mein DAC angeschlossen ist!
Allerdings kommen dabei bei der
y = sin(x)
funktion ganz andere Werte als beim Taschenrechner raus, teilweise sind diese auch negativ!
Ist das ein Bug meiner Version (1.11.9.1) oder mache ich etwas falsch??
Danke schon mal für eure Antworten!
Gruß
Chris
Lesezeichen