AT89C51 a vse okolo nìj

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
ladadada

AT89C51 a vse okolo nìj

#1 Příspěvek od ladadada »

Dobrý den, mám na Vás troch více otázek.
1) když mám prázdný miroprocesor 89C51 a pøivedu na nìj napájení(klasicky pin 40 +5V pin 20 0V) co by se mìlo stát? ve škole nám øíkaly že by se na vsech bránách mela nastavit +5V ale není tomu tak. nekde se nastavilo 0.5V a nekde 2.5V uplnì náhodnì.
2) mikroprocesor 89C51 popøípadì 89C2051 se musí "zapínat"? slysel jsem neco o tom že se na Reset privede +5V ale jenom ne chvíly, je to pravda?
3) V èem se liší 89C51 od 89C2051? liší se jenom v poètu pinù a velikosti pameti nebo i v nìèem jiným?
4) naprogramoval jsem ve škole 89C51 timto programem:

mov R0,#0
mov R1,#0
mov R2,#6
clr P0.0
setb P0.1
clr P0.2
mov P1,#170
smycka:
cpl P0.0
cpl P0.1
cpl P0.2
mov A,P1
cpl A
mov P1,A
pozastav:
djnz R0,pozastav
mov R0,#0
djnz R1,pozastav
mov R1,#0
djnz R2,pozastav
mov R2,#6


mov A,P2
cjne A,#170,smycka
mov A,P2
cjne A,#170,smycka
end;

LED na pinu P0.0-2 a P1 by mely zhruba po vteøinì blikat. ale když pripojím napájení a kristal -mám 9.2MHZ a k nìmu pripojený kondenzátory 33pF na zem. led blikají asi rychlostí 8kHz velice náhodnì. Po ipulzu za reset led zmatenì blikají 0.5-2sekundy potom se ustálý ve velice náhodném sledu s náhodnými stavy 0-5V. K èemu tam jsou ty kondenzátory? když je vyndám tak to bliká stejnì zmatenì jako pøedtím. Má tam být 33pF?
5) jde na mikroprocesor pøivádìt pulzy treba po vteøine a tak lépe kontrolovat co dìlá?
6) Jakým zpùsobem se maže 89C51?
7) Jakým zpùsobem se programuje 89C51? na piny P2.6, P2.7, P3.6, 3.7 se privede 1. Bajt a zároveò se nastaví adresa na kterou se chce zapsat(ale to nevím kde) a jeste se nastaví nejakej pin pro zápis a to se zapíše do pameti? sebo se to dìje jinak? a k èemu je tam pri programování krystal?
8) existuje nìco jako echo mikroprocesoru? privedeme pulz a on se ozve co je to za typ?
9) lze mikroprocesor naprogramovat "ruènì-manuálnì"?
10) lze zapsat 5 bajtù a po chvíly daších 5? popøípadì po odpojení napájení?

Uživatelský avatar
MiLe
Příspěvky: 123
Registrován: 18 říj 2005, 02:00

#2 Příspěvek od MiLe »

co tak pozriet sa najskvor do datasheetov a potom sa opytat nato comu si neporozumel?

Uživatelský avatar
nekmil
Příspěvky: 780
Registrován: 06 bře 2005, 01:00
Bydliště: Havířov

#3 Příspěvek od nekmil »

Kup si nějakou knížku. Je vidět že jsi zcela zmaten a máš v tom guláš.

Uživatelský avatar
meno
Příspěvky: 930
Registrován: 04 říj 2004, 02:00
Bydliště: Czechoslovakia

#4 Příspěvek od meno »

Ja robím síce s PICkami. Takže podrobnosti o ATMELkách ti nepoviem Ale tu máš odkaz na nejakú literatúru:

http://www.ebastlirna.cz/modules.php?na ... 2&start=15

Bolo to pred časom tu na fóre. Je tam odkaz na knižku o 8051 v pdf. Tá 89C51 má myslím jadro 8051.

Odlišnosti procesorov si pozri na www.atmel.com sú tam k stiahnutiu katalógy a všetko čo potrebuješ !

A ešte k tomu programovaniu: Jednočipy sa ručne neprogramujú. Potrebuješ k tomu program a PC.

No v každom prípade si problematiku najprv podrobne naštuduj ! Nedá sa hneď začať programovať bez základov ! Postav alebo zožeň si programátor (na inete je spústa konštrukcií aj zo softwarom)
:D :D :D

Uživatelský avatar
tominekk
Příspěvky: 295
Registrován: 16 črc 2004, 02:00
Bydliště: 49°11'30.229"N, 16°35'29.415"E
Kontaktovat uživatele:

#5 Příspěvek od tominekk »

Bordel v tom máš teda pořádnej!!
Ale na něco odpovím.
AT89C51 a AT89C2051 se liší počtem portů a velikostí paměti programu (+možná o nějakou drobnost). Je třeba je restartovat aby začli pracovat - na dobu minimálně dvou strojových cyklů přivést log1 na pin RST. Pak se porty nastavují do FFH.
"Prázdný" procesor neexistuje! Vždycky nějakou informaci obsahuje (u AT89C2051 když smažeš paměť programu, zapíšeš do ní vlastně FFH!).
Na AT89C51 jde pouštět f=1Hz, ale je ti to na pytel - k odladění slouží SW.
Další odpovědi na programování máš v datasheetu krásně popsané.
Jenom by mě zajímalo, co si představuješ pod pojmem naprogramovat procesor "ručně - manuálně"?
Chytrej člověk se učí chybama, ale jenom blbec těma svejma!

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“