8051 připojení reproduktoru – Assembler – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

8051 připojení reproduktoru – Assembler – Fórum – Programujte.com8051 připojení reproduktoru – Assembler – Fórum – Programujte.com

 

NoName
~ Anonymní uživatel
15 příspěvků
28. 5. 2008   #1
-
0
-

Zdravim, mam tady prográmek a potřeboval bych ho zkontrolovat... jestli dělá, co by dělat měl:)


MIN EQU 65535-1000+1 ;1kHz
MAX EQU 65535-500+1 ;2kHz
POCETC EQU 10 ;urcuje kolikrat se opakuje jeden kmitocet
DSEG AT 30H
CYKLY: DS 1 ;urcuje kolikrat zbyva do zmeny kmitoctu
CL0: DS 1 ;hodnoty pro nastaveni
CH0: DS 1 ;TL0 a TH0
BSEG
;Rezim = 0 - snizovani kmitoctu, Rezim = 1 - zvysovani kmitoctu
REZIM: DBIT 1
CSEG
ORG 0 ;Reset
AJMP RESET
ORG 000BH ;obsluha casovace 0
AJMP CASOVAC0
;inicializace systému
RESET: SETB REZIM
MOV CYKLY,#PocetC ;pocet cyklu
MOV CH0,#high MIN ;hodnoty pro casovac
MOV CL0,#low MIN
MOV TH0,#high MIN ;prvni nastaveni casovace 0
MOV TL0,#low MIN
MOV TMOD,#00000001B ;volba rezimu casovace
SETB TR0 ;spusti casovac
SETB EA
SETB ET0 ;povoli preruseni od casovace 0
SJMP $
;obsluha preteceni casovace 0
CASOVAC0: PUSH ACC
MOV A,CYKLY ;kdyz cykl neni nulovy tak jen nahraj
JNZ NAHRAJ
MOV CYKLY,#POCETC ;cykl = 0 -> zmena kmitoctu
TEST: JNB REZIM,SNIZUJ
;rezim = 1 -> zvysovani kmitoctu
ZVYSUJ: MOV A,#HIGH MAX ;test, zda CH0, CL0 dosahli maxima
XRL A,CH0
JNZ ZVYS
MOV A,#LOW MAX
XRL A,CL0
JZ PREPNI
ZVYS: MOV A,CL0 ;zvyseni CH0, CL0 o 1
ADD A,#1
MOV CL0,A
MOV A,CH0
ADDC A,#0
MOV CH0,A
SJMP NEGUJ ;prepise do casovace a konec
;rezim = 1 ->snizovani kmitoctu
SNIZUJ: MOV A,#HIGH MIN ;test, zda zda CH0, CL0 dosahli minima
XRL A,CH0
JNZ SNIZ
MOV A,#LOW MIN
XRL A,CL0
JZ PREPNI
SNIZ: CLR C ;snizeni CH0, CL0 o 1
SUBB A,#1
ADD A,#1
MOV CL0,A
MOV A,CH0
SUBB A,#0
MOV CH0,A
SJMP NEGUJ ;prepise do casovace a konec
;meni rezim pri dosazeni minima nebo maxima
PREPNI: CPL REZIM
SJMP TEST ;nastavi novy kmitocet
NAHRAJ: DEC CYKLY ;snizi pocitadlo cyklu
NEGUJ: CPL P3.0 ;neguje
MOV TH0,CH0
MOV TL0,CL0 ;nastavi casovac 0
POP ACC
RETI ;navrat z preruseni
END


A tady je zadání úlohy:

a) Navrhněte obvodové řešení umožňující připojit na vývod P1.0 reproduktorek.
b) Nakreslete vývojový diagram a napište program (včetně komentáře), který bude vytvářet proměnný tón o kmitočtu měnícím se přibližně od 1 kHz do 2 kHz a zpět.


Omlouvám se za formátování, snad se v tom vyznáte

Nahlásit jako SPAM
IP: 77.48.12.–
NoName
~ Anonymní uživatel
15 příspěvků
28. 5. 2008   #2
-
0
-

Radši jsem vám to ještě nahrál sem: http://leteckaposta.cz/695086025 do textáku

Nahlásit jako SPAM
IP: 77.48.12.–
NoName
~ Anonymní uživatel
15 příspěvků
28. 5. 2008   #3
-
0
-

No, tak ten program by měl snad bejt dobře. Akorát teda vývojovej diagram netušim, byl by někdo schopnej mi pomoc?:/

Nahlásit jako SPAM
IP: 77.48.12.–
RePRO0
Super člen
25. 8. 2008   #4
-
0
-

A frekvence není zadaná?

Nahlásit jako SPAM
IP: 213.195.202.–
Software: C; C++; C#; Pascal; Delphi; Java Webdesign: PHP; MySQL; CSS; jQuery; Ajax; Javascript; OOP
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 57 hostů

Podobná vlákna

8051 program — založil 01tom

8051 s IrDA — založil off01

Assembler 8051 — založil lucie

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý