APLCAŢ zoa tmatică 5 -TST-D-
CEF - Aplicaţii /. SfirprztatfuciafdischmaurmtoarcuumrulmiimdporilogicSNU( sauitrri): Solui: fa..b.c.c.d..a..d..b.b.c.d.a.b.c.d.a.d.b.c.d AplicâdrlaiilluiDMorgaobim:fa.bc.da.db.c.d
CEF - Aplicaţii / PtruaobiformamiimfolosimdiagramVitchKaraugh: c fa.ba.dc.db.caplicâddioutormlluidmorgaobim: a b d
CEF - Aplicaţii /. Sfirprztatfuciafdifiguraurmtoarfolosiducircuitmultiplorcuitrrid adrs,ddatiporilogic: Solui: fa..c.c.d.a..d.a..b.bb..ca.c.c.d.a.d.a.b.c
CEF - Aplicaţii / AplicâdrlaiilluiDMorgaobim:fa.cc.da.da.b.c Ptruarprztafuciacumultiploroscrimîformtablar.Ptruascrifuciaîtabl folosimdiagramvitchkaraugh: c a b d Vompulaitrrildadrsalmultiploruluivariabillaib.Variabillcidsutpusla itrtilddatîfucidvalorilfucii.fapt,ficaritrarddatdviofucidcl variabilcid.obtimprsiil: D d,d cd,d D c Oschmposibilstrprztatîfigura urmtoar(saccptirprztarsimplificat ptrucircuitulmultiplorcupuctaradoara itrriloriiirilorfolosit):
CD - Aplicaţii ptru licţă /. Folosid u umărător sicro, biar, cu ştrgr sicroă şi porţi covabil als, să s ralizz u umărător modulo avâd scvţa d umărar:,,,...,,,,,.... Soluţi: Schma umărătorului modulo st prztată î figura. Ptru obţira scvţi,,,...,,,,... s utilizază o poartă Ş-NU, cu două itrări, car dtctază stara (Q Q Q Q ) şi, pri activara itrării CL, dtrmiă ca următoara star să fi. Doarc ştrgra s fac sicro, acst umărător u csită u circuit suplimtar ptru mmorara impulsului d ştrgr. 7HCT6 CLK ENT ENP CLK A Q B Q C Q D Q CL LD CO Figura. Schma umărătorului sicro modulo cu scvţa d umărar,,,,,,,.... Folosid mmorii EPOM d tip 7C56 (k 8 biţi) şi u umăr miim d porţi logic, să s obţiă o mmori d 6k 8 biţi. Soluţi: a). Numărul csar d circuit 7C56 st: 6k 8biti N. k 8biti 5 5 b). Mmoria d k ar locaţii d mmori car pot fi accsat utilizâd 5 liii d adrsă (A,, A ). 6 6 Mmoria d 6k ar locaţii d mmori, adică 6 liii d adrsă. Adrsa suplimtară, A 5, s folosşt ptru validara clor două mmorii coform tablului.
CD - Aplicaţii ptru licţă / Schma mmorii d 6k 8 biţi st prztată î figura. Tablul. Tablul d validar a mmorii d 6k 8 biţi. Codiţia d validar A 5 A A Mmoria validată CS CS X.. X X.. X A A A A 5 7C56 5 7C56 A A A A A A 5 A 6 A 7 A 8 A 9 A A A A A D D D D D D 5 D 6 D 7 A A A A A A 5 A 6 A 7 A 8 A 9 A A A A A D D D D D D 5 D 6 D 7 A 5 CS CS /OE OE OE /PGM PGM PGM Vpp Vpp Vpp D D 7 8 8 D 8 D 5 D D 7 8 Figura. Mmori d capacitat 6k 8 biţi.
CA - Aplicaţii / Problma. a) Să s dmostrz faptul că circuitul di figură poat fi o sursă d tsiu d rfriţă d tip bad gap (T şi T fiid idtic). b) Să s dtrmi valoara rzistţi î acst caz, avâd kω, 7,kΩ. c) Ptru U BE,6V să s calculz valoril curţilor d colctor ai trazistoarlor, gliâd p B. E - 6 7 U T T S pot scri cuaţiil U Di () şi () rzultă BE U BE C UTl Tsiua d işir s scri acum S costată că U ar forma: () C C C sau C sau C UTl U Soluţi C dci C C dci C UTl C C () C UBE UTl UBE ()
CA - Aplicaţii / ud U U BE l UT U N l st o costată ralizabilă cu prcizi datorită rapoartlor d rzistţ. S şti că st o sursă d tip bad BE N U gap şi că ptru N apar compsara trmică a lui U şi că U,V Calculul curţilor: C C.6V C dci 6.μ A 7. C...6 ma 6 A 6 6 μ Ptru compsar trmică: N şi ptru 7,kΩ şi kω l dci.78k Ω Problma. 5.5 Să s dimsioz rzistţl amplificatorului opraţioal şi tsiua U astfl îcît, dispuîd d o tsiu d itrar U c - V, să s obţiă U V. Tsiua fiă s va raliza apoi cu autorul uia di sursl d alimtar ±E±5V (bi stabilizat) al amplificatorului. zistţa d la itrara ivrsoar s va adopta d 5kΩ. Soluţi Tsiuil U c şi U au aclaşi ss d variaţi dci trbui utilizat u amplificator ivrsor. Tsiua variabilă U c s aplică la itrara ivrsoar iar tsiua fiă o cosidrăm la calaltă itrar ptru simplitat. S vrifică dacă amplificara csară st mai mar dcît (ptru că altfl la itrara r U st csară divizara tsiuii U c îtrucît ptru acastă itar A ur ). - Astfl T U c r U
CA - Aplicaţii / A ΔU U ΔU U U U > ( ma mi ur c cma cmi ) pri urmar u st csar divizor. Notîd A ur- r / (amplificara ptru itara - ) s scri tsiua d işir la ua di cl două limit, d mplu: U mi -U A ur- U cmi ( A ur- ) ud A ur- A ur -. S obţi astfl U [U cmi ( A -- ur-)-umi]/ A ur- 6V Adoptâd 5kΩ rzultă raur- 5kΩ. Tsiua U s ralizază cu u divizor, astfl că u s mai folosşt: // -E ' " U U E / // / // / // /(/ // ) Făcâd raportul cuaţiilor s obţi /U / /E /,5kΩ şi // 8,kΩ Toat cl patru rzistţ trbui să fi d prcizi.
.Fi smalul î timp discrt cu graficul di figură: 5 7 6 - [] - - a.) Să s dtrmi coficiţii a k ai srii Fourir poţial ataşat smalului b.) Sa s valuz putra smalului p baza şatioalor [] şi apoi p baza coficiţilor a k. zolvar: a.) Prioada smalului st N, iar sria Fourir poţială ar prsia: ] [ k N k a k Ptru calculul coficiţilor avm: ( ) ( ) 6 [] [] [] [] ] [ a ( ) ] [ a SS - Aplicaţii /
( ) ( ) ) )( ( ) ( [] [] [] [] ] [ a ( ) a ] [ Îtrucât [] coficiţii au propritata: ( ) a a *. b.) ( ) 6 ] [ N N P 6 9 9 6 6 9 a P N k k SS - Aplicaţii /
SS - Aplicaţii /. Fi sistmul caractrizat d cuaţia cu difrţ fiit: y [ ] a y[ ] [ ] a) Să s găsască o schmă d implmtar a filtrului utilizâd sumatoar, multiplicatoar şi liii d îtârzir. b) Cum s umst u astfl d sistm? zolvar: a)eplicitâd p y[] s obţi: y [ ] a y[ ] [ ] c coduc la următoara schmă: [] -a D y[-] y[] S rmarcă przţa î cadrul structurii a ui bucl d racţi ca o cosciţă a aturii rcursiv a filtrului. b) Sistmul st u filtru cu raspus ifiit la impuls ()
SPNP - Aplicaţii / CAP.. MCOCONTOLEUL 8C55 EA ; // autorizaza global itrrupril Problma Sa s programz (i limba C) Timr, i modul, ptru a gra itrrupri la microscud. Frcvta d tact st MHz. S scriu fuctii: fuctia d iitializar timr, fuctia d itrrupr si o fucti pricipala (mai). Ptru rzolvar s urmarst mplul di curs D d la pagia 59. // utia d itrrupr ptru Timr Timr() itrrupt // icarca valoara TL FF; TH FF; cotor; // icrmtaza cotor // Afisaza cotor spritf( buffr, "%u", cotor ); lcd_writ(, buffr ); void mai(void) lcd_itdisplay(); cotor ; tact ; ittimr(); whil( ) // Simular smal tr tact ; // frot gativ lcd_writ(, "" ); Dlay( ); tact ; // frot pozitiv lcd_writ(, "" ); Dlay( ); //... // d Problma: S cr sa s utilizz Timr ptru a gra p piul al portului P u smal logic cu prioada d ms si factor d umplr /. Frcvta d tact st MHz. Soluti: 59
SPNP - Aplicaţii / CAP.. MCOCONTOLEUL 8C55 CAP.. MCOCONTOLEUL 8C55 Problma s poat rzolva programid Timr ca si tmporizator ptru ms. Astfl, la ficar miliscuda, procsorul cuta fuctia d tratar a itrruprii i car s comuta ivlul logic la portul P. Timr ca si tmporizator umara cicluri masia (Fosc/). Frcvta d icrmtar Fi (prioada Ti) a rgistrului d umarar (N) st: Fi Fosc/ MHz Ti us Ptru a obti o itrrupr la ficar miliscuda, N trbui icarcat cu o valoar d icarcar (V) mai mica cu dcit valoara maima (VM) : * us us ms V (VM ) 6556 656 (FC8) // Programul folosst Timr i mod ca tmporizator #iclud <rg55.h> #iclud <..\..\lib\ap_lib.h> // Variabil sbit P. P ^ ; // bitul d port car s comuta //... // itializaza Timr void ittimr(void) TMOD TMOD ; // modul (6 biti), tmporizator, cotrol soft TL 8; TH FC; // valoara d icarcar ET ; // validar itrrupr Timr T ; // porst Timr EA ; // autorizaza global itrrupril // utia d itrrupr ptru Timr Timr() itrrupt // icarca valoara TL 8; TH FC; P. ~P. // comutar ivl logic void mai(void) ittimr(); 6 whil( ); //... // d Problma: S cr sa s utilizz sistmul d capturar al Timr ptru a umara impulsuri tr. La ficar impuls s salvaza itr-o variabila si valoara capturata i rgistrl caalului (valoara curta a T la momtul frotului activ) Numarul d impulsuri si valoara capturata s afisaza p LCD. Soluti: Ptru a simula smalul tr gram pri program impulsuri p piul d port car ar ca fucti altrativa itrara caalului d capturar (P.). Sistmul d capturar accpta u smal d itrar logic si poat fi programat sa grz o itrrupr p frotul pozitiv al smalului. fuctia d tratar a itrruprii utilizam u cotor ptru a umara impulsuril. // Programul folosst sistmul d capturar al Timr, caal #iclud <rg55.h> #iclud <stdio.h> #iclud <..\..\lib\ap_lib.h> // Buffr-l ud s obti sirul ASC ptru afisar usigd char buffr[ 5 ] ""; // ptru cotor usigd char buffr[ 6 ] ""; // ptru valoara capturata // Variabil usigd cotor, val_cap; sbit tact P ^ ; // itializaza Timr void ittimr(void) TMCON ; // Timr tmporizator, factor divizar CTCON ; // frot activ pozitiv p caal ECT ; // validar itrrupr caal EA ; // autorizaza global itrrupril 6
SPNP - Aplicaţii / CAP.. MCOCONTOLEUL 8C55 Problma Sa s programz (i limba C) itrfata sriala UAT, i modul, fara facilitati multiprocsor, cu rata d trasfr.8 Kbauds, ptru a trasmit cotiuu p liia sriala, caractrul ASC A (cod hazcimal ) la aproimativ scud. Frcvta d tact st d.59mhz. S scriu fuctii: o fucti d iitializar itrfata sriala, o fucti d trasmisi octt si o fucti pricipala (mai). Ptru rzolvar s urmarst mplul di curs D d la pagia 79. fuctia d iitializar, s programaza SCON coform tmi iar ptru obtira rati d trasfr s urmarst tablul d la pagia 78. fuctia pricipala (mai), i bucla whil() s fac doar trasmisia caractrului A si tmporizar scud folosid fuctia Dlay(). Î modul, rata d trasfr dpid d valoara bitului SMOD (PCON.7). Daca SMOD (dupa rst), rata d trasfr st /6 di frcvta d oscilati, iar daca SMOD, rata st / di frcvta d oscilati. moduril i rata d trasfr (T) st dtrmiata d Timr (rata dtrmiata d dpasira d capacitat - "ovrflow rat") si d valoara bitului SMOD, astfl : T acst caz, Timr poat fi programat ca tmporizator î oricar di cl tri moduri d fuctioar, iar grara itrruprilor trbui ivalidata. Cl mai frcvt, Timr st cofigurat ca tmporizator î modul (8 biti cu autoicarcar). acst caz (vzi si tablul.5._) rata d trasfr st : T SMOD SMOD T( ovrflow rat) Fosc [56 ( TH)] Tablul.5._. at d trasfr utilizid Timr Timr T ata d trasfr Frcvta d tact SMOD ( PCON.7 ) bit C / T Mod d lucru Valoar d icarcar 9,K,59MHz FDH 9,6K,59MHz FDH,8K,59MHz FAH,K,59MHz FH Problma: S cr sa s rcptioz, p liia sriala, cit u octt (caractr ASC), sa s afisz p LCD si sa s trasmita iapoi. Frcvta d tact st d MHz. Algm modul d programar al itrfti srial cu o rata d trasfr d 96 bauds. S lucraza fara itrrupri srial. Fuctia ptru rcpti octt astapta ca itrfata sa rcptioz u octt () si rturaza valoara acstuia di rgistrul d rcpti. 78
SPNP - Aplicaţii / CAP.. MCOCONTOLEUL 8C55 CAP.. MCOCONTOLEUL 8C55 Fuctia ptru trasmisi octt astapta ca octtul atrior sa fi trasmis (T), dupa car scri oul octt i rgistrul d trasmisi. // cpti si trasmisi p portul srial fara itrrupri( pollig ) #iclud <rg55.h> #iclud <stdio.h> #iclud <..\..\lib\ap_lib.h> // Buffr ptru afisar caractr p LCD usigd char buffr[ ] ""; // itializaza itrfata sriala UAT void itsrial(void) SCON F; // modul, multiprocsor, rcpti validata TMOD ; // Timr i mod, tmporizator TH FD; // rata d trasfr 96 bauds TL FD; T ; // porst Timr ET ; // NU graza itrrupr Timr ES ; // NU graza itrrupr UAT T ; // s poat trasmit //... void mai(void) lcd_itdisplay(); itsrial(); whil( ) buffr[] civ(); // rcpti octt lcd_writ(, buffr ); // afisar p LCD Trasmit( buffr[] ); // trasmisi octt //... // d // Fuctia d trasmisi octt void Trasmit(usigd char Data) // Trasmit u caractr p liia sriala daca T whil(! T ); // astapta T T ; TB8 ; // bitul 9 p zro SBUF Data; // Fuctia d rcpti octt usigd char civ(void) // cptioaza u caractr d p liia sriala daca whil(! ); // astapta ; rtur SBUF; 79 8