- Labornetzteil AliExpress         
Seite 25 von 51 ErsteErste ... 15232425262735 ... LetzteLetzte
Ergebnis 241 bis 250 von 503

Thema: Gameboy Camera, Probleme bei dem Auslesen des Bildes

  1. #241
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    Anzeige

    Powerstation Test
    HI roboter!

    Könntest du dein Programm mit meinem Vergleichen, oder es hier posten?
    (Es ist ja irgendwas mit 8051, wen ich mich recht erinnere...?)
    Weil mein READ geht partout nciht auf LOW, wenn 3 0 ist.

    ERGO muss ich irgendwo einen BUG haben!

    Das wäre sehr nett, wenn du das machen könntest!! *bidde*

    Viele liebe Grüße;
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  2. #242
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.11.2004
    Beiträge
    263
    Zur Zeit habe ich dieses Programm:
    Code:
    'Gameboy Kamera
    
    $regfile = "m8515.dat"                                      'ATmega8515-Deklarationen
    $crystal = 4000000                                          'Quarz: 4 MHz
    $baud = 9600
    
    Declare Sub Register_laden(addr As Byte , Wert As Byte)
    
    Dim Regwert(8) As Byte
    Dim Regaddr(8) As Byte
    
    Dim I As Byte
    
    Dim Bild(16384) As Xram Byte
    Dim Z As Word
    
    'Register festlegen:
    Regaddr(1) = 1
    Regaddr(2) = 2
    Regaddr(3) = 3
    Regaddr(4) = 4
    Regaddr(5) = 5
    Regaddr(6) = 6
    Regaddr(7) = 7
    Regaddr(8) = 0
    
    Regwert(1) = 7
    Regwert(2) = 255
    Regwert(3) = 255
    Regwert(4) = 1
    Regwert(5) = 0
    Regwert(6) = 1
    Regwert(7) = 7
    Regwert(8) = 0
    
    Config Scl = Portb.2
    Config Sda = Portb.3
    
    'A/D-Wandler einstellen:
    I2cinit
    I2cstart
    I2cwbyte &B10010000
    I2cwbyte &B00000000
    I2cstop
    
    
    Config Portb.0 = Output                                     'XCK
    Config Portb.1 = Output                                     'Reset
    Config Portb.4 = Output                                     'Sin
    Config Pind.3 = Input                                       'read
    Config Portd.4 = Output                                     'Load
    Config Portd.5 = Output                                     'Start
    
    Config Portd.2 = Output
    Portd.2 = 1
    
    Xckpin Alias Portb.0
    Resetpin Alias Portb.1
    Sinpin Alias Portb.4
    Loadpin Alias Portd.4
    Startpin Alias Portd.5
    Readpin Alias Pind.3
    
    Resetpin = 1                                                'Reset High
    Xckpin = 1                                                  'XCK High
    Loadpin = 0                                                 'Load Low
    Startpin = 0                                                'Start Low
    
    'Reset:
    Waitus 5
       Xckpin = 0
    Waitus 5
       Xckpin = 1
    Waitus 5
       Xckpin = 0
    Waitus 5
       Xckpin = 1
    Waitus 5
       Xckpin = 0
    Waitus 2
       Resetpin = 0
    Waitus 3
       Xckpin = 1
    Waitus 2
       Resetpin = 1
    Waitus 3
       Xckpin = 0
    Waitus 2
    
    'Register Laden
    Call Register_laden(regaddr(1) , Regwert(1))
    Call Register_laden(regaddr(2) , Regwert(2))
    Call Register_laden(regaddr(3) , Regwert(3))
    Call Register_laden(regaddr(4) , Regwert(4))
    Call Register_laden(regaddr(5) , Regwert(5))
    Call Register_laden(regaddr(6) , Regwert(6))
    Call Register_laden(regaddr(7) , Regwert(7))
    Call Register_laden(regaddr(8) , Regwert(8))
    
    'Start:
    Startpin = 1
    Waitus 3
    Xckpin = 1
    Waitus 2
    Startpin = 0
    Waitus 3
    Xckpin = 0
    Waitus 4
    
    'Warten Bis Bild Fertig:
    While Readpin = 0
       Xckpin = 1
       Waitus 4
       Xckpin = 0
       Waitus 4
    Wend
    
    Z = 0
    I2cstart
    I2cwbyte &B10010001
    I2crbyte I , 8
       While Readpin = 1
          Xckpin = 1
          Waitus 2
          Incr Z
          I2crbyte I , 8
          Bild(z) = I
          Xckpin = 0
          Waitus 4
       Wend
       I2crbyte I , 9
       Incr Z
       Bild(z) = I
    I2cstop
    Portd.2 = 0
    
    For Z = 1 To 16384
       Printbin Bild(z);
    Next
    
    Do
    Loop
    
    End                                                         'end program
    
    Sub Register_laden(addr As Byte , Wert As Byte)
       'Registeraddr übertragen:
       For I = 2 To 0 Step -1
          Sinpin = Addr.i
          Waitus 3
          Xckpin = 1
          Waitus 5
          Xckpin = 0
          Waitus 2
       Next
       'Registerwert übertragen:
       For I = 7 To 0 Step -1
          Sinpin = Wert.i
          Waitus 3
          Xckpin = 1
          Waitus 2
          If I = 0 Then
             Loadpin = 1
          End If
          Waitus 3
          Xckpin = 0
          Waitus 2
          Loadpin = 0
       Next
       Sinpin = 0
    End Sub
    Eine andere Frage habe ich aber jetzt auch noch:

    Wie man im Code sehen kann, habe ich die Register 2 und 3 jetzt mal auf 255 gesetzt. Diese Register sind doch für die Belichtungszeit und wenn man sie auf 255 setzt, müßte man doch ein komplett weißes Bild bekommen.

    Im Terminalprogramm bekomme ich immer nur Werte zwischen 178 und 179. Aber es müßten doch Werte um 255 sein, oder nicht?
    Woran kann das liegen?

  3. #243
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    Hi!

    Danke!

    Wie hoch ist dein Offset-Register?

    Werde das gleich mal anschauen! HITZEFREI!!!

    vlg tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  4. #244
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.11.2004
    Beiträge
    263
    Zitat Zitat von tobimc
    Wie hoch ist dein Offset-Register?
    Wie Offset-Register?


    Zitat Zitat von tobimc
    HITZEFREI!!!
    Ich habe zum Glück keine Schule mehr und arbeiten muß ich auch erst in zwei Monaten...

  5. #245
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    Hi!

    No, die Kamera stürzt bei mir bei Reg3 = 0 ab....

    Setz bei dir mal Reg0 auf 0x00.
    Da geben die ersten 6 Bits das Offsetlevel an, wobei O5 angbit, ob die Spannung abgezogen(LOW) oder dazugegeben(HIGH) wird.
    Die Offsetspannung wird entweder zu der Pixelspannung dazugegeben, oder abgezogen.

    Viele liebe Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  6. #246
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    Hi roboter!

    SACHMAL...
    HAT XCK RUHEMÄßIG HIGH-PEGEL?!

    Viele liebe Grüße
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  7. #247
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.11.2004
    Beiträge
    263
    Achso!

    Reg0 war schon auf 0

  8. #248
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.11.2004
    Beiträge
    263
    Zitat Zitat von tobimc
    HAT XCK RUHEMÄßIG HIGH-PEGEL?!
    Also vorm Reset ist XCK HIGH, und nachdem das Bild ausgelesen ist, ist XCK LOW.

    Oder wie meinst du das jetzt? Bin heute etwas schwer von Begriff

  9. #249
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    Hi!

    Ich kann bei mir jetzt das Reg 3 auch auf 0 setzen.
    Und weist du warum?

    WEIL ICH DEPP DAS ERSTE ADRESSBIT ALS ERSTES GESENDET HABE!!!

    Regadr.0
    Redadr.1
    Regadr.2
    statt
    Regadr.2
    Redadr.1
    Regadr.0

    BIN ICH DOOF!

    Naja, jetzt kommt auf jeden Fall wieder ein weisses Bild raus...

    Das mit dem XCK checke ich jetzt nciht.
    Also, immer wenn man einen Takt ausgeben will, geht man doch auf HIGH, und dann wieder auf LOW usw. Die Camera bracuht soch als Takt eine ansteigense Flanke, wenn ich das richtig gelesen habe, oder?

    Danke für deim Programm!! ES HAT MIR DIE AUGEN GEÖFFNET!!

    Viele liebe Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  10. #250
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    34
    Beiträge
    1.461
    hi!

    UND: Warum gibst du vor dem RESET 2 Taktimpulse aus?
    Muss das so sein? *dasistmirneu*

    Viele liebe Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

Seite 25 von 51 ErsteErste ... 15232425262735 ... LetzteLetzte

Berechtigungen

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

12V Akku bauen