Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Finn informasjon om timing og signal
- Trinn 2: Om DPI -modus
- Trinn 3: Aktivering av DPI -modus
- Trinn 4: Konfigurere videomaskinvaren
- Trinn 5: Konfigurer Framebuffer og konfigurer en tilpasset videomodus
- Trinn 6: Koble til alt
- Trinn 7: Oppsummering
Video: Gjør en ødelagt Mac Classic til en moderne Raspberry Pi-datamaskin: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Vel, dette er kanskje ikke nyttig for alle, fordi de fleste av dere sannsynligvis ikke eier en ødelagt klassisk Mac. Imidlertid liker jeg virkelig visningen av den tingen, og jeg koblet den vellykket til en BBB -år siden. Imidlertid klarte jeg aldri å vise innholdet i rammebufferen. Men Raspberry Pi, og dens innebygde DPI, lar deg koble til praktisk talt hvilken som helst ekstern skjerm og bruke den til å enkelt vise videoutgangen.
Vær oppmerksom på at dette er en forenklet kopi av den originale artikkelen som ble publisert på mitt personlige nettsted. Den originale versjonen diskuterer noen flere tekniske detaljer og problemer jeg hadde under dette prosjektet.
Rekvisita
Du vil trenge:
- Et teknisk datablad for skjermen
- En 40-pins Raspberry Pi (2B+ eller nyere)
- Enhver (i det minste noe) standardmonitor
- Valgfritt: 3.3V til 5V logisk nivåomformer (avhenger av skjermen)
- Ledninger
Trinn 1: Finn informasjon om timing og signal
Dette er sannsynligvis det vanskeligste trinnet i hele prosjektet fordi brukermanualer vanligvis ikke inneholder denne informasjonen. Jeg tror det er best hvis du begynner med å søke etter tekniske manualer eller reparasjonsmanualer for skjermen. Hvis skjermen er en standard VGA -skjerm, kan du slå opp tidsinformasjonen online.
Uansett, timediagrammet for Macintosh Classic's interne CRT vises. Heldigvis har noen lastet opp de gamle utviklernotatene, som inneholder alle slags tekniske detaljer for den datamaskinen. Jeg vil diskutere de nøyaktige tidspunktene i et senere trinn i denne instruksen.
Hvis du ikke vet hvordan VGA -signaler (eller dette Mac -skjermsignalet) fungerer, kan du ta en titt på disse ressursene:
- VGA -signaler
- Macintosh Classic's CRT
Trinn 2: Om DPI -modus
Du har kanskje sett noen Raspberry Pi -skjermhatter som bare kobles til via GPIO -grensesnittet. De bruker DPI-modusen til 40-pinners GPIO Raspberry Pi, som er en av de alternative funksjonene til GPIO.
I så fall endres pinout av GPIO -banken. Resultatet kan sees på bildet (bildekilde).
Denne konfigurasjonen gjør at parallelle RGB -skjermer kan festes til Raspberry Pi GPIO. Dette betyr imidlertid også at de fleste GPIO -pinnene ikke kan brukes til andre oppgaver mens Pi fungerer i DPI -modus.
Dette grensesnittet styres av GPU -fastvaren og kan konfigureres med spesielle config.txt -parametere. Videre må du også laste inn og aktivere riktig Linux Device Tree -overlegg.
Trinn 3: Aktivering av DPI -modus
Som nevnt aktiveres modusen ved å laste inn riktig Linux Device Tree -overlegg. Men først må du deaktivere I2C og SPI, fordi de vil komme i konflikt med noen av videopinnene. For å gjøre det, rediger config.txt -filen:
sudo nano /boot/config.txt
Kommenter følgende to linjer i den filen:
dtparam = i2c_arm = ondtparam = spi = on
Når det er gjort, setter du GPIO i Alt2 -modus ved å laste DTO:
# 24-biters modedtoverlay = dpi24# 18-biters modus# dtoverlay = dpi18
Modusen avhenger av skjermen. Jeg brukte 8-biters modus, hvor hver farge (rød, grønn og blå) har åtte separate biter som overfører fargeinformasjonen til skjermen. Vær oppmerksom på at begge DTO -er allerede er installert som standard.
Trinn 4: Konfigurere videomaskinvaren
DPI -modusen kan konfigureres ved å plassere spesielle attributter i filen config.txt. Jeg skrev dette lille Java -programmet som lar deg raskt legge inn all nødvendig informasjon. Det vil da generere attributtene for deg, og du trenger bare å legge dem til config.txt -filen.
Dette verktøyet er universelt og kan også brukes til å lage konfigurasjonsegenskapene for andre skjermer. De forskjellige feltene og parameterne er forklart på appens nedlastingsside. Jeg brukte følgende to attributter for Macintosh Classic CRT:
dpi_output_format = 0x76017 dpi_timings = 512 0 14178 0342 0 0 4 24 0 0 0 60 0 15667200 1
Trinn 5: Konfigurer Framebuffer og konfigurer en tilpasset videomodus
Du kan enten bruke en forhåndskonfigurert timemodus, eller definere en tilpasset. I dette tilfellet kan ingen standard videomodus brukes til å koble skjermen. Derfor måtte jeg definere en tilpasset videomodus, som kan gjøres ved å sette følgende to flagg i config.txt -filen:
dpi_group = 2dpi_mode = 87
Dette vil sikre at parameteren dpi_timings, beskrevet ovenfor, brukes av driveren når Raspberry Pi starter opp.
Deretter må rammebufferen konfigureres. Jeg brukte følgende innstillinger for Mac Classic CRT:
overscan_left = 0overscan_right = 0overscan_top = 0overscan_bottom = 0framebuffer_width = 512framebuffer_height = 342enable_dpi_lcd = 1display_default_lcd = 1
De to siste linjene vil sørge for at videosignalene blir generert og at DPI brukes til å sende inn innholdet i rammebufferen.
Overskanningsverdiene kan brukes til å sentrere bildet hvis det skulle være utenfor sentrum. Min var imidlertid fin med en gang, så jeg brukte ikke disse verdiene.
Trinn 6: Koble til alt
Dette trinnet er ganske enkelt. Bare koble HSYNC -linjen til Raspberry Pi (GPIO 5) og VSYNC -linjen til Pi (GPIO 3) til HSYNC- og VSYNC -linjene på skjermen. Ikke glem å koble en jordledning på displayet til en GND -pinne på Pi. Deretter kobler du fargelinjene til Raspberry Pi til skjermen. Dette trinnet varierer, avhengig av konfigurasjon og skjerm.
Mac Classic-skjermen er en en-bits monokrom skjerm, så jeg brukte ganske enkelt en fargelinje for å koble datalinjen på skjermen. Det er en rask og skitten løsning, og jeg skal koble skjermen ordentlig til i en annen artikkel.
Trinn 7: Oppsummering
Og det er alt du trenger å gjøre! Dette gjorde min gamle ødelagte Macintosh Classic til et kult og nyttig display. Heldigvis er det veldig enkelt å sette opp DPI-modus og konfigurere den til å fungere med nesten hvilken som helst skjerm, til og med 30 år gamle CRT-er. Denne metoden lar meg gjengi skrivebordet og konsollen uten kompliserte programmer og maskinvareendringer.
Merk: Noen detaljer ble utelatt fra denne instruksjonsboken for å holde den kort og lettere å forstå. Hele artikkelen kan leses på nerdhut.de!
Anbefalt:
Gjør en ødelagt IMac 2009 24 til en sekundær vertikal skjerm: 4 trinn
Gjør en ødelagt IMac 2009 24 til en sekundær vertikal skjerm: Rask og skitten kan instrueres. Beklager. Du kan sende en melding hvis du har spørsmål. Jeg hadde mange problemer med å finne online informasjon om dette, så jeg gjorde dette instruerbart. I grunnen: les hele instruksen, tøm imac, behold saken og s
Gjør noe fint med en ødelagt spillkonsoll: 6 trinn
Gjør noe fint med en ødelagt spillkonsoll: For en stund siden ga vennen min meg sin gamle PS2 som ikke fungerer lenger. Siden jeg dessverre ikke er elektroingeniør, kan jeg dessverre ikke fikse konsollen, men jeg kan bruke min kunnskap om RetroPie til å lage et helt nytt spillsystem. (For dette instruerbare jeg
Slik gjør du datamaskinen raskere og gjør den raskere !: 5 trinn
Slik gjør du datamaskinen raskere og gjør den raskere !: Enkel å følge instruksjonene for hvordan du enkelt kan øke hastigheten på datamaskinen
Gjør en ødelagt DVD -spiller til et tilbehørskap for hjemmekino -PC -en: 10 trinn
Gjør en ødelagt DVD-spiller til et tilbehørskap for hjemmekino-PC-en din: For omtrent $ 30 (forutsatt at du allerede har en DVD-RW-stasjon og mediasenterfjernkontroll) kan du gjøre en gammel ødelagt DVD-spiller til et kabinett for din stygge/ harde for å nå HTPC -tilbehør. Ta en titt på trinn 2 for en kostnadsfordeling. Tilbake
Glassmontert videovisning til ett øye - Gjør deg selv til en Borg: 12 trinn
Glassmontert videodisplay til ett øye-Gjør deg selv til en Borg: OPPDATERING 15. mars 2013: Jeg har en nyere bedre versjon av dette nå i en annen Instructable: https: //www.instructables.com/id/DIY-Google-Glasses .. Tro det eller ikke, det virkelige formålet med dette prosjektet var ikke å spille på å være en Borg. Jeg trengte å lage noen