8051

Helsinki Hacklabin wikistä
Versio hetkellä 20. helmikuuta 2024 kello 22.36 – tehnyt Matti.nummi (keskustelu | muokkaukset)
Siirry navigaatioon Siirry hakuun


{{#if: |
[[Tiedosto:{{{kuva}}}|290px]]{{#if: |

{{{kuvateksti}}}

| }}
| }}

8051

{{#if: | | }} {{#if: | | }}
Tyyppi: electronics
Tekijät: useita
Aloitettu: 2023
Tila: version 0.1
GitHub: []
URL: [{{{url}}}]



8051 kokeilu- ja kehitysalusta

Metropoliasta saadun lahjoituksen myötä hacklabille suunniteltiin ja toteutettiin 8051 kokeilulauta.

Ohessa kuvat käyttövalmiista kurssilaudasta:

8051-A.png

Paketti sisältä siis

  1. Prosessorilaudan
  2. Näyttölevyn (näyttölevy ei ole pakollinen eikä välttämätön, mutta kuuluu pakettiin)
    Prosessorilaudalla on 2x20 pinninen koirasliitin ja näyttölevyssä 2x20 pinninen naarasliitin.
    Käytännössä tämä on laajennusväylä.
    Jos haluaa rakentaa useampia laajennuksia pinottavaksi, pitää liitimet olla pitkäpinnisiä (pitkäpinnisiä ei ole).
  3. FTDI RS232-USB muuntimen (kiinakopio, näkyy toimivan). Valmis muunnin on halvempi kuin FTDI-piiri.
  4. USB-A - Mini-USB johto




8051-B.png

Komponentit, jotka eivät ole putkissa, nauhassa tai laatikoissa (MCU,RAM,573-latch,PLCC32-kanta, Näyttö, FTDI) ovat KAKSI-kerroksisessa lokerikossa. Lokerikossa on myös FTDI-muuntimia. Lokerikko kannattaa avata varovasti ja sulkea huolella. Lattialle kipatut komponentit ovat ikäviä kerätä.










Ohessa kuvat lokerikon pääli- ja pohjakerroksesta. Pohjakerroksessa ovat pääosa liittimistä. 8051-C.png 8051-D.png

Tietenkin tarvitaan myös piirilevyt. Samassa laatikossa tullee olemaan myös valmiiksiohjelmoitu rommi.

8051-E.png

Kokoamisohjeita

Piirilevyssä on hyvin merkittynä sinne kuuluvat komponentit. Hacklabilla saatavilla olevista komponenteista johtuen on valittava seuraavat vaihtoehdot:

  1. 7.5k vastus 10k vastusten tilalle.
  2. 560R vastus 470R tilalle
  3. 22pF konkat ovat itseasiassa lokerikossa 33pF, mutta sitä ei päältä huomaa. Ei vaikuta toimivuuteen.
  4. R14 ja R15 (10k) tilalle kannattaa laittaa 4k7, näissä pinneissä oli kynnysjänniteongelmia.

LEDit ovat varmaankin kinkkisimmät komponentit kolvata. Ne on sivulle näyttäviä ledejä, jolloin piiirlevyn voi myös koteloida ja saada ledit näkyviin. Näitä oli tuurilla labilla yksi kela.

Jos ei ole kokemusta pintaliitoskokoonpanosta, niin ensimmäinen kurssijakso on pintaliitoksista ja levyn kokoonpanosta.

Näyttölevy

Näyttölevyn komponentteja ei ole koottu lokerikkoon, vaan näiden keräily on jätetty komponetti-wikin ja seinälokerikoiden käytön opiskeluksi ja tutustumiseksi.



Soveltuvat lahjoituksessa saadut komponentit ovat seuraavat:

1. 74HC573D SOIC20 8-bit osoite latch

2. CAT28F010NI-12 PLCC32 eeprom

3. AS6C6264-55SCN SOP28 8kx8 SRAM

4. P80C51FA-4A PLCC44 prosessori

5. 2x16 LCD-paneeli LR4422

LCD-näyttöä on suunniteltu käytettäväksi lisäkortilla.

Toteutukseen on alustavasti päätetty käytettäväksi Paul Stoffregen:in PAULMON2 - monitoria. Viitteenä on myös vastaava piirikaavio. Paulin sivusto on hyvinkin mielenkiintoinen: PRJC.com

74HC573,pdf

CAT28F010.pdf

AS6C6264.pdf

8051FA.pdf Datasheet

8XC53_51FX_51RX.pdf

LR4422 datasheet

paulmon2.asm

Paulmon_8051_board.pdf

Ohessa myös soveltuva LDC-koodi (poikkeuksellisesti web-linkki, joita pyrin välttämään).

LCD-koodi

Muuta materiaalia:

The 8051 Microcontroller

Application Notes

Datasheets

Software

  1. asl-current.tar.gz - ASL Assembler - Linux
  2. aswcurr.exe - ASL Assembler - Windows
  3. sdcc-4.4.0-amd64-unknown-linux2.5.tar.bz2 - Small Device C Compiler
    lcd_ex01.c esimerkkikoodi 8051:lle, kääntäjän testaukseen
    sdccman.pdf Ohje
  4. Kaikenlaista muuta

Rauta

Osoite Layout 1 Layout 2
Code Extmem Code Extmem
0000-1FFF Rom2 0000-1FFF Ram1 Rom1 0000-1FFF Ram1
2000-3FFF Rom2 2000-3FFF Ram2 Ram2
4000-5FFF Rom2 4000-5FFF IO.0 IO.0
6000-7FFF Rom2 6000-7FFF IO.1 IO.1
8000-9FFF Rom2 0000-1FFF Rom2 0000-1FFF
A000-BFFF Rom2 2000-3FFF Rom2 2000-3FFF
C000-DFFF Rom2 4000-5FFF Rom2 4000-5FFF
E000-FFFF Ram2 Ram2 Rom2 6000-7FFF Rom2 6000-7FFF
  • 2 x 128k rom; toiseen monitori, toiseen käyttäjän koodi. Näin käyttäjän koodia sisältävä rommi saadaan ohjelmallisesti kirjoitettavaksi. Paulmon2.1:seen täytyy vaihtaa Paulmon2:sen kirjoitusrutiinit
  • 2 x 8k ram: toinen aitoa rammia, toinen mapattuna sekä extrammiin että progmemiin, täten tänne voi kirjoittaa kokeilukoodia

Laudan skema: Schema

Laudan alustava layout: Layout

LCD-laajennuksen alustava piirikaavio: LCD piirikaavio

LCD-laajennuksen alustava layout: LCD layout

Kehitysehdotuksia ja kommentteja

  1. . Tänne kommentteja