- 12V Akku mit 280 Ah bauen         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: µC /Sinustabelle

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    24.04.2005
    Beiträge
    9

    µC /Sinustabelle

    Anzeige

    Praxistest und DIY Projekte
    hi,

    hätte da mal ne frage, ich hab da ne sinustabelle im internet gefunden, und mich würde jetzt interessieren, was stehen da für werte drin, das können ja nicht direkt die amplitudenwerte der einzelnen winkel sein.

    ;
    ; Sinustabelle fuer 8 Bits D/A
    ; Tabellenlaenge = 256 Werte
    ; VCC=5.000V, uLow=0.000V, uHigh=2.500V
    ; (mit sinewave.pas erzeugt)
    ;
    Sinetable:
    .DB 64,65,67,68,70,72,73,75
    .DB 76,78,79,81,82,84,85,87
    .DB 88,90,91,92,94,95,97,98
    .DB 99,100,102,103,104,105,107,108
    .DB 109,110,111,112,113,114,115,116
    .DB 117,118,118,119,120,121,121,122
    .DB 123,123,124,124,125,125,126,126
    .DB 126,127,127,127,127,127,127,127
    .DB 128,127,127,127,127,127,127,127
    .DB 126,126,126,125,125,124,124,123
    .DB 123,122,121,121,120,119,118,118
    .DB 117,116,115,114,113,112,111,110
    .DB 109,108,107,105,104,103,102,100
    .DB 99,98,97,95,94,92,91,90
    .DB 88,87,85,84,82,81,79,78
    .DB 76,75,73,72,70,68,67,65
    .DB 64,62,61,59,58,56,54,53
    .DB 51,50,48,47,45,44,42,41
    .DB 39,38,36,35,34,32,31,30
    .DB 28,27,26,25,23,22,21,20
    .DB 19,18,17,15,14,13,13,12
    .DB 11,10,9,8,8,7,6,5
    .DB 5,4,4,3,3,2,2,2
    .DB 1,1,1,0,0,0,0,0
    .DB 0,0,0,0,0,0,1,1
    .DB 1,2,2,2,3,3,4,4
    .DB 5,5,6,7,8,8,9,10
    .DB 11,12,13,13,14,15,17,18
    .DB 19,20,21,22,23,25,26,27
    .DB 28,30,31,32,34,35,36,38
    .DB 39,41,42,44,45,47,48,50
    .DB 51,53,54,56,58,59,61,62

    und was heißt das .DB. falls ich mal richtig angenommen hab beginnt der sinus bei 64, hat seinen positiven scheitelwert bei 128, seinen negativen scheitelwert bei 0 und seine nullpunkte dürften bei 64sein.

    aber was sind das für werte, die stehen ja dann nicht direkt im diagramm vom sinus drinnen. ich bin vollkommen verwirrt.

    mfg wosh

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    In der vertikalen isses schon klar, das ist vermutlich
    Y = 64 + 64 * sin( x * scaleX ) gerundet, logo.
    Jetzt müßt man noch scaleX rausklamüsern.
    von 64 --> 64 soll's wohl Pi/2 sein
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    22.01.2005
    Beiträge
    82
    Ist doch eigentlich alles ganz klar:
    die Tabelle enthällt alle Werte einer einzelnen Sinusschwingung mit der Amplitude +/- 2,5 V, wobei bei 2,5V der virtuelle Nullpunkt liegt. Sie geginnt bei 64, was dem Wert 0 entspricht (2,5V). Dann steigt sie an, hat bei 128 (eigentlich müsste das 127 heißen, da 7bit 0...127) ihr maximum, fällt wieder, geht durch 64 und erreicht dann irgendwann das Minimum mit 0V. Dann steigt sie wieder bis sie schließlich den Ausgangspunkt 64 erreicht (hört hier bei 62 halt auf).
    Insgesamt teilt sie eine Schwingung in 32*8 = 256 einzelne Zeitpunkte auf.
    DB heißt übrigens Databyte oder so und sagt dem Compiler, dass nun die nächsten ( Werte einfach gespeichert werden sollen (dezimal).
    Vorher steht wahrscheinlich irgendwo noch z.B. org 300h, d.h. der Compiler legt die Werte ab Adresse 300 als Tabelle ab.
    Nun kann man je nach Programmgestaltung und Zeitschleifen auch unterschiedliche Frequenzen erzeugen. Hauptsache die einzelnen Tabellenwerte werden immer im gleichen Zeitlichen Abstand ausgegeben.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    24.04.2005
    Beiträge
    9
    wenn ich dies jetzt zeichnen würde, würde ich dann auf der x Achse von 0 - 255 eintragen, weil es ja 256 Werte sind, und auf der Y Achse:

    der Nullpunkt ist 64, dann geht der sinus bis zu seiner positiven amplitude, welche bei 127 ist, dann wieder auf 64, dann auf seine negative amplitude bei 0 und dann wieder auf 64.

    würde das so stimmen?

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    24.04.2005
    Beiträge
    9
    ajo und noch was, hat jemand vielleicht eine etwas bessere sinustabelle bei der hand, die nicht so fehlerhaft ist, wo z.B die amplitude stimmt und ganz unten z.B wieder bei 64 endet, weil ich hab kein plan wie ich die richtig umschreiben soll, dass das stimmt.

    brauch sie eh nicht zum programmieren, ich muss das nur veranschaulichen.

    mfg wosh

  6. #6
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    71
    Beiträge
    13.075
    Vielleicht kann man auch schnell mal sie Excel Funktion für die Sinustabelle optimieren, dann kann man die Tabelle den Erfordernissen anpassen, für alle die sie brauchen.
    Die Funktion für die Werte 0 bis 255 in den Feldern A1 bis A256:

    Ich gebe mal als Anfangsnäherung die Funktion
    =64+64*SIN(A1/256*2*PI())

    Mit der Beschränkung auf ganze Zahlen und Beschränkung auf den Wertebereich von 0 bis 127 ergibt sich beispielsweise
    =GANZZAHL(64+(64*SIN(A1/256*2*PI()))*0,999999)

    Die Werte lauten dann:

    064, 065, 067, 068, 070, 071, 073, 074, 076, 078, 079, 081, 082, 084, 085, 087,
    088, 089, 091, 092, 094, 095, 096, 098, 099, 100, 102, 103, 104, 105, 106, 108,
    109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 118, 119, 120, 121, 121, 122,
    123, 123, 124, 124, 125, 125, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127,
    127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 125, 125, 124, 124, 123,
    123, 122, 121, 121, 120, 119, 118, 118, 117, 116, 115, 114, 113, 112, 111, 110,
    109, 108, 106, 105, 104, 103, 102, 100, 099, 098, 096, 095, 094, 092, 091, 089,
    088, 087, 085, 084, 082, 081, 079, 078, 076, 074, 073, 071, 070, 068, 067, 065,
    064, 062, 060, 059, 057, 056, 054, 053, 051, 049, 048, 046, 045, 043, 042, 040,
    039, 038, 036, 035, 033, 032, 031, 029, 028, 027, 025, 024, 023, 022, 021, 019,
    018, 017, 016, 015, 014, 013, 012, 011, 010, 009, 009, 008, 007, 006, 006, 005,
    004, 004, 003, 003, 002, 002, 001, 001, 001, 000, 000, 000, 000, 000, 000, 000,
    000, 000, 000, 000, 000, 000, 000, 000, 001, 001, 001, 002, 002, 003, 003, 004,
    004, 005, 006, 006, 007, 008, 009, 009, 010, 011, 012, 013, 014, 015, 016, 017,
    018, 019, 021, 022, 023, 024, 025, 027, 028, 029, 031, 032, 033, 035, 036, 038,
    039, 040, 042, 043, 045, 046, 048, 049, 051, 053, 054, 056, 057, 059, 060, 062,

    Das ist im wesentlichen die Tabelle die vorgegeben war. Immerhin ist die 128 nicht mehr dabei.

    Manfred

  7. #7
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Vielleicht ein Hinweis: weiter als bis Pi/4 braucht man die Tabelle nicht anzulegen. Aber das wißt ihr wahrscheinlich eh alle.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    24.04.2005
    Beiträge
    9
    warum eigentlich pi/4, der sinus beginnt ja normalerweise, bei 0 und ist bei pi wieder 0.

    Dh. der zeitpunkt wo wir bei der positiven amplitude sind ist pi/2 und das wären 90°vom sinus.

    warum dann pi /4, und warum beginnen wir mit pi/2 wie oben gesagt wurde?

    mfg harald

  9. #9
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Von 0 - PI/4 ist der sinus eben der sinus
    von PI/4 - PI/2 kannst du auch nehmen sin = cos(PI/2 - x)
    und der Cos ist ja cos = SQR( 1 - sin^^2 )
    Und daß man grundsätzlich nur einen Quadranten braucht, ist ja schon klar, von PI/2 - PI geht ja auch sin = (PI - x), und mit dem Vorzeichen muß man ohnehin jonglieren.
    Ich räum aber ein, man muß abwägen.
    Wenn die Genauigkeit der obigen Tabelle tatsächlich reicht und/oder man Platz genug hat, zahlt es sich vielleicht nicht aus.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  10. #10
    Unregistriert
    Gast

    Sinus Tabelle für Microcontroller

    Zitat Zitat von wosh Beitrag anzeigen
    hi,

    hätte da mal ne frage, ich hab da ne sinustabelle im internet gefunden, und mich würde jetzt interessieren, was stehen da für werte drin, das können ja nicht direkt die amplitudenwerte der einzelnen winkel sein.

    [...]

    aber was sind das für werte, die stehen ja dann nicht direkt im diagramm vom sinus drinnen. ich bin vollkommen verwirrt.

    mfg wosh
    Hier ist das ganz gut erklärt, auch mit praktischem Beispiel. Zum besseren Verständnis kann man ja auch
    unter Downloads mit der Sinus-Tabelle für Libre Office ein wenig herumexperimentieren.

    http://www.afug-info.de/Download/tab/Sinus-Tab/

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests