+ All Categories
Home > Documents > FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod...

FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod...

Date post: 31-Mar-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
51
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a komunikačních technologií Ústav radioelektroniky FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem diplomová práce Studijní obor: Elektronika a sdělovací technika Jméno studenta: Jiří ZAJÍČEK Vedoucí diplomové práce: Ing. Jiří Šebesta, Ph.D.
Transcript
Page 1: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a komunikačních technologií

Ústav radioelektroniky

FM přijímač řízený výukovou vývojovou deskou

s mikroprocesorem diplomová práce

Studijní obor: Elektronika a sdělovací technika

Jméno studenta: Jiří ZAJÍČEK

Vedoucí diplomové práce: Ing. Jiří Šebesta, Ph.D.

Page 2: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

BRNO UNIVERSITY OF TECHNOLOGY Faculty of Electrical Engineering and Communication

Institute of Radio Electronics

FM Receiver Controlled by Evaluation Board with Microcontroller

Diploma Thesis

Study Specialization: Electronics and Communication Author: Jiří ZAJÍČEK Supervisor: Ing. Jiří Šebesta. Ph.D.

ABSTRACT

The diploma thesis is divided into five main chapters that describe the individual parts of the solution.

Chapter 1 deals with the selection of a suitable device for the implementation of the FM receiver and the design of its application circuit. The core of the chapter consists of a complete description of the device and calculations of external components parameters. The mechanical design of the receiver is described here as well.

Chapter 2 contains information about the programming of the device. It begins with a short description of the I2C interface and its implementation in the FM receiver device. The registers of the receiver and their functions are described in detail. The chapter concludes with a description of I2C (or TWI) interface implementation in the Atmel AVR series of microcontrollers.

Chapter 3 describes libraries for controlling the I2C interface and the FM receiver device. It covers in detail the inputs and outputs of the implemented functions as well as the structures for data exchange.

Chapter 4 presents a laboratory exercise. The core of the exercise consists of an incomplete assembly code, which the students are supposed to complete in order to make it functional. The exercise utilizes the libraries covered in the previous chapter.

Chapter 5 shortly describes the evaluation board based on ATmega8 microcontroller designed to demonstrate the functions of the module.

Page 3: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

OBSAH

- 1 -

OBSAH ÚVOD................................................................................................................-2- 1 Obvodové řešení přijímače.............................................................................................. - 4 -

1.1 Koncepce návrhu......................................................................................................... - 4 - 1.2 Výběr obvodu.............................................................................................................. - 4 - 1.3 Popis a možnosti TEA5768HL ................................................................................... - 4 -

1.3.1 Základní vlastnosti ........................................................................................... - 4 - 1.3.2 Popis vývodů a jejich význam.......................................................................... - 5 - 1.3.3 Popis funkčních bloků ...................................................................................... - 6 - 1.3.4 Zapojení obvodu............................................................................................... - 9 -

1.4 Výběr externích prvků................................................................................................. - 9 - 1.4.1 Výběr varikapů pro LC oscilátor...................................................................... - 9 - 1.4.2 Parametry indukčností.................................................................................... - 11 - 1.4.3 Realizace indukčností..................................................................................... - 12 - 1.4.4 Dostavení indukčností .................................................................................... - 13 - 1.4.5 Kapacity CPULL a CCOMP ................................................................................. - 13 - 1.4.6 Rezistor R1 (Igain) ............................................................................................ - 14 - 1.4.7 Signalizační LED diody ................................................................................. - 14 - 1.4.8 Ostatní komponenty ....................................................................................... - 14 -

1.5 Audio zesilovač ......................................................................................................... - 14 - 1.6 Mechanické provedení .............................................................................................. - 15 -

2 Programování obvodu pomocí I2C ............................................................................... - 17 -

2.1 Obecné informace o sběrnici I2C .............................................................................. - 17 - 2.2 Základy standardu I2C rozhraní................................................................................. - 18 -

2.2.1. Základní terminologie ................................................................................... - 18 - 2.2.2 Fyzické uspořádání sběrnice .......................................................................... - 19 - 2.2.3 Komunikační protokol.................................................................................... - 19 -

2.3 Implementace rozhraní I2C v obvodu FM přijímače................................................. - 21 - 2.4 Popis programování registrů obvodu FM přijímače ................................................. - 21 -

2.4.1 Obecné informace o programování ................................................................ - 21 - 2.4.2 Význam jednotlivých bytů konfigurační informace pro zápis ....................... - 22 - 2.4.3 Význam jednotlivých bytů konfigurační informace pro čtení ....................... - 26 -

2.5 Význam některých hodnot načtených z obvodu FM přijímače................................. - 27 - 2.5.1 Čítač mezifrekvenčního kmitočtu .................................................................. - 27 - 2.5.2 AD převodník úrovně signálu ........................................................................ - 28 -

2.6 Implementace I2C v procesorech AVR ..................................................................... - 29 - 2.6.1 Implementace rozhraní................................................................................... - 29 - 2.6.2 Možnosti řízení TWI v módu Master............................................................. - 31 -

3 Popis knihovny „i2c_FMR.asm“................................................................................... - 32 -

3.1 Základní koncepce řešení .......................................................................................... - 32 - 3.1.1 Požadavky zadání........................................................................................... - 32 - 3.1.2 Volba řízení TWI rozhraní ............................................................................. - 32 - 3.1.3 Způsob předávání dat ..................................................................................... - 32 - 3.1.4 Doplňkové funkce .......................................................................................... - 32 -

3.2 Volání funkcí knihovny............................................................................................. - 32 -

Page 4: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

OBSAH

- 2 -

3.2.1. Datová struktura pro předávání dat ............................................................... - 32 - 3.2.2 Návratové zprávy funkcí SEND a READ ...................................................... - 33 - 3.2.3 Funkce I2C_INIT ........................................................................................... - 34 - 3.2.4 Funkce I2C_SEND......................................................................................... - 34 - 3.2.5 Funkce I2C_READ ........................................................................................ - 34 - 3.2.6 Funkce BCD_TO_PLL .................................................................................. - 34 - 3.2.7 Funkce PLL_TO BCD ................................................................................... - 35 -

3.3 Popis konstrukce implementovaných funkcí............................................................. - 35 - 3.3.1 Funkce BCD_TO_PLL .................................................................................. - 35 - 3.3.2 Funkce PLL_TO_BCD .................................................................................. - 36 - 3.3.3 Funkce I2C_SEND a I2C_READ.................................................................. - 36 -

4 Laboratorní úloha „I2C FM přijímač“......................................................................... - 39 -

4.1. Koncept úlohy .......................................................................................................... - 39 - 4.2. Předpoklady úspěšného zpracování úlohy ............................................................... - 39 - 4.3. Zadání úlohy............................................................................................................. - 39 -

4.3.1 Úvod ............................................................................................................... - 39 - 4.3.2 Zadání............................................................................................................. - 39 - 4.3.3 Kontrolní otázka............................................................................................. - 40 - 4.3.4 FM stanice vysílající na území Brna .............................................................. - 40 -

5 Přípravek pro testování modulu ................................................................................... - 41 - ZÁVĚR............................................................................................................................ - 42 - Seznam použité literatury................................................................................................ - 43 - Seznam obrázků .............................................................................................................. - 44 - Seznam tabulek ............................................................................................................... - 44 -

Seznam příloh .................................................................................................................... - 45 - Příloha A – Odvození použitých vztahů ......................................................................... - 46 -

A.1 Odvození vztahu (5) ......................................................................................... - 46 - Příloha B – Katalogový list obvodu TEA5768HL.......................................................... - 47 - Příloha C – Schémata zapojení a předlohy plošných spojů ............................................ - 48 - Příloha D – Rozměry a rozmístění konektorů modulu.................................................... - 49 -

Page 5: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

ÚVOD

- 3 -

ÚVOD Obsah diplomové práce je rozčleněn do pěti základních tématických kapitol, které se zabývají dílčími částmi řešení.

První kapitola se v úvodu zabývá výběrem obvodu pro realizaci FM přijímače dle požadavků zadání, a dále pak návrhem jeho aplikačního zapojení. Nejvýznamnější část kapitoly pak tvoří kompletní hardwarový popis obvodu, výpočty parametrů a výběr použitých externích prvků. Dále je popsána mechanická konstrukcí zařízení. Ta byla řešena s ohledem na požadavky definované v zadání a na základě konzultací s vedoucím diplomové práce tak, aby co nejvíce vyhovovala způsobu použití. Druhá kapitola obsahuje informace o programování a softwarový popis obvodu. Úvodem je zařazen krátký popis I2C rozhraní, a následně jeho implementace v obvodu FM přijímače. Dále je v detailně popsán způsob programování obvodu a význam obsahu V/V registrů. V textu jsou také vysvětleny významy některých hodnot které je možno načítat z V/V registrů obvodu a jejichž význam není na první pohled zřejmý. Závěrem je popsána implementace I2C (resp.TWI) rozhraní v procesorech řady AVR firmy Atmel. Obsahuje popis rozhraní a způsoby řízení přenosu. Třetí kapitola je popisem programového řešení knihovny pro ovládání I2C rozhraní a obvodu FM přijímače. Jsou zde detailně popsány vstupy a výstupy implementovaných funkcí. Knihovna je naprogramována v jazyku symbolických adres (JSA) na platformě AVR Studia. Kompletní výpis zdrojového textu není uveden, ale je obsažen na přiloženém CD. V textu je popsáno řešení funkcí pomocí vývojových diagramů, případně pomocí textového popisu řešení problému. Čtvrtá kapitola se zabývá návrhem úlohy pro laboratoře. Je v ní obsažen návrh textu úlohy a předpoklady jejího úspěšného řešení. Je tvořena nekompletním kódem v JSA, který by měl sloužit jako základ úlohy, a do kterého by studenti doplnili chybějící části kódu. Tento nekompletní kód je formou projektu AVR-Studia obsažen na CD. Úloha je koncipována tak, aby donutila studenty seznámit se s základními rysy I2C rozhraní a obvodu FM přijímače. Kód používá funkce knihovny popsané v předchozí kapitole. Pátá kapitola poskytuje stručný popis testovací desky vyvinuté pro demonstraci funkčnosti modulu z důvodu současné neexistence výukové vývojové desky s procesorem AVR pro kterou je modul navrhován.

Page 6: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 4 -

1 Obvodové řešení přijímače

1.1 Koncepce návrhu Pro stavbu FM přijímače řízeného pomocí I2C sběrnice přicházejí koncepčně

v úvahu dvě varianty. První z nich je stavba FM přijímače z jednotlivých funkčních bloků realizovaných dostupnými integrovanými obvody, druhou využití specializovaného obvodu sdružujícího veškeré potřebné bloky v jednom pouzdře. První řešení by obnášelo realizaci vstupního VF zesilovače, kmitočtového syntezátoru ovládaného po I2C sběrnici, směšovače, mezifrekvenčního filtru, mezifrekvenčního zesilovače, demodulátoru a NF zesilovače. Oproti variantě se specializovaným obvodem by zapojení obsahovalo poměrně velký počet pasivních prvků potřebných pro funkci integrovaných obvodů, a některé z nich by vyžadovaly přesné nastavení. Deska plošného spoje by byla několikanásobně větší a složitější. To vše by přispělo k zvýšení výsledné ceny zařízení a k zvýšení nároků na přístrojové vybavení potřebné pro oživení konstrukce. Naproti tomu řešení pomocí monolitického FM přijímače vyžaduje minimum externích komponent a neklade téměř žádné nároky na dostavování jejich parametrů. Výše uvedené důvody jednoznačně hovoří pro volbu druhé koncepce zařízení, tedy použití monolitického FM přijímače.

1.2 Výběr obvodu Tradičním a pravděpodobně největším výrobcem obvodů pro I2C sběrnici je

firma Philips, která výše zmíněné rozhraní definovala. Nabízí široké spektrum obvodů, od jednoduchých po složité, vybavené množstvím pokročilých funkcí. V oblasti integrovaných FM přijímačů určených pro aplikace s řídícím mikroprocesorem je nabízeno několik obvodů, od jednoduchých po přijímače vybavené např. dekodérem RDS. Jednoduchý FM přijímač realizují obvody TEA5767HL a TEA5768HL. Jedná se o identické obvody v SMD pouzdru lišící se komunikační sběrnicí. První z obvodů je vybaven třívodičovým rozhraním, druhý rozhraním I2C. Obvod umožňuje příjem FM rádiového signálu v rozsahu 76-108MHz, tedy v euro-americkém pásmu VKV-CCIR(87,5-108MHz) a Japonském rozhlasovém pásmu (76-91Mhz).

Obvod TEA5768HL tedy splňuje jak požadavek na komunikaci po I2C sběrnici, tak požadavek na ladění v pásmu VKV-CCIR. Jediným problémem se ukázala dostupnost na českém trhu, neboť v nabídce distributorů se obvod nevyskytuje, a dovozci umí objednat jen větší množství s poměrně dlouhými dodacími lhůtami. (např. 200ks a tři měsíce). Po kontaktování firmy Philips ČR byly však obvody během několika dní dodány jako vzorky.

1.3 Popis a možnosti TEA5768HL

1.3.1 Základní vlastnosti TEA5768HL je monolitický elektronicky laděný stereo FM přijímač, určený pro nízkonapěťové aplikace. Obsahuje plně integrované mezifrekvenční obvody a obvody demodulace. Přijímač je „adjustment-free“, tedy nevyžaduje žádné dostavování, a potřebuje minimum externích součástek. Umožňuje ladění v rozsahu Evropských, Amerických a Japonských FM pásem (76-108MHz). Je dodáván v 32-vývodovém SMD pouzdru LQFP32.

Page 7: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 5 -

Obvod se vyznačuje vysokou citlivostí díky integrovanému nízkošumovému vstupnímu VF zesilovači s automatickým řízením zisku (AGC). Je vybaven LC oscilátorem optimalizovaným pro použití s průmyslově vyráběnými indukčnostmi (velké snížení ceny v průmyslové výrobě). Mezifrekvenční filtr je plně integrován. Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru. Ladění je zajišťováno PLL syntezátorem řízeným I2C sběrnicí. Referenční kmitočet PLL syntezátoru může být generován interním krystalovým oscilátorem s krystalem 32.768kHz nebo 13MHz, popřípadě přiveden z externího generátoru referenčního kmitočtu o frekvenci 6.5MHz. Obvod obsahuje 7-bitový čítač mezifrekvenčního kmitočtu a 4-bitový AD převodník vstupní úrovně, jejichž hodnoty jsou dostupné přes I2C sběrnici. Mezi integrované funkce ovládatelné pomocí I2C sběrnice patří potlačení šumu při nepřítomnosti nosného signálu, automatické přepínání STEREO/MONO módu v závislosti na vstupní úrovni signálu, a potlačení stereofonního šumu. Přijímač je vybaven funkcí autonomního vyhledávání stanic. Obsahuje dva programovatelné budiče s otevřeným kolektorem s možností ovládání přes I2C sběrnici. Dále podporuje „Standby“ mode, a lze ho vnějším signálem odpojit od sběrnice bez ovlivnění funkce FM přijímače.

1.3.2 Popis vývodů a jejich význam Obvod je dodáván v 32-vývodovém SMD pouzdru LQFP32 o velikosti 7x7x1,4mm, s roztečí vývodů 0,8mm. Rozložení vývodů pouzdra je na obr.1.1, funkční popis vývodů pak v tabulce 1.1

Obrázek 1.1 : Rozložení vývodů pouzdra obvodu TEA5768HL

Page 8: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 6 -

Tabulka 1.1 : Funkce vývodů

č. Název vývodu Funkční popis 1 CPOUT Výstup nábojové pumpy PLL syntezátoru (ladicí napětí) 2 VCOTANK1 Napětím řízený oscilátor – výstup 1 3 VCOTANK2 Napětím řízený oscilátor – výstup 2 4 VCC(VCO) Napájení napětím řízeného oscilátoru 5 DGND Zem pro číslicovou část obvodu 6 VCCD Napájení číslicové části obvodu 7 DATA Vstup/Výstup dat sběrnice I2C 8 CLOCK Taktování (hodiny) sběrnice I2C 9 BUSMODE Volba módu sběrnice (pro TEA5768HL vždy připojena na „L“) 10 BUSENABLE Aktivace sběrnice (aktivní v „H“) 11 SWPORT1 Softwarově programovatelný port 1 12 SWPORT2 Softwarově programovatelný port 2 13 XTAL1 Vstup krystalového oscilátoru 1 14 XTAL2 Vstup krystalového oscilátoru 2 15 PHASEFIL Filtr smyčky fázového detektoru 16 PILFIL Dolní propust detektoru nosné 17 VAFL Nízkofrekvenční výstup levého kanálu 18 VAFR Nízkofrekvenční výstup pravého kanálu 19 TMUTE Vstup časové konst. pro fci potlačení šumu při nepřítomné nosné20 MPXO Výstup demodulátoru FM 21 Vref Výstup referenčního napětí 22 TIFC Vstup časové konstanty pro automatické dolaďování 23 LIMDEC1 Blokování mezifrekvenčního omezovače 1 24 LIMDEC2 Blokování mezifrekvenčního omezovače 2 25 Igain Řídící proud řízení zisku mezifrekvenčního filtru 26 AGND Zem pro analogovou část obvodu 27 VCCA Napájení analogové části obvodu 28 RFI1 Vstup VF zesilovače 1 29 RFGND Zem pro vstup VF zesilovače 30 RFI2 Vstup VF zesilovače 2 31 TAGC Vstup časové konst. pro automatické řízení zisku vstupního zes. 32 LOOPSW Výstup přepínače filtru smyčky PLL syntezátoru

1.3.3 Popis funkčních bloků Blokové schéma obvodu v doporučeném zapojení převzaté z katalogového listu [2] je na obr.1.2 na následující straně, popřípadě je obrázek ve vyšším rozlišení zařazen v příloze. Aby názvy bloků korespondovaly s obrázkem a katalogovým listem jsou v popisu uvedeny nejdříve v originální anglické podobě následované českým překladem a popisem funkce.

Page 9: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 7 -

Obrázek 1.2 : Blokové schéma obvodu TEA5768HL v doporučeném zapojení

Page 10: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 8 -

Low-noise RF amplifier with AGC - Nízkošumový VF zesilovač s automatickým řízením zisku – jedná se o zesilovač vstupního VF signálu. Jeho zisk je řízen blokem AGC v závislosti na velikosti vstupního signálu, čímž zamezuje zahlcení zesilovače a omezuje množství produktů směšování vytvořených silnými sousedními stanicemi. Časová konstanta řídícího signálu AGC je dána kapacitou připojenou na vývod TAGC. Vstupní impedance zesilovače společně s externím LC vysokofrekvenčním obvodem se chová jako pásmová propust pro pásmo FM rádiových kmitočtů. FM mixer – Směšovač – Kvadraturní směšovač konvertuje vybraný kmitočet z FM rádiového pásma 76-108MHz na mezifrekvenční kmitočet 225kHz. VCO – Napětím řízený oscilátor – Jedná se o varikapem laděný LC oscilátor sloužící jako místního oscilátor pro FM kvadraturní směšovač. Jeho frekvenční rozsah je 150MHz až 217MHz a před vstupem do směšovače je dělen dvěmi na poloviční frekvenci. Crystal oscillator - Krystalový oscilátor – Jedná se o zdroj referenčního kmitočtu pro PLL syntezátor. Může pracovat s krystalem 32,768kHz nebo 13MHz. Teplotní drift standardního krystalu 32,768kHz omezuje rozsah teplot použití na -10°C až +60°C. V případě potřeby může být krystalový oscilátor vypnut, a PLL syntezátor taktován externě signálem o frekvenci 32,768kHz, 6,5MHz nebo 13MHz přivedeným na vývod XTAL2. Krystalovým oscilátorem generovaný kmitočet je využíván: děličem referenční frekvence pro syntezátor PLL, pro taktování (časování) pro čítače mezifrekvenčního kmitočtu, pro nastavení kmitočtu volně kmitajícího napětím řízeného oscilátoru stereo dekodéru, a pro nastavení středního kmitočtu mezifrekvenčních filtrů. PLL Tuning system – Kmitočtový syntezátor PLL - Syntezátor pracuje s 32,768kHz nebo 13MHz referenční frekvencí generovanou krystalovým oscilátorem nebo přivedenou do přijímače z externího zdroje. Může být také taktován signálem 6,5MHz přivedeným na vývod XTAL2. Syntezátor dokáže samostatně vykonávat funkci vyhledávání stanice, v přímé návaznosti na hodnotu čítače mezifrekvenční frekvence viz. popis bloku „IF Counter“. Resonance amplifier – Rezonanční zesilovač – Realizuje plně integrovaný mezifrekvenční filtr. Jeho zisk je řízen pomocí bloku „Gain stabilization“ proudem na vývodu Igain. Limiter – Amplitudový omezovač – Omezuje amplitudu mezifrekvenčního signálu před FM demodulátorem. (velikost výstupního napětí FM demodulátoru je velmi citlivá na amplitudové změny zejm. impulsní poruchy vstupních napětí, viz. [1]). Demodulator - FM demodulátor – jedná se o kvadraturní FM demodulátor s integrovaným rezonátorem sloužícím k fázovému posunu mezifrekvenčního signálu. Level ADC – AD převodník vstupní úrovně – konvertuje analogovou úroveň mezifrekvenčního kmitočtu na 4 bitovou hodnotu dostupnou pomocí I2C sběrnice. Rozsah převáděných úrovní je dle katalogového listu typově od 3µV (-110dB) s krokem 3dB. Blíže je o této hodnotě pojednáváno v kapitole 2.

Page 11: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 9 -

IF counter – Čítač mezifrekvenčního kmitočtu – Jedná se o čítač, čítající počet period 1/64 mezifrekvenčního kmitočtu za časový úsek 15,625ms při referenci 32,768kHz (resp. 15,754ms při referenčních kmitočtech 6,5 nebo 13MHz). Čítač poskytuje 7-mi bitový výsledek sloužící pro automatické vyhledávání stanice a dostupný pomocí I2C sběrnice. Přesný význam hodnoty je vysvětlen v kapitole 2. Soft mute – Potlačení šumu při nepřítomnosti nosné - Výstup napěťové úrovně po úpravě dolní propustí aktivuje zeslabovač při nízkých úrovních vstupního signálu. Funkce může být vypnuta pomocí I2C sběrnice. MPX decoder – Stereo dekodér - stereo dekodér bez nutnosti dostavování . Dekodér může být přepnut do MONO módu pomocí I2C sběrnice. Signal depended mono to stereo blend – Signálově závislé přepínání mono/stereo módu - S klesající úrovní vstupního VF signálu stereo dekodér přechází automaticky ze stereo do mono módu za účelem snížení výstupního šumu (Stereo Noise Canceling - SNC). Spojitý přechod z mono do stereo módu může být ovlivněn pomocí I2C sběrnice nastavením přepínací VF vstupní úrovně pro přechod z mono do stereo módu. Potlačení stereofonního šumu (SNC) může být vypnuto pomocí I2C sběrnice. Software programmable ports – Softwarově programovatelné výstupy - Pomocí I2C sběrnice můžou být adresovány dva programovatelné výstupy (s otevřeným kolektorem). Funkce prvního výstupu (vývod SWPORT1) může být změněna SW konfigurací obvodu (viz. kapitola 2). Vývod SWPORT1 je pak výstupem pro bit „Ready“ stavové informace.

1.3.4 Zapojení obvodu Aplikační zapojení obvodu vychází z doporučeného zapojení dle obr. 1.2. Kompletní schéma zapojení je obsahem přílohy B. V důsledku požadavku na běžnou dostupnost komponent na českém trhu došlo ke změně typu varikapu, a s tím související změně indukčností. Na softwarově programovatelných portech jsou zapojeny indikační LED diody. Obvod je doplněn o zesilovač TDA7050 s výstupem na sluchátka v doporučeném zapojení. Schéma je rovněž obsaženo v příloze B. Jako kmitočtová reference obvodu je použit hodinový krystal 32,768kHz.

1.4 Výběr externích prvků

1.4.1 Výběr varikapů pro LC oscilátor Varikapy byly vybírány z typů běžně dostupných v maloobchodní prodejní síti

firem GM-Electronic a GES-Electronics. Obvod TEA5768HL poskytuje při napájení 5V ladicí napětí v rozsahu 0,1-4,9V. Oproti nejčastějšímu zapojení LC oscilátoru s varikapy jsou zde varikapy zapojeny se společnou anodou, což znemožňuje použití dvojitého varikapu.

Z katalogových listů dostupných varikapů byla zjištěna jejich kapacita při mezních napětích ladění, tedy C0,1 pro napětí 0,1V a C4,9 pro napětí 4,9V. Výpočtová hodnoty CMIN a CMAX pro dvojici varikapů jsou pak poloviční dle vztahu (1) pro paralelní spojení kapacit:

212. 1

21

21CCP

CCC

CCC ==+

= (1)

Page 12: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 10 -

Při konstantní hodnotě indukčnosti je frekvence místního oscilátoru dána kapacitou dvojice varikapů dle Thomsonova vztahu (2) viz např.[1].

LCfLC π2

1= (2)

Tento vztah lze pro mezní laděné frekvence a mezní kapacity dané ladicím napětím psát v podobě vztahů (3) a (4)

MINLC

MAXLC LC

fLC

fππ 2

1,2

1maxmin == (3), (4)

Výsledkem dosazení do vztahů (3) a (4) jsou mezní frekvence pásma které lze teoreticky přeladit varikapem při změně kapacity v rozsahu CMIN až CMAX při známé indukčnosti L. Protože vztah (2) není lineární platí pro střední frekvenci pásma přeladění lokálního oscilátoru vztah (5) , který je odvozen v příloze D. Pro kapacitu varikapu CSTŘ vypočtenou z tohoto vztahu, bude oscilátor naladěn na střední kmitočet fLCstř =(fLCmin+fLCmax)/2

2

112

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛+

=

MAXMIN

STŘ

CC

C (5)

Frekvence místního oscilátoru FM přijímače je dvojnásobná oproti laděné

frekvenci FM stanice fRQ zvýšené o hodnotu mezifrekvenčního kmitočtu 225kHz viz. [2]. Pro jeho frekvenci tedy platí vztah (6).

)225.(2 kHzff RQLO += (6)

Obvod umožňuje ladění v pásmu 76-108MHz, popř. lze uvažovat pouze ladění v pásmu CCIR 87,5-108MHz používaném v ČR. Dosazením krajních frekvencí těchto pásem do vztahu (6) získáme požadované mezní frekvence lokálního oscilátoru:

fLOmin(76,0MHz)=152,45MHz (pro celý rozsah ladění) (7) fLOmin(87,5MHz)=175,45MHz (jen pro pásmo CCIR) (8)

fLOmax(108MHz)=216,45MHz (9)

Tyto meze určují minimální pásmo přeladění místního oscilátoru, neboť jinak

by nebylo možno ladit frekvence v celém FM pásmu. Nadále budeme uvažovat ladění v celém rozsahu který obvod umožňuje a tedy fLOmin dle (7). Pak střední kmitočet pásma minimálního přeladění místního oscilátoru je:

fLOstř=(152,45+216,45)/2=184,45MHz (10)

Page 13: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 11 -

Tento střední kmitočet pásma přeladění místního oscilátoru dosadíme do vztahu (2) spolu s kapacitou CSTŘ vypočtenou pro příslušný varikap ze vztahu (5). Po úpravě získáme hodnotu indukčnosti L. Pro tuto hodnotu indukčnosti platí že střední frekvence pásma přeladění místního oscilátoru je rovna střední frekvenci pásma minimálního potřebného přeladění. Dosazením indukčnosti L do vztahů (3) a (4) získáme mezní frekvence dané mezními kapacitami varikapu. Takto získané pásmo musí být širší než pásmo definované hodnotami fLOmin a fLOmax. Tabulka 1.2 : Přeladění oscilátoru a potřebné indukčnosti pro různé varikapy

CMIN CMAX CSTŘ L fLCmin fLCmax varikap [pF] [pF] [pF] [nH] [MHz] [MHz] Poznámka BB202 2,50 16,0 5,1 144,9 104,5 264,4 originál-nedostupný BBY31 4,00 10,0 6,0 124,0 142,9 226,0 Vyhovuje BBY40 12,0 25,0 16,8 44,4 151,0 217,9 Vyhovuje BBY51 1,45 3,50 2,1 346,8 144,5 224,4 Vyhovuje BB204 16,0 32,5 22,1 33,7 152,1 216,8 Vyhovuje BB804 18,5 35,0 24,8 30,0 155,3 213,6 Nevyhovuje

V tabulce 1.2 jsou uvedeny hodnoty CMIN, CMAX, CSTŘ, L, FLCmin a FLCmax dostupných varikapů. Pro srovnání je uveden i varikap BB202 doporučovaný výrobcem který ze všech uvedených varikapů dosahuje největší šířky pásma přeladění. Naproti tomu varikap BB804 nevyhovuje neboť by s ním potřebné šířky pásma nebylo možno dosáhnout. Použít by šel pouze v případě že by jsme omezili požadavky na ladění na pásmo CCIR. Ostatní čtyři varikapy šířkou přeladěného pásma vyhovují. U varikapů BBY40 a BB204 je však pásmo jen o stovky kHz až nízké jednotky MHz širší, a při jejich použití by vzrůstaly nároky na přesnost hodnoty L použité cívky. Zbývající dva varikapy se podstatně liší hodnotou indukčnosti. Vzhledem k zapojení oscilátoru je potřeba indukčnost odbočkou rozdělit na dvě poloviny z důvodu napájení varikapů. Pro varikap BBY51 je indukčnost L=347nH, což je hodnota která by umožňovala zvažovat použití průmyslově vyráběných indukčností dostupných v hodnotách od 100nH, popřípadě realizaci formou vinuté cívky. Pro případnou realizaci indukčnosti formou planární cívky na plošném spoji je to však hodnota poměrně vysoká. Naproti tomu hodnota indukčnosti L=124nH vypočtená pro varikap BBY31 umožňuje realizaci jak formou planární cívky tak formou vinuté cívky na kostřičce s jádrem. Z výše uvedených důvodů byly pro realizaci vybrány varikapy BBY31.

1.4.2 Parametry indukčností Zapojení obsahuje 2 indukčnosti. První z nich tvoří spolu s kapacitami a vstupní impedancí VF zesilovače pásmovou propust pro pásmo FM rádiových kmitočtů. Je pro ni výrobcem doporučena hodnota 120nH s tolerancí 2%. Pro obě je výrobcem požadováno Qmin=40.

Druhá indukčnost tvoří spolu s varikapy napětím řízený LC oscilátor. V předchozí podkapitole zabývající se výběrem varikapu pro ní byla spočtena ideální hodnota indukčnosti 124nH. Maximální možnou toleranci hodnoty indukčnosti napětím řízeného oscilátoru lze spočítat z dříve uvedených vztahů. Tolerance kapacity varikapu není výrobcem udána. Dle jeho katalogového listu [3] je výrobcem zaručována kapacita při závěrném napětí 1V, a to C1V=16,5pF. Dále je při závěrném napětí 28V zaručována kapacita v rozsahu C28V=1,6~2pF, což odpovídá kapacitě 1,8pF s tolerancí 11,1%. Pokud tedy mezi křivkami průběhu jednotlivých varikapů existuje podobnost, což se dá

Page 14: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 12 -

předpokládat, můžeme na základě toho také předpokládat že se hodnota možné odchylky zvětšuje lineárně od bodu s nulovou tolerancí, tedy C1V, směrem k bodu s udanou tolerancí 11,1%, tedy C28V. Dále předpokládejme stejnou změnu tolerance směrem k nižším napětím. Pak lze definovat vztah pro toleranci kapacity varikapu TC oproti typické hodnotě v závislosti na závěrném napětí VR následujícím vztahem (11):

( ) [ ]%128

1.1,11

VVVV

VT RRC −

−= (11)

Pro krajní meze ladicího napětí pak lze vztah (11) psát ve tvaru:

TC0,1=11,1 . | 0,1-1 | / 27 = 11,1 . 0,9 / 27 = 0,37% (12) TC4,9=11,1 . | 4,9-1 | / 27 = 11,1 . 3,9 / 27 = 1,60% (13)

Jako nejhorší případ je nutno uvažovat ten, kdy by se kapacita CMIN zvětšila a

CMAX zmenšila, a došlo by k zúžení pásma možného přeladění LC oscilátoru. Případné mezní hodnoty kapacity by pak s uvažováním vypočtených tolerancí byly:

CMIN= 4pF + 1,6% = 4,064pF (14) CMAX=10pF – 0,37% = 9,963pF (15)

I v tomto mezním případě musí být zachována schopnost přeladit celé pásmo, a proto lze pro minimální kapacitu dle (14) dosadit do vztahu (4) za frekvenci maximální mezní frekvenci ze vztahu (9), a po úpravě je výsledkem indukčnost LMAX, pro kterou ještě bude dosaženo potřebné meze. Analogicky lze do vztahu (3), dosadit kapacitu dle (15), a mezní frekvenci dle (7). Výsledkem druhého dosazení bude hodnota LMIN:

nHLMHzCLLC

f

nHLMHzCLLC

f

MAXMINMAXMIN

LC

MINMAXMINMAX

LC

0,13345,216.2

12

1

4,10945,152.2

12

1

max

min

=⇒===

=⇒===

ππ

ππ (16,

17)

Pokud takto získané hodnoty indukčnosti porovnáme s hodnotou indukčnosti vypočtenou jako ideální pro daný varikap (viz. tab.1.2), můžeme určit maximální možnou toleranci této hodnoty:

TLmin = LMIN / L = 109,4 / 124,0 = 0,882 => -11,7% (18) TLmax = LMAX / L = 133,0 / 124,0 = 1,073 => 7,3% (19)

Požadovaná hodnota indukčnosti je tedy nHL %3,7

%7,11124+−=

1.4.3 Realizace indukčností Indukčnosti jsou realizovány smaltovaným drátem 0,2mm na kostřičkách zn. Neosid. Jedná se o trojdílné sady velikosti 5,6x5,6x7mm složené z kostřičky, měděného stínícího krytu a ladícího jádra. Veškeré údaje pro návrh cívek jsou popsány ve výňatku katalogu fy. Neosid [4]. Jádro 5V1K umožňuje dostavovat indukčnost o 4~6nH na závit. Při počátečním a koncovém bodu cívky na vývodech 1 a 5 kostřičky, viz. obr.1.3,

Page 15: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 13 -

je smyčka mezi těmito vývody považována za ¾ závitu. Tabulka na straně 3.19 ve výňatku katalogu Neosid [4] udává indukčnosti pro různý počet závitů cívky. Pro odbočku na vývodu 3 je výhodný sudý počet závitů (+¾ závitu). Tomu odpovídá 6.řádek zmíněné tabulky udávající hodnotu 120nH pro 4¾ závitu. Dále výrobce deklaruje pásmo použitelnosti této indukčnosti 100~300MHz a Q≥70 na frekvenci 100MHz. Tyto hodnoty přímo splňují požadavek na hodnotu indukčnosti LC oscilátoru. Indukčnost vstupního obvodu je vyrobena obdobně, pouze bez odbočky v polovině vynutí.

A=1, E=5, Z=3

Obrázek 1.3 : Rozložení vývodů cívky

1.4.4 Dostavení indukčností Cívky byly po navinutí měřeny na automatickém RLCG můstku Tesla BM520.

Bez jádra vykazovaly menší indukčnost než bylo požadováno, a tak byla hodnota dostavena šroubovacím jádrem. Vzhledem k tomu že se hodnota indukčnosti pohybuje na spodní hranici nejnižšího měřicího rozsahu přístroje a byl pozorován značný vliv parazitní indukčnosti měřicích přívodů, bylo měření prováděno opakovaně s důsledným nulováním před každým měřením. Přesto se nedá počítat s velkou přesností tohoto měření, a proto byla provedena kontrola funkce LC oscilátoru a možnosti jeho přeladění na hotovém zařízení pomocí spektrálního analyzátoru Rhode-Schwarz.

1.4.5 Kapacity CPULL a CCOMP Účelem tohoto kondensátoru CPULL je snížit kapacitu proti zemi na vývodu XTAL2 pod maximální hodnotu definovanou v katalogovém listu obvodu [2] na straně 17. Pro krystal 32,768kHz je tato hodnota konkrétně C0max=4,5pF. Pro použitý krystal je uvedena v katalogu [5] hodnota kapacity CS=12,5pF. Po úpravě vztahu pro sériové spojení kapacit získáme vztah (20) pro maximální hodnotu kapacity CPULL:

pFpFpF

pFpFCC

CCCS

SPULL 03,7

5,45,125,4.5,12.

max0

max0 =−

=−

≤ (20)

Význam kapacity CCOMP katalogový list [2] nepopisuje, krom zmínky že je závislá na parametrech krystalu. Výrobce ve svém zapojení používá hodnotu 10pF, ale ve spojení s krystalem 13MHz. Hodnota CCOMP=2pF v mém zapojení byla převzata z katalogového listu [6] popisujícího průmyslově vyráběný modul využívající obvod TEA5767HN v pouzdře BGA.

Page 16: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 14 -

1.4.6 Rezistor R1 (Igain) Tento rezistor definuje proud řídící zisk mezifrekvenčního filtru. Výrobcem je požadována hodnota 18kΩ s tolerancí 1%. Použitý rezistor je v provedení SMD velikosti 0603, a s požadovanou tolerancí 1%.

1.4.7 Signalizační LED diody Zapojení obsahuje 3 LED diody. První z nich, zelená, indikuje přítomnost napájecího napětí. Červená a žlutá dioda jsou připojeny na výstupy SWPORT1 a SWPORT2. Výstupy jsou typu otevřený logika výstupu je pozitivní, takže diody svítí při zápisu log.1 do příslušného bitu vstupního registru. Všechny diody jsou průměru 1,8mm s typovým proudem 2mA. Katalog pro ně udává následující úbytky v propustném směru:

UF-R2mA=1,8V UF-Y2mA=2,0V UF-G2mA=2,1V

Úbytek na výstupu (otevřený kolektor) je definováno jako USAT < 0,5V. Uvažujme tedy pro výpočet 0V. Úbytek bude větší, a způsobí pouze snížení proudu diodou. Napětí na odporech LED diod tedy je: URred = 5 – 1,8 = 3,2V URyellow = 5 – 2,0 = 3,0V URgreen = 5 – 2,1 = 2,9V Pro proud diodami 2mA tedy z Ohmova zákonu možno vypočítat odpory: Rred = 3,2V / 2mA = 1k6 Ryell = 3,0V / 2mA = 1k5 Rgreen = 2,9V / 2mA = 1k45 Pro spočtené hodnoty najdeme blízké vyšší hodnoty z běžně dostupných řad. Proud zelenou diodou LED tedy omezíme rezistorem s hodnotou 1k5. Proud LED diodami na výstupech SWPORT je omezen rezistory 2kΩ. To má sice za následek poměrně značné snížení proudu, ale sníží se nároky na výstup SWPORT, u kterého výrobce neudává typový ani maximální proud (pouze minimální zaručený). Prakticky bylo ověřeno že svit LED diod je pro indikační účely dostatečný.

1.4.8 Ostatní komponenty Obvody napájení obsahují 2 vyhlazovací kondensátory, oba tantalové v provedení SMD. Omezovací rezistory pro indikační LED diody jsou v klasickém provedení ve velikosti 0204. Veškeré ostatní komponenty vyžadované obvodem jsou ze standardních součástkových řad v pouzdru SMD velikosti 0603 popř. 0805.

1.5 Audio zesilovač Na NF výstupy obvodu radiopřijímače je připojen sluchátkový zesilovač

TDA7050 firmy Philips. Poskytuje fixní zesílení 26dB v napěťové oblasti. Obvod je zapojen v doporučeném zapojení dle [7]. Vstup je od výstupu radiopřijímače oddělen kapacitou CA=1µF která spolu se vstupním odporem RA=20k tvoří vstupní horní propust s mezní frekvencí danou vztahem (21) převzatým z [12]:

Page 17: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 15 -

HzEECR

fAA

m 81.20.14,3.2

12

10603 ≅== −+π

(21)

Hlasitost výstupu není nijak regulována, počítá se s regulací hlasitosti na připojených sluchátkách.

1.6 Mechanické provedení Dle zadání má být přijímač rozšiřujícím modulem výukové vývojové desky s procesorem AVR. V době vývoje přijímače však tato deska ještě fyzicky neexistovala, a nebylo tedy známo ani rozložení rozšiřujících konektorů. Proto byl po dohodě s vedoucím DP přijímač navržen jako modul s vývody vyvedenými na zlacené pinové lišty s roztečí 2,54mm, pro který se dodatečně navrhne nosná deska, která bude realizovat pouze funkci redukce mezi konektory vývojové desky a modulu. Tato nosná deska a její zapouzdření bude řešeno komplexně s návrhem vývojové desky, a tak bude možno řešení optimalizovat i z pohledu požadavků jako jsou mechanická odolnost a zajištění proti odcizení.

Přijímač je realizován na oboustranné desce plošného spoje o velikosti 55x40mm. Všechny signálové vodiče jsou rozvedeny na straně spojů, na straně součástek je ponechána souvislá měděná plocha spojená se zemním potenciálem. Většina komponent je osazena technologií SMD. Ze strany součástek jsou osazeny pouze vstupní konektor VF signálu, cívky, indikační LED diody a jejich rezistory, krystal, a výstupní zesilovač s elektrolytickými kondensátory. Pro vstup VF signálu byl zvolen konektor BNC, což umožňuje připojení antény, nebo v případě potřeby testování modulu snadné připojení VF generátoru.

Deska je vybavena čtyřmi otvory pro šrouby M3 umožňující její pevnou montáž do řídícího systému. Prostor ponechaný v okolí montážních děr umožňuje v případě potřeby i použití šroubů M4, v takovém případě je však potřeba dbát zvýšené opatrnosti aby nedošlo ke zkratu některého signálového vodiče se zemním potenciálem nebo jiným signálovým vodičem např. kontaktem s podložkou či hlavou šroubu.

Pinové lišty určené k propojení s řídícím systémem jsou osazeny ze strany spojů. V případě potřeby nic nebrání, osadit je ze strany součástek, je však v návaznosti na to nutno upravit umístění indikačních LED diod a vstupního BNC konektoru. Třetí možnou variantou která byla použita u vývojového prototypu je osazení pinové lišty na pozici CON2 ze strany součástek a propojení s řídícím systémem pomocí plochého kabelu a konektorů PFL10.

Osazovací plánek strany součástek je zobrazen na obr. 1.4. spolu s rozměry desky a umístěním montážních otvorů. Pro názornost jsou konektory CON2 a CON3 nakresleny ze strany součástek, přestože, jak bylo řečeno, se osazují ze strany spojů. Na konektor CON2 je vyvedeno napájení, signálové vodiče I2C sběrnice a výstup nezesíleného NF signálu. Na konektor CON3 jsou vyvedeny výstupy zesilovače. Kondensátory C24 a C25 jsou oddělovací kondensátory na vstupu výkonového NF zesilovače AMP1, C21 a C22 pak kondensátory na jeho výstupu. Vpravo od něho jsou umístěny 3 indikační LED (LED1(červená)~SWPORT1, LED2(žlutá)~SWPORT2, LED3(zelená)~PWR). Rezistory R7 a R8 jsou rezistory omezují proud LED. Krystal Q2 je osazen „na ležato“ a pouzdrem připájen k měděné vrstvě. Cívka L1 přísluší LC oscilátoru, cívka L2 vstupnímu pásmovému filtru. Konektor CON1 je vstupní BNC konektor. Plošný spoj umožňuje osadit ho způsobem jak je naznačeno, nebo v 90° provedení směrem ven z desky.

Na obr. 1.5 je zobrazeno rozmístění součástek na straně spojů. V levém horním rohu jsou tantalové filtrační kondensátory C19 a C23. Diody D3 a D4 jsou varikapy LC

Page 18: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Obvodové řešení přijímače

- 16 -

oscilátoru. Většina ostatních součástek jsou externí prvky vyžadované obvodem přijímače. Přesné osazovací plánky a seznam součástek jsou obsahem přílohy C.

Obrázek 1.4 : Osazovací plán strany součástek a rozměry modulu

Obrázek 1.5 Osazovací plán strany spojů

Page 19: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 17 -

2 Programování obvodu pomocí I2C

2.1 Obecné informace o sběrnici I2C Většina obecných informací o I2C sběrnici uvedená v následujícím textu byla čerpána z webové encyklopedie Wikipedia [9], a z článku [10]. Běžně používaný název sběrnice I2C je vlastně jakousi „slovní hříčkou“ ozvláštňující zkratku IIC odvozenou z názvu sběrnice „Inter-Integrated Circuit“. Jedná se o obousměrnou sběrnici komunikující pomocí dvou vodičů. Sběrnici na začátku 80.let (dnes již minulého století) vyvinula a na trh uvedla společnost Philips, která jí má také patentově chráněnou (patent číslo 9398 393 40011). Z důvodu obcházení patentového zákona někteří výrobci vyrábějící obvody s tímto rozhraním nepoužívají název I2C, ale např. TWI (Two Wire Interface) nadále bude tedy v textu předpokládáno že pojmy jsou ekvivalentní. Důvodem vývoje této sběrnice bylo řešení jednotné komunikace mezi různými bloky zařízení, zejména ve spotřební elektronice. S rozvojem digitální techniky rostl počet zařízení jejichž funkci řídí mikroprocesor, a zvyšoval se počet modulů které musí řídící mikroprocesor obsluhovat. Pokud by každý blok byl řízen zvlášť po samostatné sběrnici kladlo by to neúměrné nároky na propojení modulů. Vznikla tedy potřeba jednotné sběrnice která by zjednodušila rozvod řídících signálů v zařízení. Přínos jednotné sběrnice spojující moduly pomocí dvou vodičů (v nejjednodušším případě) je zřejmý. Sběrnice I2C navíc přímo ve svém komunikačním protokolu řeší adresaci zařízení, včetně speciálních případů, jako je adresace dat všem připojeným zařízením současně. Obecně je I2C sériové synchronní rozhraní. Komunikace je poloduplexní, komunikující zařízení tedy nemohou vysílat současně. Je umožněna dynamická změna rychlosti komunikace dle požadavků adresovaného zařízení. Přímo do protokolu komunikace je implementována adresace cílového zařízení a arbitráž mezi vysílači v případě, že dojde k současnému zahájení komunikace více vysílači. Ke komunikaci jsou využity dva vodiče – SDA (Serial DAta) a SCL (Serial CLock). Na datové lince SDA jsou přenášena data, hodinový signál na lince SCL pak určuje jejich platnost a současně je využit k řízení rychlosti komunikace. Speciální případy průběhů na linkách rozhraní I2C pak definují začátek a konec komunikace. I2C rozhraní se samozřejmě v průběhu existence vyvíjelo. Jak již bylo řečeno, pochází z počátku 80.let dvacátého století. Tehdejší verze I²C podporovala 7-mi bitové adresování s 16-ti rezervovanými adresami. Tím bylo umožněno adresovat maximálně 112 zařízení. Rychlost komunikace byla 100kbit/s ve standardním módu, popř. 10kbit/s v tzv. low-speed módu, ale většina zařízení podporovala i nižší frekvence bez omezení spodní hranice. V roce 1992 byla uvolněna první standardizovaná verze která rozšířila možnosti adresování na 10 bitů, tedy 1008 možných zařízení, a definovala mód s rychlostí přenosu 400kbit/s pojmenovaný „fast mode“. V roce 1998 byla uvolněna Verze 2.0 definující „high-speed mode“ s rychlostí 3.4Mbit/s, a v jejíž specifikaci dochází k snížení napěťových a proudových požadavků na zařízení z důvodu snižování energetické náročnosti. Posledním standardem je Verze 2.1 z roku 2001, která je však pouze revizí Verze 2.0. V současnosti existuje údajně více než 1000 typů obvodů vybavených I2C rozhraním, s tím že jen Philips každoročně přidá 40-50 nových. Licenčně vyrábí obvody více než 50 výrobců. Nejběžněji jsou tímto rozhraním vybaveny EEPROM paměti, hodiny reálného času, pomalé A/D a D/A konvertory, V/V rozšiřující obvody, FM syntezátory, obvody pro regulaci jasu, kontrastu a vyvážení barev obrazu monitorů a televizorů atd. Zajímavostí je že na I2C sběrnici jsou založeny systémy jako VESA DDC (VESA Display Data Channel), nebo

Page 20: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 18 -

SMBus (System Management Bus) používané v PC. Tyto systémy se však od standardu odlišují v napěťových úrovních, rozsahem povolených přenosových rychlostí, a podpoře přerušovacích módů. Podrobnosti a další odkazy lze nalézt např. v [9].

2.2 Základy standardu I2C rozhraní Obrázky převzaty ze specifikace rozhraní I2C v.2.1 [8]

2.2.1. Základní terminologie Specifikace rozhraní I2C využívá následující terminologii pro popis standartu rozhraní a komunikačního protokolu. Pro každý z anglických termínů je uveden kurzívou český ekvivalent který bude používán v následném textu:

RECEIVER – Přijímač je zařízení které přijímá (čte) data ze sběrnice TRANSMITER – Vysílač je zařízení které umisťuje data na sběrnici MASTER – Master je zařízení, které zahajuje komunikaci, generuje

hodinový signál a ukončuje komunikaci SLAVE – Slave je zařízení, které je adresováno zařízením Master MULTI-MASTER – Multimaster je systém kde více než jedno zařízení

Master může současně přistupovat ke sběrnici, bez narušení přenosu

ARBITRATION – Arbitráž je procedura sloužící v případě vícenásobného

přístupu ke sběrnici k zajištění bezchybného přenosu pro vítěze arbitráže.

SYNCHRONIZATION – Synchronizace je procedura k synchronizaci hodino-

vých signálů dvou či více zařízení Zařízení iniciující přenos tedy může být Master-vysílač, nebo Master-přijímač, podle toho zda vysílá data na zařízení typu Slave-přijímač, nebo načítá data ze zařízení typu Slave-vysílač. Většina periferních obvodů podporuje pouze mód Slave, podpora Master módu je téměř výhradně doménou mikrokontrolérů. Adresa zařízení Slave je ve většině případů nastavena zařízení napevno z výroby. Obecně platí že obvodům u kterých lze předpokládat že se v zapojení vyskytnou jen jednou, např. obvody řízení jasu obrazovky, je přidělena jedna adresa pro konkrétní funkci obvodu, která je stejná pro více konkrétních typů. Pokud tedy například existuje 5 konkrétních obvodů pro řízení jasu je pravděpodobné, že budou mít stejnou adresu (tento koncept rozdělování adres však není striktně dodržován). Obvody u kterých je předpoklad že mohou být v zařízení použity vícekrát, typicky V/V obvody, převodníky atd. mají pevnou (horní) část adresy (bázi), nejčastěji 4bity, a možnost nastavit hardwarově zbývající (spodní) část adresy dle potřeby. Pokud je tedy báze např. zmíněné 4bity pak je možno nastavit pro zařízení adresu v rozsahu 3bitů, tedy 8-mi fyzických adres. V důsledku je tedy možno v zapojení použít 8 obvodů stejného typu na jedné sběrnici. Příkladem je obvod PCF8574, pro rozšíření V/V rozhraní. Obvod má 8 V/V linek zapisovaných a čtených přes I2C rozhraní s možností nastavit 3 nejnižší bity adresy.

Page 21: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 19 -

2.2.2 Fyzické uspořádání sběrnice Sběrnice je tvořena dvěma obousměrnými linkami, datovou SDA a hodinovou SCL. Klidový stav na obou linkách je log.1 zajišťována pull-up rezistory připojenými na kladné napájecí napětí. Maximální kladné napětí je standardně +5V, ale může být menší (např.3,3V) v závislosti na systému ve kterém je sběrnice použita.

Zařízení se na sběrnici připojují paralelně, viz. obr. 2.1. Z obrázku je taktéž patrná struktura V/V obvodu I2C rozhraní. Využití otevřených kolektorů zajišťuje nekolizní vysílání více vysílačů. Z pohledu linek SDA a SCL je mezi vysílanými daty více vysílačů realizována funkce AND logického součinu, což je využito při Arbitráži. Počet zařízení připojených na jednu sběrnici I2C je limitován pouze kapacitou, která pro žádnou z linek nesmí přesáhnout hodnotu 400pF.

Zde uvedené informace se vztahují pro přenosové rychlosti do 400kbit/s. Pro „High-speed“ mód platí jiné informace, které je možno nalézt v kompletní specifikaci I2C rozhraní v.2.1 [8].

Obrázek 2.1 : Připojování zařízení na sběrnici a s struktura V/V obvodů

2.2.3 Komunikační protokol Obecně smí ke změně stavu datové linky SDA docházet pouze při SCL=L. Vyjímkou jsou zahájení a ukončení komunikace. Komunikaci na sběrnici vždy zahajuje a ukončuje zařízení typu Master. Zahájení je provedeno sestupnou hranou na lince SDA při SCL=H. Tato změna se v terminologii I2C sběrnice nazývá „START condition“ (dále jen START), a je také někdy označována zkráceně písmenem „S“. Ukončení je provedeno náběžnou hranou na lince SDA při SCL=H a je nazýváno „STOP condition“ (dále jen STOP) , a je také někdy označována zkráceně písmenem „P“. Oba stavy jsou zobrazeny a popsány na obr.2.2.

Page 22: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 20 -

Obrázek 2.2 : Stavy START a STOP na sběrnici Mezi stavy START a STOP probíhá adresování přijímače a přenos datových bitů. Každý byte vyslaný na linku SDA musí mít délku 8bitů. Vysílání se provádí od bitu s nejvyšší váhou (MSB). Platnost dat potvrzuje náběžná hrana signálu SCL. Každý byte musí být následován potvrzovacím bitem ACK(ACKnowledge bit), kterým přijímač potvrzuje přijetí kompletního bytu. Toho je dosaženo tím že Master generuje devátý pulz na lince SCL, při kterém je linka SDA zařízením Master uvolněna. Pokud přijímač přijal správně byte, musí během devátého pulsu vysílat na linku SDA log.0. V případě potřeby může zařízení Slave přenos pozastavit přidržením signálu SCL v log.0 po potřebnou dobu (např. z důvodu nutnosti zpracování přijatých dat). Počet bytů přenesených při jednom přenosu není omezen. Po přenosu posledního bytu provede Master ukončení přenosu vysláním STOP na sběrnici. Zahájení přenosu a odeslání jednoho bytu včetně potvrzení přijímačem je zobrazeno a popsáno na obr. 2.3.

Obrázek 2.3 : Zahájení přenosu a potvrzení přenosu kompletního bytu K porozumění významu je nutno si uvědomit, že na datové lince SDA dojde k logickému součinu logických úrovní výstupu přijímače a vysílače. Po potvrzení může přenos pokračovat dalším bytem, popř. je zařízením Master ukončena komunikace. Po vyslání stavu START na sběrnici zařízením typu Master, všechna zařízení typu Slave přijímají následující data vysílaná zařízením Master na sběrnici. Tento první byte obsahuje adresu zařízení Slave se kterým chce Master komunikovat a informaci o směru přenosu dat. Prvních 7 bitů obsahuje adresu, 8.bit je roven log.0 pro operaci WRITE označovanou také někdy v originále data transmission, tedy pro přenos dat Master=>Slave, a log.1 pro operaci READ označovanou také někdy v originále data request, tedy přenos dat

DATOVÝ VÝSTUP VYSÍLAČE DATOVÝ VÝSTUP PŘIJÍMAČE HODINOVÝ SIGNÁL SCL OD ZAŘÍZENÍ TYPU MASTER

9. hodinový puls pro potvrzení ACK

potvrzeno

nepotvrzeno

Page 23: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 21 -

Slave=>Master. Přijetí tohoto adresového bytu potvrzuje jen to zařízení Slave, kterému odpovídá adresa. Tuto skutečnost lze využít k detekci toho, zda na sběrnici existuje zařízení s danou adresou. Pokud Master neobdrží potvrzení, ukončí přenos. Pokud ano, pokračuje při operaci READ vysíláním datových bytů, nebo při operaci WRITE generuje pulzy na lince SCL a čte data z linky SDA. Po přijetí či odeslání příslušného počtu byte ukončí Master přenos vysláním STOP. Speciálním případem je zápis dat na adresu $00, nazývanou general call address. Data s touto adresou přijímají všechna zařízení na sběrnici.

Rozšířenými možnostmi I2C sběrnice, jako jsou 10-ti bitové adresování, sběrnice s více zařízeními typu Master, propojení se sběrnicí CBUS, arbitráž o přístup ke sběrnici, opakované starty přenosu atd. se zde nebudeme zabývat, pro případné zájemce jsou detailně popsány ve specifikaci I2C rozhraní v.2.1 [8].

2.3 Implementace rozhraní I2C v obvodu FM přijímače V obvodu TEA5768HL je implementováno standardní fast-mode I2C rozhraní typu Slave. Maximální rychlost přenosu je tedy 400kbit/s. Spodní hranice přenosové rychlosti není stanovena. Adresa zařízení je pevná $C0h. Rozhodovací úrovně jsou při napájení 5V: max.1V pro log.0 a min.2,25V pro log.1. Rozhraní je vybaveno vstupem BUSENABLE který umožňuje odpojit zařízení od sběrnice. Funkce obvodu FM přijímače není deaktivací rozhraní nijak ovlivněna, obvod je pouze izolován od sběrnice (vývody ve stavu vysoké impedance). Pro aktivování obvodů rozhraní musí tento vstup být připojen na log.1 a to nejméně 10µs před zahájením přenosu. Součástí obvodu rozhraní je ještě vstup BUSMODE, který však v této variantě obvodu nemá funkci, a musí být připojen na log.0. V jiných variantách obvodu tento vstup umožňuje přepnout rozhraní do jiného módu používajícího třívodičovou sběrnici.

2.4 Popis programování registrů obvodu FM přijímače

2.4.1 Obecné informace o programování Zápis konfigurační a řídící informace do obvodu FM přijímače je uskutečněn přenosem 5-ti byte. Po ukončení přenosu je automaticky spuštěn ladicí cyklus přijímače. Zápis je však možno ukončit po kterémkoliv bytu vysláním STOP na sběrnici a dosáhnout tím zkrácení celkové doby přenosu. Pokud je tato možnost využita, byty konfigurační a řídící informace v obvodu, které nebyly v aktuálním přenosu odeslány si ponechávají původně nastavenou hodnotu. Pokud je přenos ukončen vysláním STOP v průběhu vysílání bytu, obsahují registry obvodu nové bity které již byly odeslány, zbývající bity zůstávají nezměněny. V tomto případě nedojde ukončením přenosu k zahájení nového ladicího cyklu. Probíhající ladicí cyklus může být indikován výstupem SWPORT1, viz. popis konfigurační a řídící informace. Po připojení napájení je v obvodu aktivována funkce MUTE (viz. dále), veškeré ostatní bity jsou nastaveny na log.0. Pro inicializaci přijímače je nutno zapsat kompletní konfigurační a řídící informaci. Přesný popis významu jednotlivých bitů poskytuje následující podkapitola.

Page 24: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 22 -

2.4.2 Význam jednotlivých bytů konfigurační informace pro zápis 1.-2. BYTE ovládá funkce MUTE a Search mode, a dále obsahuje 14-ti bitovou hodnotu pro programovatelný čítač PLL syntezátoru. Význam jednotlivých bitů je v tab. 2.2a resp. 2.2b. Funkce MUTE : Aktivování této funkce zápisem log.1 do příslušného bitu dojde k potlačení obou audio výstupů zapnutím výstupního atenuátoru. Potlačení je vypnuto zápisem log.0 do příslušného bitu. Hodnota potlačení audio signálu je minimálně 60dB. Funkce Search mode : Aktivováním této funkce zápisem log.1 do příslušného bitu přejde obvod do módu vyhledávání stanice. Parametry pro vyhledávání jsou obsaženy ve třetím a čtvrtém konfiguračním bytu. Kritériem nalezení stanice jsou hodnoty čítače mezifrekvenčního kmitočtu a hodnota AD převodníku úrovně signálu, popsané v následující podkapitole. Po dobu vyhledávání je tento bit nastaven na log.1. Nastavení PLL syntezátoru : Syntezátor je nastavován zápisem 14-ti bitové hodnoty jeho programovatelného čítače. Stanovení hodnoty pro požadovanou naladěnou frekvenci je vázáno na konfiguraci bitu High/Low Side Injection ve třetím konfiguračním bytu. Dle katalogového listu [2] platí následující vztahy (22) a (23):

REF

IFFRLSI

REF

IFFRHSI

fffN

fffN

).(4

).(4

−=

+=

(22), (23)

kde: N = je dekadická hodnota 14-ti bitového konfiguračního slova.

fFR = je požadovaná naladěná frekvence v Hz. fIF = je mezifrekvenční frekvence (225kHz)

fREF = je referenční frekvence závislá na typu použité kmitočtové reference, pro krystal 32,768kHz je rovna 32,768kHz, pro krystal 13MHz popř. externí referenci 6,5MHz je rovna 50kHz

Dosazením hodnot fIF a fREF a po úpravě dostáváme vztahy v podobě vztahů (24) a

(25). Protože N musí samozřejmě být celé číslo je zjevné, že ladění je probíhá skokově s krokem 8192Hz :

8192225

768,32)225.(4

8192225

768,32)225.(4

kHzfkHz

kHzfN

kHzfkHz

kHzfN

FRFRLSI

FRFRHSI

−=

−=

+=

+=

(24), (25)

3. BYTE obsahuje konfigurační bity Search Up/Down, Search Stop Level, High/Low Side Injection, Mono to Stereo, Mute Right, Mute Left a hodnotu SWP1 pro ovládání programovatelného výstupu 1. Význam jednotlivých bitů je v tab. 2.2c. Search Up/Down : je konfigurační bit, jehož nastavením uživatel určuje zda vyhledávání stanice bude probíhat od nastaveného kmitočtu směrem k nižším či vyšším frekvencím.

Page 25: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 23 -

Pokud je tento bit nastaven na log.1 probíhá vyhledávání směrem k vyšším frekvencím, pokud je nastaven na log.0 směrem k nižším frekvencím. Search Stop Level: je dvoubitová hodnota pro funkci autonomního vyhledávání stanic. Určuje minimální úroveň signálu nalezené stanice pro ukončení vyhledávání. Pokud přijímač nalezne stanici která má však nižší úroveň signálu než je nastaveno, pokračuje dál ve vyhledávání. Úrovně pro jednotlivé hodnoty jsou v tab.2.1. Tabulka 2.1: Úrovně příslušející hodnotám „Search Stop Level“

SSL1 SSL0 Úroveň signálu 0 0 Nastavení této hodnoty není přípustné 0 1 Nízká úroveň – odpovídá hodnotě 5 AD převodníku úrovně *1 1 0 Střední úroveň – odpovídá hodnotě 7 AD převodníku úrovně *1 1 1 Vysoká úroveň – odpovídá hodnotě 10 AD převodníku úrovně *1

Pozn.1: AD převodník úrovně je popsán v následující podkapitole High/Low Side Injection : je konfigurační bit, který určuje zda je frekvence místního oscilátoru zvýšena (HSI) nebo snížena (LSI) o hodnotu mezifrekvenčního kmitočtu oproti požadované naladěné frekvenci, tedy jestli horní a dolní postraní pásmo přijímaného signálu jsou po konverzi na mezifrekvenční kmitočet zachovány beze změny (platí pro LSI), nebo zrcadlově otočeny (platí pro HSI). Toho lze využít ve spojitosti s faktem že mezifrekvenční filtr není symetrický, a vykazuje vyšší selektivnost směrem k vyšším kmitočtům od středního kmitočtu filtru. Mono to Stereo : je konfigurační bit který určuje zda bude výstupní stereofonní signál převeden na monofonní signál. Nastavením bitu na log.1 je signál převeden na monofonní, nastavením na log.0 ponechán stereofonní. Mute Right : je konfigurační bit při jehož nastavení na log.1 dojde k potlačení audio výstupu pravého kanálu. Potlačení výstupního signálu je větší min. 80dB. Mute Left : je konfigurační bit jehož význam je shodný s bitem Mute Right pouze s tím rozdílem že se týká levého audio kanálu. SWP1 : je bit který určuje stav výstupu SWPORT1. Vývod je ve stavu vysoké impedance pokud je tento bit nastaven na log.1, a ve stavu nízké impedance proti zemi pokud je bit nastaven na log.0. Nastavení bitu je ignorováno pokud je zapnuta funkce Search Indicator viz. popis 4.bytu. 4. BYTE obsahuje konfigurační bity Standby, Band Limits, Xtal, Soft MUTE, High Cut Control, Stereo Noise Canceller a Search Indicator a hodnotu SWP2 pro ovládání programovatelného výstupu 2. Význam jednotlivých bitů je v tab. 2.2d. SWP2 : je bit který určuje stav výstupu SWPORT2. Vývod je ve stavu vysoké impedance pokud je tento bit nastaven na log.1, a ve stavu nízké impedance proti zemi pokud je bit nastaven na log.0. Standby : je konfigurační bit který umožňuje přepnout obvod do módu s nízkým příkonem. Při nastavení log.1 je obvod přepnut do nízkopříkonového módu. Rozhraní sběrnice zůstává

Page 26: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 24 -

nadále aktivní a zápisem log.0 do tohoto bitu je možno obvod opět „zapnout“. Další snížení příkonu ve Standby módu je možné deaktivací rozhraní I2C pomocí vstupu BUSENABLE. Band Limits : je konfigurační bit udávající hranice frekvenčního pásma pro automatické ladění. Nastavením log.0 je zvoleno Euro-americké FM frekvenční pásmo 87.5-108MHz, nastavením log.1 pásmo Japonské 76-91MHz. XTAL : je konfigurační bit určující použitou kmitočtovou referenci. Musí být nastaven na log.1 pro krystal 32,768KHz, nebo na log.0 pro krystal 13MHz. Soft MUTE : je konfigurační bit ovládající funkci potlačení šumu při nepřítomnosti nosné. Toho je dosaženo zeslabovačem audio signálu ovládaným signálem vstupní napěťové úrovně po úpravě dolní propustí. Funkce aktivuje zeslabovač při nízkých úrovních vstupního signálu. Pro zapnutí funkce je nutno bit nastavit na log.1, pro vypnutí na log.0. High Cut Control : je konfigurační bit ovládající zapnutí či vypnutí obvodu deemfáze. Ten je využíván spolu s obvodem preemfáze na straně vysílače k zlepšení šumových poměrů v oblasti vyšších kmitočtů audio spektra viz. [1]. Obvod deemfáze má charakter integračního článku. Jeho parametry viz. popis 5.konfiguračního bytu. Pro zapnutí obvodů deemfáze je nutno bit nastavit na log.1, pro vypnutí na log.0 Stereo Noise Cancelling : je konfigurační bit ovládající zapnutí či vypnutí obvodů potlačení stereofonního šumu. Pro zapnutí obvodů SNC je nutno bit nastavit na log.1, pro vypnutí na log.0 Search Indicator : je konfigurační bit určující funkci výstupu SWPORT1. Pokud je bit nastaven na log.1 je ignorována hodnota pro tento výstup nastavená v registru, a výstup slouží jako indikátor probíhajícího ladicího cyklu resp. je přímým výstupem bitu READY, viz. následující podkapitola. 5. BYTE obsahuje konfigurační bity PLL REF a DTC. Význam jednotlivých bitů je popsán v tab. 2.2e. PLL REF : Je konfigurační bit povolující použití externí kmitočtové reference 6,5MHz. Nastavením bitu na log.1 je povoleno použití externí kmitočtové reference. Pro aplikace používající krystalové oscilátory je tento bit nastaven na log.0 DTC : je konfigurační bit nastavující parametry deemfáze. Pro hodnotu log.0 nastavenou v tomto bitu je časová konstanta integračního článku deemfáze 50µs, pro hodnotu log.1 je časová konstanta 75µs. FM vysílání v ČR používá hodnotu časové konstanty 50µs.

Page 27: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 25 -

Tabulka 2.2 : Struktura konfiguračních bytů pro zápis

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

a) 1.byte MUTE SM PLL13 PLL12 PLL11 PLL10 PLL9 PLL8 Mute Search

Mode PLL 13:8

b) 2.byte PLL7 PLL6 PLL5 PLL4 PLL3 PLL2 PLL1 PLL0

PLL 7:0

c) 3.byte SUD SSL1 SSL0 HLSI MS MR ML SWP1

Search Up/Down Search Stop Level H/L Side

Injection MONO to STEREO Mute Right Mute Left SW Prog.

Port 1

d) 4. byte SWP2 STBY BL XTAL SMUTE HCC SNC SI

SW. Prog. Port 2 Standby Band Limits Xtal Soft MUTE High Cut

Control Stereo

Noise Canc. Search

Indicator

e) 5.byte PLL REF DTC - - - - - -

6,5M PLL reference

De-emphase Time Const.

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

Tabulka 2.3 : Struktura konfiguračních bytů pro čtení

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

a) 1.byte RF BLF PLL13 PLL12 PLL11 PLL10 PLL9 PLL8 Ready Flag Band Limit

Flag PLL 13:8

b) 2.byte PLL7 PLL6 PLL5 PLL4 PLL3 PLL2 PLL1 PLL0

PLL 7:0

c) 3.byte STEREO IF6 IF5 IF4 IF3 IF2 IF1 IF0

Stereo Indication IF Counter result

d) 4. byte LEV3 LEV2 LEV1 LEV0 CI3 CI2 CI1 -

Level ADC output Chip identifikation (000) 0

e) 5.byte - - - - - - - -

0 0 0 0 0 0 0 0

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

Page 28: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 26 -

2.4.3 Význam jednotlivých bytů konfigurační informace pro čtení 1.-2. BYTE indikuje stav ladění, a dále obsahuje 14-ti bitovou hodnotu z programovatelného čítače PLL syntezátoru. Význam jednotlivých bitů je v tab. 2.3a resp. 2.3b. Ready Flag : je indikační bit, indikující v log.1 naladění stanice, nebo dosažení hranice pásma nastaveného bitem Band Limits viz. předchozí podkapitola. Tato funkce se vztahuje k režimu autonomního vyhledávání stanice. Obecně platí, že pokud je bit v log.0 probíhá ladění. Mimo to tedy log.0 indikuje probíhající přelaďování místního oscilátoru po změně požadované frekvence. Při povolení funkce Search Indicator viz. předchozí podkapitola, je hodnota bitu duplikována na výstup SWPORT1. Band Limit Flag : je indikační bit umožňující rozeznat příčinu ukončení ladění v režimu autonomního vyhledávání stanic. Pokud je tento bit nastaven v log.1 bylo v průběhu automatického ladění dosaženo hranice FM pásma daného bitem Band Limits viz. předchozí podkapitola. Pokud je bit v log.0 bylo důvodem ladění nalezení stanice splňující podmínky vyhledávání. Hodnota čítače PLL syntezátoru : PLL13:0 je 14-ti bitová hodnota načtená z frekvenčního syntezátoru. Pokud byl syntezátor nastaven zápisem, měla by být načtená hodnota stejná jako zapsaná. Pokud je stav syntezátoru výsledkem automatického ladění, lze načtením této hodnoty a dekódováním pomocí vztahu inverzního k vztahu (24) resp. (25) získat naladěnou frekvenci. 3. BYTE obsahuje indikační bit STEREO a 7-mi bitovou hodnotu IF6:0 která je výsledkem čítání mezifrekvenčního kmitočtu. Význam jednotlivých bitů je v tab. 2.2c. STEREO : je indikační bit, který hodnotou log.1 indikuje že naladěná stanice vysílá stereofonní signál. Pokud je jeho hodnota log.0 je přijímaný signál monofonní. Hodnota bitu je platná pouze při naladění stanice. IF6:0 : je hodnota která byla načítána čítačem mezifrekvenčního kmitočtu za jeho periodu 15,625ms (pro krystal 32,768KHz). Čítači je předřazen pevný dělič 1:64. Čítání probíhá korektně pouze pokud je úroveň vstupního VF signálu větší než 18µV. Hodnotu čítače využívá mód autonomního vyhledávání stanic pro detekci naladěné rozhlasové stanice. Za naladěnou je považována stanice pro kterou je výsledek čítání v rozmezí $31-3Eh (opět se jedná pro hodnotu platnou pro krystal 32,768MHz, hodnoty pro krystal 13MHz nebo referenci 6,5MHz jsou k nalezení v katalogovém listu [2] ). Přesnému významu hodnoty čítače a limitních hodnot pro automatické ladění je věnována příští podkapitola. 4. BYTE obsahuje 4 bitovou hodnotu Level ADC output a Chip identification. Význam jednotlivých bitů je v tab. 2.3d. Level ADC output : je hodnota z analogově-digitálního převodníku vstupní úrovně. Poskytuje informaci o vstupní úrovni signálu naladěné stanice. Rozsah měření je typově od 3µV (práh pro změnu hodnoty z $00h na $01h) s rozlišením převodníku typově 3dB. Blíže se významem hodnoty zabývá následující podkapitola.

Page 29: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 27 -

Chip Identification : jsou bity o kterých katalogový list tvrdí bez bližšího vysvětlení že musí být vždy nastaveny na log.0. Z uvedeného nevyplývá funkce ani význam. 5. BYTE je vždy čten jako $00h a je rezervován pro budoucí použití. Pro kompletnost je také zařazen v tab. 2.3e.

2.5 Význam některých hodnot načtených z obvodu FM přijímače

2.5.1 Čítač mezifrekvenčního kmitočtu Jak bylo řečeno již v minulé podkapitole čítá tento čítač s předděličkou 1/64 počet period za mezifrekvenčním filtrem, s dobou periody čítání 15,625ms. Výsledkem je hodnota ze které lze v blízkém okolí naladění rozhlasové stanice přímo určit odchylku nosného kmitočtu naladěné stanice od požadovaného kmitočtu naladění přijímače. Princip funkce je popsán dále.

Dle katalogového listu [2] má MF filtr šířku propustného pásma typově 94kHz. Pokud nyní budeme předpokládat že je pásmo propustnosti symetrické vůči střední frekvenci 225kHz (z katalogového listu víme, že není, ale pro vysvětlení funkce čítače tato představa postačí) a dále že se jedná o dokonalý filtr, pak na výstupu MF filtru se mohou objevit kmitočty z rozsahu fMF=225±47kHz což odpovídá pásmu 178-272kHz. Čítáním period signálů z touto frekvencí, podělenou 64 po dobu 15,625ms dostáváme dle vztahu (26) po zaokrouhlení hodnotu IF= 43 – 66 ($2Bh – $42h) pro krajní meze pásma popř. IF=55 ($37h) pro přesný mezifrekvenční kmitočet 225kHz.

0310.625,15.64

−= MFfIF (26)

Dále již bylo uvedeno že kritériem pro naladění stanice je hodnota IF= 49 – 62 ($31h - $3Eh). Dosadíme-li tyto mezní hodnoty do vztahu (26) (k hodnotě ), získáme dvě mezní frekvence viz. (27) a (28):

kHzffIF

kHzffIF

MFMF

MFMF

0,2546210.625,15.64

7,2004910.625,15.64

max03

min03

=⇒==

=⇒==

(27), (28)

Rozsah mezifrekvenčního kmitočtu naladěné stanice a jeho odchylka jsou tedy s použitím hodnot ze vztahů (27) a (28) dány vztahem (29):

kHzfkHzf MFMF 3,240,29225 0,29

3,24 −+=∆⇒= +

− (29)

To prakticky znamená, že aby byla stanice považována za úspěšně naladěnou, musí její mezifrekvenční kmitočet být v rozsahu daném vztahem (29). Mezifrekvenční kmitočet je dán rozdílem nosné frekvence rozhlasové stanice oproti frekvenci místního oscilátoru. Ten je díky vztahu (24) popř. (25) naladěn na frekvenci rozdílnou o 225kHz od požadované naladěné frekvence rozhlasové stanice. Odchylka mezifrekvenčního kmitočtu od hodnoty 225kHz (∆fMF), je tedy přímo rovna odchylce nosné frekvence (∆f0) od požadované naladěné frekvence (fRQ). To beze zbytku platí pro ladění dle (25) (fLO=fRQ-225kHz; viz.2.4.2), pro

Page 30: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 28 -

ladění dle (26) (fLO=fRQ+225kHz; viz.2.4.2) se změní znaménka. Z toho tedy vyplývá že v mezích dle (29) bude mezifrekvenční kmitočet v případě splnění vztahu (30) resp.(31):

kHzkHzRQHSI

kHzkHzRQLSI ffrespff 3,24

0,2900,293,240 .; +

−−+

−− == (30), (31)

Ze vztahu (26) lze pro kontrolu po dosazení hodnoty IF=1 a ∆fIF=fMF spočítat krok čítače MF kmitočtu. Výsledek získaný dosazením (32) koresponduje s hodnotou uvedenou v katalogovém listu [2].

HzffIF IFIF 4096110.625,15.

6403 =∆⇒=

∆= − (32)

Při ručním ladění lze tedy využít hodnotu čítače MF kmitočtu k detekci naladění stanice. Pokud bude ruční ladění umožňovat změnu kmitočtu v rastru po 100kHz, měla by být za naladěnou považována stanice jejíž nosná se od požadované naladěné frekvence neliší o více než 50kHz. Tomu odpovídají hodnoty čítače dle (33) (34):

hkHzkHzmsfIF

BhkHzkHzmsfIF

MF

MF

43$6710.625,15.64

50225625,15.64

2$4310.625,15.64

50225625,15.64

03max

03min

≡=+

==

≡=−

==

(33), (34)

2.5.2 AD převodník úrovně signálu AD převodník úrovně signálu je 4-bitový AD převodník poskytující informaci o úrovni

signálu přijímané stanice, resp. o úrovni signálu na naladěném kmitočtu. Dle katalogového listu [2] je prahová hodnota pro změnu čtených dat z $0h na $1h typově 3µV a následný krok typově 3dB. Pokud budeme udávat úroveň v dBmV je prahová úroveň rovna přibližně:

mVmV dBdBmV

VL 5046,50)10.3log(.2013log.20 03

min −≈−==⎟⎠⎞

⎜⎝⎛= −µ (35)

Pak lze tedy načtená data $00h reprezentovat jako signál s úrovní pod -50dBmV. Střed

intervalu mezi prahovými hodnotami jednotlivých diskrétních hodnot převodníku pak bude o 1,5dB posunutý od hodnoty Lmin (se zmíněným krokem 3dB). Obecně tedy pro další hodnoty platí vztah:

)1.(35,1min −++= ADCNLL (36)

kde NADC je dekadické hodnota úrovně načtená s převodníku

Tedy například pokud dosadíme do (36) za hodnotu NADC=1 a NADC=14 získáme:

mVADCADC

mVADCADC

dBNLEhLdBNLhL

1096,913.35,146,50)1(5,1)0($4995,480.35,146,50)1(5,1)01($

min

min

−≈−=++−=−++=−≈−=++−=−++=

(37), (38)

Tyto hodnoty lze využít k reprezentaci výsledku AD převodu v rozsahu načtených

hodnot NADC= 1 – 14. Pro nejvyšší hodnotu NADC=15 lze analogicky s předchozími výpočty

Page 31: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 29 -

odvodit, že se jedná o signál s úrovní větší než -8,5dBmV (přesně -8,46dBmV). Hodnoty úrovní pro celý rozsah převodníku jsou uvedeny v tab.2.4.

Tabulka 2.4 : Reprezentace hodnoty AD převodníku úrovně

Hodnota AD převodníku Přibližná úroveň signálu HEX DEC [dBmV] $00 0 < -50 $01 1 -49 $02 2 -46 $03 3 -43 $04 4 -40 $05 5 -37 $06 6 -34 $07 7 -31 $08 8 -28 $09 9 -25 $0A 10 -22 $0B 11 -19 $0C 12 -16 $0D 13 -13 $0E 14 -10 $0F 15 >-8.5

2.6 Implementace I2C v procesorech AVR

2.6.1 Implementace rozhraní Jak již bylo uvedeno v obecném popisu sběrnice, firma Atmel implementuje do svých mikrokontrolérů rozhraní I2C pod názvem TWI (Two Wire Interface). Zdrojem informací a obrázků v tomto popisu je katalogový list procesoru AT-Mega8 [11]. Modul TWI je složen z několika bloků, a je zobrazen na obr.2.4. Všechny registry ohraničené na obrázku tučnou čarou jsou přístupné pomocí vnitřní datové sběrnice. Modul nabízí některé rozšířené funkce, jako volby polarity SCL, o kterých zde nebude pojednáno neboť nekorespondují se standartem I2C. Následující popis modulu zachovává anglické názvy pro návaznost na katalogový list, a doplňuje je českým překladem. Názvy registrů jsou ponechány ve většině případů bez překladu. Předpokládá znalost základů I2C v rozsahu kapitol 2.1 a 2.2. SCL, SDA : V/V vývody TWI rozhraní. Výstupní budiče jsou vybaveny omezovačem rychlosti výstupu dat (Slew-rate control) za účelem přizpůsobení specifikaci TWI. Vstupní obvody obsahují blok pro potlačení rušivých pulsů odstraňující jehlové impulsy s délkou pod 50ns (Spike filter). Pro oba vývody mohou být standardním způsobem aktivovány pull-up odpory, které pak není nutno připojovat externě. Bit Rate Generator Unit – Jednotka generování přenosové rychlosti : Tato jednotka generuje hodinový signál pokud je modul v módu Master. Perioda signálu SCL je určena nastavením registr TWI Bit Rate Register (TWBR) a nastavením předděliče pomocí k tomu určených bitů v registru TWI Status Register (TWSR). Funkce modulu v módu Slave není na těchto nastaveních závislá, ale frekvence procesoru musí být pro správnou funkci vždy

Page 32: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 30 -

minimálně 16x větší než frekvence hodin SCL. Frekvence SCL v módu Master je dána vztahem (39):

TWPSCPU

SCL TWBRff

4).(216+= (39)

TWBR ve vztahu (39) je výše zmíněný registr, TWPS jsou výše zmíněné bity pro nastavení předděliče. Pro správnou funkci v módu Master musí být hodnota TWBR alespoň 10, nebo může dojít k vysílání nekorektní sekvence na výstupu.

Obrázek 2.4 : Struktura modulu TWI procesorů AVR Bus Interface Unit – Jednotka rozhraní sběrnice : Tato jednotka obsahuje posuvný registr pro data a adresu Data and Address Shift Register (TWDR), START/STOP kontrolér a arbitrážní jednotku Arbitration detection. Registr TWDR obsahuje adresový či datový byte určený k přenosu, nebo poslední přijatý byte. Kromě toho je 8-mi bitový registr TWDR obsahuje, rozšířen o 1-bitový registr obsahující (N)ACK bit, přijatý, nebo určený k odeslání. Tento (N)ACK registr není přímo programově přístupný, ale je možno k němu přistupovat pomocí zásahů do TWI Control Register (TWCR). Pokud v módu Vysílače je přijat (N)ACK bit dá se jeho hodnota odvodit z obsahu registru TWSR.

Page 33: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 31 -

START/STOP kontrolér je odpovědný za generování a detekci stavů START, REPEATED START, a STOP. START i STOP je kontrolér schopen detekovat i v případě že procesor je v některém z nízkopříkonových (sleep) módů, a je možno povolit ukončení tohoto módu na základě rozpoznání adresy (týká se módu Slave). Pokud modul TWI v módu Master zahájí přenos, arbitrážní jednotka průběžně sleduje přenos a pokouší se rozpoznat zda probíhá arbitrážní proces. Pokud modul „prohraje“ arbitráž o sběrnici, kontrolní jednotka je informována, a na základě návratového kódu je možno provést příslušná opatření. Address Match Unit – Jednotka rozpoznání adresy (mód Slave) : je určena k detekci zda 7-mi bitová adresa (10-bit adresování není HW podporováno) souhlasí s adresou uloženou v registru TWI Address Register (TWAR). Pokud je nastavením bitu TWI General Call Recognition Enable (TWGCE) v registru TWAR, všechny příchozí adresy budou také porovnány s General Call address(=$00h). Při odpovídající adrese je informována kontrolní jednotka, za účelem vykonání příslušné obslužné rutiny. Modul TWI může nebo nemusí potvrdit bitem ACK příjem své adresy v závislosti na nastavení registru TWCR. Jednotka rozpoznání adresy je schopná detekovat adresu i v případě že procesor je v některém z nízkopříkonových (sleep) módů, a je možno povolit ukončení tohoto módu na základě rozpoznání adresace od zařízení typu Master. Control Unit – Kontrolní jednotka : monitoruje sběrnici TWI a generuje odezvy odpovídající nastavení registru TWI Control Register (TWCR). Pokud nastane událost vyžadující zásah aplikačního softwaru je vyvoláno přerušení nastavením TWI Interrupt Flag (TWINT). V příštím hodinovém cyklu je aktualizován obsah registru TWI Status Register (TWSR) nastavením příslušného stavového kódu status code identifikujícího událost. Registr TWSR obsahuje platný stavový kód jen v případě že je nastaven TWI Interrupt Flag. V ostatních případech obsahuje speciální stavové kódy které neposkytují platnou informaci o stavu rozhraní. Po celou dobu nastavení TWINT Flag (tedy do doby ukončení obsluhy přerušení) je linka SCL nastavena na log.0. To umožňuje aplikaci vykonat potřebné procedury před tím, než pokračuje přenos.

2.6.2 Možnosti řízení TWI v módu Master Implementace rozhraní v procesoru AVR umožňuje dva typy řízení. Při jednodušším aplikační SW po každém požadavku na modul TWI ve smyčce vyčká na návratový kód operace, prověří zda byla vykonána správně a pokračuje příslušnou další operací. Tento způsob není efektivní, neboť procesor poměrně dlouhou dobu nevykonává žádnou užitečnou činnost. Při přenosu rychlostí 400kbit/s je k přenesení jednoho datového bytu (START-adresa-byte-STOP) potřeba nejméně 20 period hodin SCL což odpovídá 50µs. Vzhledem k tomu že procesor umožňuje tuto přenosovou rychlost při minimální taktovací frekvenci 14,4MHz viz. vztah (39), vykoná procesor za tuto dobu až 720 instrukcí, z nichž minimum vykonává jinou činnost než vyčkávání ve smyčce. Při maximální taktovací frekvenci procesoru AVR 16MHz se jedná až o 800 instrukcí. Výhodou je že programový kód je jednoduchý, a nevyžaduje poměrně složité řešení vztahů souběžně běžících procesů. Druhou možností je využití přerušení. To TWI modul generuje po každé dokončené operaci spolu s návratovým kódem. Obsluha přerušení musí umět rozpoznat z návratového kódu v jakém stavu se přenos nachází a adekvátně reagovat. Během autonomní činnosti TWI modulu tak sice může být vykonáván jiný programový kód, je ale nutno zajistit efektivní předávání informací mezi hlavním programem a obsluhou přerušení.

Page 34: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 32 -

3 Popis knihovny „i2c_FMR.asm“

3.1 Základní koncepce řešení

3.1.1 Požadavky zadání Výsledkem by měla být knihovna poskytující studentům nástroje pro práci s I2C rozhraním, a umožňující komunikaci s modulem FM přijímače. Funkce knihovny musí být snadno implementovatelné do programového kódu studentů a poskytovat jednoduché řešení komunikace tak, aby se studenti mohli věnovat tvorbě aplikačních vazeb mezi uživatelským rozhraním vývojové desky a FM přijímačem. Knihovna má naprogramována v JSA na platformě AVR Studia.

3.1.2 Volba řízení TWI rozhraní Vzhledem k faktu že úloha má být určena pro výuku, neklade požadavky na rychlost, a použité programátorské řešení musí zaručovat snadnou implementaci do vlastních programových kódů studentů bylo zvoleno první řešení bez použití přerušení(viz. kap. 2.6.2). To umožní studentům odesílat a číst data na rozhraní jednoduchým voláním příslušné funkce.

3.1.3 Způsob předávání dat Pro předávání dat byla vytvořena jednoduchá datová struktura v paměti RAM. Obsahuje adresu zařízení se kterým má rozhraní komunikovat, data určená k odeslání a přijatá data. Dále obsahuje byty pro zadání/čtení naladěné frekvence v kódu BCD, viz. následující podkapitola.

3.1.4 Doplňkové funkce Knihovna byla doplněna o funkce převodu požadované frekvence naladění FM přijímače z kódu BCD na 14-ti bitovou hodnotu dle vztahu (24) a inverzní funkci pro dekódování frekvence do BCD kódu. Obsahuje také jednoduchou funkci pro inicializaci TWI rozhraní.

3.2 Volání funkcí knihovny Obecně se předpokládá volání funkcí knihovny za pomoci instrukce call, po nastavení vstupních hodnot, které funkce očekává. Tato kapitola popisuje vstupy a výstupy jednotlivých funkcí, resp. očekávané a návratové hodnoty. V úvodu je tedy zařazen popis datové struktury která slouží pro předávání dat mezi knihovnou a aplikačním SW studentů, a popis návratových zpráv funkcí pro obsluhu sběrnice. V textu je používán název „formát PLL“ pro formát 14-ti bitového datového slova dle (24) určeného k nastavení frekvenčního syntezátoru.

3.2.1. Datová struktura pro předávání dat Pro předávání dat mezi knihovnou a uživatelem je určena 15-ti bytová struktura uložená v paměti RAM. Bázová adresa je funkcím předávána v registrovém páru Z. Popis jednotlivých bytů včetně ofsetu oproti bázové adrese je obsahem tab. 3.1. BA+0..BA+2 : První tři byty slouží k předávání hodnoty BCD pro převod na formát PLL a při dekódování naladěné frekvence. Využívá se obousměrně, tedy jak k předání dat pro funkci, tak k výstupu dat z funkce.

Page 35: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 33 -

BA+3..BA+4 : Následující dva byty slouží k předání konfiguračních informací pro přenos, konkrétně k předání adresy I2C zařízení se kterým se má komunikovat a počtu bytů které mají být odeslány nebo načteny. Funkce hodnotu těchto bytů nemění. BA+5..BA+9 : Šestý až desátý byte odpovídají 5-ti konfiguračním bytů FM přijímače a jsou určeny pro odeslání. Do prvních dvou zapisuje funkce pro převod z BCD formátu do formátu PLL. BA+10..BA+14 : Posledních 5 bytů je konfigurační a stavová informace načtená z FM přijímače. První dva byty čte funkce dekódující frekvenci v BCD kódu z formátu PLL. Tabulka 3.1 : Datová struktura pro předávání dat

Význam bytu Offset

horní 4 bity dolní 4 bity BA+0 BCD-100MHz BCD-10MHz BA+1 BCD-1MHz BCD-100kHz BA+2 B

CD

R/W

BCD-10kHz BCD-1kHz BA+3 adresa I2C zařízení BA+4 C

FG

počet byte k odeslání/přijetí BA+5 PLL 13:8 - data pro PLL syntezátor BA+6 PLL 7:0 – data pro PLL syntezátor BA+7 3. konfigurační byte BA+8 4. konfigurační byte BA+9

K Z

ÁPI

SU

5. konfigurační byte BA+10 PLL 13:8 - data z PLL syntezátoru BA+11 PLL 7:0 – data z PLL syntezátoru BA+12 3. konfigurační byte BA+13 4. konfigurační byte BA+14

NAČ

TEN

O

5. konfigurační byte

3.2.2 Návratové zprávy funkcí SEND a READ Funkce pro přístup na TWI rozhraní při ukončení nastavují do registrového páru Z adresu návratové zprávy, která určuje výsledek přenosu. První byte odpovídá návratovému kódu rozhraní TWI. Následuje zpráva v ASCII kódu o délce 16 znaků, kterou je možno použít k výpisu na display. Poslední byte je nulový, slouží jako ukončení řetězce a činí text použitelný pro dynamické algoritmy výpisu používající null terminated string – nulou ukončený řetězec. Základní návratové kódy rozhraní TWI převzaté z katalogového listu [11], s uvedením významu a textu předprogramovaných návratových zpráv uvádí tab. 3.2.

Page 36: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 34 -

Tabulka 3.2 : Základní návratové kódy, jejich význam a příslušné zprávy návratový kód návratová zpráva Význam

$28h Write OK Veškerá data byla v pořádku odeslána do zařízení.

$20h W-Err20 SLA nACK Vyslaná adresa nebyla potvrzena žádným zařízením

$30h W-Err30 DAT nACK Vyslaná data nebyla potvrzena žádným zařízením

$38h W-Err38 LOST ARB Vítězem arbitráže se stal jiný vysílač ZÁPI

S D

AT

jakýkoliv jiný nahrazen $00h W-Unknown Error Neznámý návratový kód

$50h Read OK Veškerá data byla v pořádku načtena ze zařízení

$38h R-Err38 LAorNACK Vítězem arbitráže se stal jiný vysílač, nebo nebo nebylo přijato potvrzení ACK

$48h R-Err48 SLA nACK Vyslaná adresa nebyla potvrzena žádným zařízením

$58h R-Err58 DAT nACK Přijatá data nebyla (námi) potvrzena ČTE

NÍ D

AT

jakýkoliv jiný nahrazen $00h R-Unknown Error Neznámý návratový kód

3.2.3 Funkce I2C_INIT Vstupy: funkce neočekává žádné hodnoty Výstup: funkce nemá žádné návratové hodnoty Funkce: funkce povoluje a nastavuje TWI rozhraní. Parametry nastavení jsou TWBR=10, předdělič nastaven na dělení :1. Pro takt procesoru 1MHz je přenosová rychlost 27,8kbit/s.

3.2.4 Funkce I2C_SEND Vstupy: funkce očekává ukazatel na datovou strukturu v registrovém páru Z. Výstup: funkce vrací ukazatel na stavovou zprávu v registrovém páru Z Funkce: funkce se pokusí odeslat data z datové struktury dle údajů v konfigurační části. Po ukončení registrový pár Z obsahuje ukazatel na stavovou zprávu definující výsledek přenosu.

3.2.5 Funkce I2C_READ Vstupy: funkce očekává ukazatel na datovou strukturu v registrovém páru Z. Výstup: funkce vrací ukazatel na stavovou zprávu v registrovém páru Z, do odkazované datové struktury zapíše načtená data. Funkce: funkce se pokusí načíst data ze zařízení dle údajů v konfigurační části datové struktury. Po ukončení registrový pár Z obsahuje ukazatel na stavovou zprávu definující výsledek přenosu. V případě úspěšného přenosu jsou přijatá data zapsána v příslušné části odkazované datové struktury.

3.2.6 Funkce BCD_TO_PLL Vstupy: funkce očekává ukazatel na datovou strukturu v registrovém páru Z. Výstup: funkce nastavuje byty odkazované datové struktury. Funkce: funkce konvertuje hodnotu požadované frekvence zadanou v příslušných bytech odkazované datové struktury v BCD kódu na formát PLL dle vztahu (24). Výslednou hodnotu zapíše do odkazované datové struktury na pozici příslušných bytů k odeslání.

Page 37: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 35 -

3.2.7 Funkce PLL_TO BCD Vstupy: funkce očekává ukazatel na datovou strukturu v registrovém páru Z. Výstup: funkce nastavuje byty odkazované datové struktury. Funkce: funkce konvertuje hodnotu ve formátu PLL přijatou ze zařízení, na hodnotu frekvence v BCD kódu (24). Výslednou hodnotu zapíše do odkazované datové struktury na pozici příslušných BCD bytů.

3.3 Popis konstrukce implementovaných funkcí Tato kapitola pomocí vývojových diagramů nebo vysvětlením algoritmu popisuje konstrukci jednotlivých implementovaných funkcí.

3.3.1 Funkce BCD_TO_PLL Tato funkce řeší výpočet řídícího slova pro PLL syntezátor dle vztahu (24). Prvotně převede hodnotu v BCD kódu na hexadecimální reprezentaci, po převedení přičte hodnotu mezifrekvenčního kmitočtu, a provede (vzhledem k struktuře dat jen částečně) dělení 1/8192. Vývojový diagram této funkce není uváděn, vzhledem k tomu, že se jedná o poměrně dlouhý in-line kód, a vysvětlení principu má v tomto případě několikanásobně vyšší informační hodnotu. Pro převod z BCD kódu na hexadecimální reprezentaci je použit následující rozklad. Výsledek je ukládán do 4 bytů B4:1. vstupní hodnoty BCD : X1kHz, X10kHz, X100kHz, X1MHz, X10MHz, X100MHz výstupní hodnoty HEX : B1, B2, B3, B4 -převod BCD na dekadickou hodnotu lze popsat následujícím vztahem XDEC = 1e3*X1kHz+1e4*X10kHz+1e5*X100kHz+1e6*X1MHz+1e7*X10MHz+1e8*X100MHz -vztah platí i v hexadecimální soustavě, neboť konstanty lze snadno převést na jejich hexadecimální reprezentaci a hodnoty X není potřeba převádět neboť se pohybují v rozsahu 0-9. XHEX = $3E8h *X1kHz

+$2710h *X10kHz +$186A0h *X100kHz +$F4240h *X1MHz +$989680h *X10MHz +$5F5E100h *X100MHz =

-násobení konstant lze rozložit na násobení 8x8 bitů, kdy násobení konstantou $100 v druhém sloupci reprezentuje posun o jeden byte doleva, výsledek ze třetího sloupce se posouvá o dva, a ze čtvrtého o tři byty. XHEX = $E8h*X1kHz +$100*$03h*X1kHz

+$10h*X10kHz +$100*$27h*X10kHz +$A0h*X100kHz +$100*$86h*X100kHz +$10000*$01h*X100kHz

+$40h*X1MHz +$100*$42h*X1MHz +$10000*$0Fh*X1MHz +$80h*X10MHz +$100*$96h*X10MHz +$10000*$98h*X10MHz +$00h*X100MHz +$100*$E1h*X100MHz +$10000*$F5h*X100MHz +$1000000*$05h*X100MHz

-definujme XHEX= B1 + $100*B2 + $10000*B3 + $1000000*B4, tedy 32-bitové číslo v němž B4 reprezentuje nejvyšší a B1 nejnižší byte. Pak platí:

B1 = $E8h*X1kHz +$10h*X10kHz +$A0h*X100kHz +$40h*X1MHz +$80h*X10MHz +$00h*X100MHz B2 = $03h*X1kHz +$27h*X10kHz +$86h*X100kHz +$42h*X1MHz +$96h*X10MHz +$E1h*X100MHz B3 = $01h*X100kHz+$0Fh*X1MHz +$98h*X10MHz +$F5h*X100MHz B4 = $05h*X100MHz

Page 38: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 36 -

Tento výpočet je snadno implementovatelný s využitím instrukce násobení 8x8bitů. Při opakovaném přičítání do výstupních bytů B je sice nutno kontrolovat jejich přetečení, ale neplatí to zdaleka pro všechna realizovaná sčítání. Pro některá naopak k přenosu do vyššího řádu nemůže dojít (dáno kombinací maximální možné hodnoty po předchozím sčítání, velikosti příslušné konstanty a hodnoty X). Např. předpokládejme že algoritmus začíná násobením BCD hodnoty X1kHz se všemi odpovídajícími konstantami. Nejvyšší hodnota BCD může být 9, a tedy nejvyšší možná hodnota v registrech po násobení je rovna 9*$E8h=$828h. Vzhledem k tomu že jsou registry na počátku vynulovány, nemůže dojít k přetečení do 3.bytu. Při druhém kroku je konstanta pro násobení $03h a maximální možný výsledek tedy 9*$03h=$1Bh. Tato hodnota se přičítá do bytu B2 kde je hodnota $08h z předchozího kroku. Součet $08h + $1Bh = $23h z čehož vyplývá že během násobení prvním BCD koeficientem nikdy nemůže dojít k přetečení do bytu B3, přesto že obecně je výsledek násobení 8x8 bitů 16-ti bitový. Analogicky lze odvodit pro které další součty nemůže dojít k přetečení.

K výsledné hodnotě B4:1 je přičtena hodnota 225.10+03 převedená do hexadecimální reprezentace. Dělení 1/8192 lze realizovat jako bitový posun o 27 pozic doprava. Bit 0 pak tedy tvoří bit nalézající se původně na pozici bitu 13. Mnohem efektivnější je tedy realizovat bitový posun o 3 pozice vlevo, čímž se bit 13 posune na pozici bitu 16 což je zároveň bit 0 pro byte B3, a výslednou 14-ti bitovou hodnotu pak obsahuje dvojice bytů B4:3. Na závěr je otestován bit 15, a pokud je nastaven, hodnota výsledku je zvětšena o 1 čímž je realizováno zaokrouhlení. Výsledek je uložen na příslušné pozice v odkazované datové struktuře.

3.3.2 Funkce PLL_TO_BCD Jedná se o funkci inverzní k funkci BCD_TO_PLL, tedy přepočet z formátu 14-ti bitového řídícího slova PLL syntezátoru na hodnotu naladěné frekvence v BCD kódu. Výpočet probíhá přičítáním konstant odpovídajících váhám jednotlivým bitů v BCD kódu. Nejnižší bit má váhu 8192kHz (krok syntézy). Každý následující bit má dvojnásobnou váhu. Po dokončení sčítání je od výsledné hodnoty v BCD odečtena hodnota mezifrekvenčního kmitočtu 225.10+03 a výsledek je uložen na příslušné pozice v odkazované struktuře.Vývojový diagram by zde opět neměl žádný informační přínos.

3.3.3 Funkce I2C_SEND a I2C_READ Úkolem těchto funkcí je transfer dat mezi odkazovanou datovou strukturou a zařízením typu Slave na které odkazuje adresa obsažená v této struktuře. Obě funkce I2C_SEND a I2C_READ jsou téměř identické. Pouze zapisují jiné hodnoty do řídícího registru a vyhodnocují jiné návratové kódy. Průběžné návratové kódy generované rozhraním při úspěšném přenosu nejsou pro uživatele knihovny podstatné, proto zde nejsou uvedeny. V případě potřeby jsou včetně detailních popisů k nalezení v katalogovém listu procesoru AT-Mega8 [11]. Vývojové diagramy funkcí jsou na obr. 3.1 resp. obr. 3.2

Page 39: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 37 -

Obrázek 3.1 : Vývojový diagram funkce I2C_SEND

I2C_SEND

START => I2C

ADR => I2C

potvrzena?

DATA => I2C

potvrzena? připrav další

DATA

poslední?

STOP => I2C

RET

Write OK => Z

W-Err20 SLA nACK => Z

vyčkej na odeslání

W-Err30 DAT nACK => Z

chyba$20?

vyčkej na odeslání

chyba$30?

chyba$38?

W-Err38 LOST ARB => Z

W-Unknown Error => Z

ANO

ANO

ANO

ANO

ANO

ANO

NE

NE

NE

NE

NE

NE

Page 40: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Popis knihovny „i2c_FMR.asm“

- 38 -

Obrázek 3.2 : Vývojový diagram funkce I2C_READ

I2C_READ

START => I2C

ADR => I2C

potvrzena?

DATA <= I2C

potvrzena? načti další

DATA

poslední?

STOP => I2C

RET

Read OK => Z

R-Err48 SLA nACK => Z

vyčkej na odeslání

R-Err58 DAT nACK => Z

chyba$48?

vyčkej na odeslání

chyba$58?

chyba$38?

R-Err38 LAorNACK => Z

R-Unknown Error => Z

ANO

ANO

ANO

ANO

ANO

ANO

NE

NE

NE

NE

NE

NE

Page 41: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Laboratorní úloha „I2C FM přijímač“

- 39 -

4 Laboratorní úloha „I2C FM přijímač“

4.1. Koncept úlohy Při tvorbě laboratorní úlohy bylo prioritou, aby byla pro studenty zajímavá, a aby umožňovala dosáhnout viditelných, i když v případě FM přijímače spíše slyšitelných výsledků. Proto jsou například funkce pro výpočet konfiguračního slova zahrnuty v předkládané knihovně, a studenti se tak budou moci plně věnovat programování vazeb mezi uživatelským rozhraním vývojové desky a FM přijímačem, což je bezpochyby zajímavější práce než programová implementace matematického vztahu.

4.2. Předpoklady úspěšného zpracování úlohy Předpokladem pro zvládnutí úlohy je alespoň rámcová znalost funkce I2C rozhraní, a pochopení principu ovládání předkládaného FM přijímače. K získání potřebných informací můžou posloužit např. kapitoly 2 a3 této diplomové práce. Je už na uvážení vyučujícího zda zadat nastudování těchto informací jako domácí přípravu, nebo v případě že to rozsah cvičení bude umožňovat provést výklad zmíněných základů na začátku cvičení. Dále je předpokládáno že úloha bude předcházena cvičeními ve kterých si studenti osvojí základní dovednosti pro práci s vývojovou deskou, a naučí se ovládat její periferie sloužící jako uživatelské rozhraní, tzn. klávesnici a display. Výrazným přínosem by bylo dosažení logické návaznosti cvičení, která by umožňovala použít v následujícím cvičení nejen znalosti z předchozího cvičení, ale např. rutiny které byly v minulém cvičení naprogramovány.

4.3. Zadání úlohy

4.3.1 Úvod Úkolem této úlohy je naprogramování funkčních vazeb mezi klávesnicí displejem a

modulem FM přijímače řízeného po sběrnici I2C. Programový kód potřebný k ovládání I2C rozhraní spolu s funkcí pro výpočet řídícího slova PLL syntezátoru přijímače je obsažen v připravené knihovně. Pro přístup na klávesnici a display použijte rutiny které jste naprogramovali v minulých cvičeních.

4.3.2 Zadání 1. Otevřete v AVR Studiu připravený projekt FM_radio. Prostudujte formát datové

struktury používané knihovnou i2c_FMR.asm k předávání vstupních a výstupních dat a zvolte si adresu v paměti RAM kam jí umístíte. Prozkoumejte v nápovědě direktivy překladače DSEG a CSEG a použijte je k alokaci prostoru pro datovou strukturu na vámi zvolené adrese.

2. Ještě než začnete s dalším programováním prostudujte způsob volání funkcí knihovny a nezapomeňte definovat Stack Pointer ;O)

3. Vyberte si některou ze stanic uvedených v seznamu na konci tohoto zadání, a nastavte její frekvenci na pozice datové struktury pro BCD vstup a voláním funkce BCD_TO_PLL proveďte převod na řídící slovo. Ze vztahu platného pro výpočet řídícího slova PLL syntézy vypočtěte správnou hodnotu a při simulaci svého kódu ověřte správnost výsledku převodu. Pokud je výpočet chybný, hledejte chybu v kódu.

4. Pokud převod proběhl správně, nastavte dle popisu registrů přijímače ostatní konfigurační bity, a pokuste se voláním funkce I2C_SEND data odeslat do registrů FM přijímače.

Page 42: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Laboratorní úloha „I2C FM přijímač“

- 40 -

Pokud jste nikde neudělali chybu přijímač naladí žádanou stanici. Pokud se tak nestalo zkuste si vybrat jiný kmitočet. Když se vám ani tak nepodaří naladit některou ze stanic pomůže vám možná chybu odhalit následující bod zadání.

5. Přidejte za volání funkce I2C_SEND kód který vypíše do spodní části displeje návratovou zprávu. Pokud zpráva indikuje správné odeslání dat je chybu třeba hledat v odesílaných konfiguračních informacích. Pokud ne, je chyba v připojení FM přijímače a v takovém případě požádejte o pomoc vyučujícího.

6. Rozšiřte kód tak aby bylo možno měnit frekvenci na kterou je přijímač naladěn pomocí klávesnice. Nezapomeňte ošetřit dosažení spodního a horního limitu FM rádiového pásma.

7. Rozšiřte kód tak aby se v horní části displeje zobrazovala frekvence zadaná v BCD části datové struktury.

8. Upravte kód následující za voláním funkce I2C_SEND tak, aby po odeslání konfigurační informace došlo k jejímu znovunačtení funkcí I2C_READ a následně jí dekódujte funkcí PLL_TO_BCD. Nyní zobrazte frekvenci z BCD části datové struktury na displej, ale nepřepisujte při tom hodnotu vypsanou před odesíláním. Porovnejte obě frekvence.

9. Testujte v načtené informaci bit indikující Stereo signál a zobrazujte ho na displej spolu s hodnotou naladěné frekvence. Ověřte si že je stereo signál přijímačem indikován i mimo naladěné stanice. Prostudujte význam hodnoty čítače mezifrekvenčního kmitočtu a zakomponujte do kódu podmínku která zabrání zobrazení stereo indikátoru mimo naladěné frekvence.

10. Prostudujte význam hodnoty úrovně přijímaného signálu, a rozšiřte kód o zobrazování této hodnoty v dBmV.

4.3.3 Kontrolní otázka 1. Proč je krok ladění přijímače diskrétní a jaká je max. odchylka od požadované frekvence? (+0/-8192kHz pokud by nebylo v konverzním vztahu použito zaokrouhlování, +/-4096kHz se zaokrouhlováním )

4.3.4 FM stanice vysílající na území Brna 87.6 MHz Brno - Kojál (600 m) Radio Impuls 88.3 MHz Brno - Hády (424 m) Kiss Hády 90.4 MHz Brno - Hády (424 m) ČRo 3 - Vltava 92.6 MHz Brno - Hády (424 m) ČRo 2 - Praha 93.1 MHz Brno - Hády (424 m) ČRo Brno 95.1 MHz Brno - Kojál (600 m) ČRo 1 - Radiožurnál 96.8 MHz Brno - Kohoutovice (380 m) Rádio Hey Brno 99.0 MHz Brno - Medlánky (339 m) AZ Rádio 101.3 MHz Brno - Hády (424 m) BBC World Service 102.0 MHz Brno - Kojál (600 m) ČRo 3 - Vltava 103.0 MHz Brno - Hády (424 m) Rádio Krokodýl 103.4 MHz Brno - Hády (424 m) Rádio Petrov 104.5 MHz Brno - Kojál (600 m) Frekvence 1 105.5 MHz Brno - Hády (424 m) Evropa 2 - Morava 106.5 MHz Brno - Kojál (600 m) ČRo Brno 107.5 MHz Brno - Hády (424 m) Rádio Proglas

Page 43: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Přípravek pro testování modulu

- 41 -

5 Přípravek pro testování modulu Vzhledem k neexistenci vývojové desky je součástí zadání i návrh jednoduchého řídícího

systému s procesorem AVR řady ATmega. Původní verze tohoto systému byla dle zadání realizována na univerzální desce plošného spoje, ale vzhledem k nevhodnosti této konstrukce pro prezentování bylo nakonec jeho zapojení realizováno na jednoduchém jednostranném plošném spoji. Vzhledem k tomu že se jedná o dočasné řešení a slouží jen k demonstraci funkce, bude uveden jen jeho základní popis.

Systém je vybaven černobílým grafickým LCD displejem 240x128 bodů a jeho klávesnice je tvořena třemi tlačítky. Umožňuje ladění přijímače s krokem 100kHz a jednorázové „změření“ a zobrazení spektra pásma CCIR. K tomu je použit AD převodník vstupní úrovně FM přijímače, a jedná se tedy o velmi informativní údaj. Krom této vstupní úrovně je na displeji zobrazena požadovaná vs. reálně naladěná frekvence, stereo indikátor, a návratové zprávy funkcí I2C_SEND a I2C_READ. V důsledku tak tento systém realizuje body zadání navržené úlohy.

Schéma zapojení testovacího kontrolního systému, založeného na procesoru Atmega8, je obsahem přílohy C. Předloha plošného spoje není zobrazena ale je spolu se schématem obsažena na CD.

Page 44: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

ZÁVĚR

- 42 -

ZÁVĚR Řešení úlohy definované zadáním se ukázalo poměrně zajímavým a inspirativním. Výsledkem je funkční prototyp modulu FM přijímače s výstupním zesilovačem pro sluchátka a knihovna pro jeho řízení v systémech založených na procesoru řady Atmel AVR. Oboje je primárně určeno pro počítačová cvičení předmětu „Mikroprocesorové aplikace“. Krom toho se nabízí možnost modul využít např. v laboratorních cvičeních předmětů zabývajících se technikou příjmu radiových signálů. Konstrukce byla optimalizována na snadnou reprodukovatelnost a široké možnosti použití. Zajímavým pokračováním jejího vývoje by byla verze používající planární indukčnosti realizované na plošném spoji. Ze softwarového pohledu nabízí modul a jeho řídící knihovna téměř neomezené možnosti pro další rozšiřování programového řízení modulu FM přijímače. Zajímavým zadáním některého z projektů realizovaných během studia by mohla být např. realizace převodníku rozhraní s procesorem AVR, umožňujícího řízení modulu FM přijímače pomocí sériové linky RS232 (popř. USB) a vývoj řídící aplikace pro PC. Doufám že výsledek mé práce bude pro Ústav radioelektroniky FEKT VUT v Brně přínosný, a napomůže snaze maximálně přiblížit praktickou výuku programování mikroprocesorů reálným úlohám z praxe.

Page 45: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Seznam použité literatury

- 43 -

Seznam použité literatury [1] SVAČINA, Jiří; HANUS, Stanislav. Vysokofrekvenční a mikrovlnná technika.

Přednášky. 2. doplň. vyd., Brno: VUT, 2002. 210str. Fakulta elektrotechniky a komunikačních technologií. ISBN 80-214-2222-X

[2]* PHILIPS Semiconductor. TEA5768HL, Low-power FM stereo radio for handheld

applications, Koninklijke Philips Electronics N.V., 8/2004, 36str. [3]* PHILIPS Semiconductor. BBY31, UHF variable capacitance diode, Philips Electronics,

5/1993, 4str. [4]* NEOSID. Electronic components, Part3. Filters, Coil Assemblies, Thermoplastic Parts,

NEOSID, 46str. [5] GM-Electronic. [6]* UBI-HUMAN CO.,Ltd. ATM-350 FM Tuner Product Specification, UBI-HUMAN

CO.,Ltd, 5/2004, 5str. [7]* PHILIPS Semiconductor. TDA 7050, Low voltage mono/stereo power amplifier, Philips

Semiconductors, 6/1989, 8str. [8]* PHILIPS Semiconductor. THE I2C-BUS SPECIFICATION VERSION 2.1, Philips

Semiconductors, 1/2000, 46str. [9] Wikipedia, volně dostupná webová encyklopedie [online], I2C from Wikipedia, the free

encyclopedia, Wikimedia Foundation Inc., St. Petersburg, [cit. 28.5.2006], dostupné na WWW: http://en.wikipedia.org/wiki/I%C2%B2C

[10] DLOUHÝ , Martin; Komunikace. Robotika.cz [online]. Únor 2006 [cit. 28.5.2006],

dostupné na WWW: http://robotika.cz/guide/comm/cs [11]* ATMEL Corporation. ATmega8, 8-bit AVR with 8K Bytes In-System Programmable

Flash, Atmel Corporation, San Jose, CA 95131, USA. 2004, 305str. [12] LÁNÍČEK, Robert. ELEKTRONIKA obvody, součástky, děje. dotisk 1. vyd., Praha:

BEN – Technická literatura, 2001. 480str. ISBN 80-86056-25-2 * hvězdičkou označené dokumenty jsou k dispozici na přiloženém CD

Page 46: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Seznam obrázků a tabulek

- 44 -

Seznam obrázků Obrázek 1.1 : Rozložení vývodů pouzdra obvodu TEA5768HL .......................................... - 5 - Obrázek 1.2 : Blokové schéma obvodu TEA5768HL v doporučeném zapojení .................. - 7 - Obrázek 1.3 : Rozložení vývodů cívky ............................................................................... - 13 - Obrázek 1.4 : Osazovací plán strany součástek a rozměry modulu .................................... - 16 - Obrázek 1.5 Osazovací plán strany spojů ........................................................................... - 16 - Obrázek 2.1 : Připojování zařízení na sběrnici a s struktura V/V obvodů .......................... - 19 - Obrázek 2.2 : Stavy START a STOP na sběrnici ............................................................... - 20 - Obrázek 2.3 : Zahájení přenosu a potvrzení přenosu kompletního bytu............................. - 20 - Obrázek 2.4 : Struktura modulu TWI procesorů AVR ....................................................... - 30 - Obrázek 3.1 : Vývojový diagram funkce I2C_SEND......................................................... - 37 - Obrázek 3.2 : Vývojový diagram funkce I2C_READ ........................................................ - 38 -

Seznam tabulek Tabulka 1.1 : Funkce vývodů ................................................................................................ - 6 - Tabulka 1.2 : Přeladění oscilátoru a potřebné indukčnosti pro různé varikapy .................. - 11 - Tabulka 2.1: Úrovně příslušející hodnotám „Search Stop Level“ ...................................... - 23 - Tabulka 2.2 : Struktura konfiguračních bytů pro zápis....................................................... - 25 - Tabulka 2.3 : Struktura konfiguračních bytů pro čtení ....................................................... - 25 - Tabulka 2.4 : Reprezentace hodnoty AD převodníku úrovně ............................................. - 29 - Tabulka 3.1 : Datová struktura pro předávání dat ............................................................... - 33 - Tabulka 3.2 : Základní návratové kódy, jejich význam a příslušné zprávy ........................ - 34 -

Page 47: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

PŘÍLOHY

- 45 -

Seznam příloh Příloha A – Odvození použitých vztahů Příloha B – Katalogový list obvodu TEA5768HL –abstrakt -jedná se o výtah katalogového listu, kompletní dokument je obsažen na CD

Příloha C – Schéma zapojení a předlohy plošných spojů

- Schéma zapojení FM přijímače a výst. zesilovače - Předloha plošných spojů 2:1, strana spojů - Předloha plošných spojů 2:1, strana součástek - Osazovací plán 2:1, strana spojů - Osazovací plán 2:1, strana součástek - Seznam součástek s uvedením dodavatelů - Schéma testovacího přípravku

Příloha D – Rozměry a rozmístění konektorů modulu

Příloha E – CD-ROM

Page 48: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

PŘÍLOHY

- 46 -

Příloha A – Odvození použitých vztahů

A.1 Odvození vztahu (5) Vztah pro výpočet kapacity CSTŘ pro kterou je LC oscilátor laděný varikapem naladěn na střed pásma které je možno daným varikapem přeladit: Cmin - minimální kapacita, Cmax - maximální kapacita vyjděme ze vztahů (3) a (4) viz. kap. 1.4.1:

MINLC

MAXLC LC

fLC

fππ 2

1,2

1maxmin == (A.1), (A.2)

dále analogicky do vztahu (2) lze dosadit:

STŘLCstř LC

fπ2

1= (A.3)

pro střední frekvenci platí:

2

maxmin LCLCLCstř

fff += (A.4)

dosazením vztahů (A.1), (A.2) a (A.3) do vztahu (A.4) získáme vztah (A.5) :

22

12

1

21 MINMAX

STŘ

LCLCLC

πππ

+= (A.5)

vztah (A.5) vynásobíme výrazem 4.π.L2, a získáme tak vztah (A.6):

MINMAXSTŘ CCC112

+= (A.6)

vztah (A.6) lze triviální úpravou převést do finální podoby vztahu (5):

2

112

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛+

=

MAXMIN

STŘ

CC

C (5)

Page 49: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 47 -

Příloha B – Katalogový list obvodu TEA5768HL

Page 50: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 48 -

Příloha C – Schémata zapojení a předlohy plošných spojů

Page 51: FM přijímač řízený výukovou vývojovou deskou s mikroprocesorem · 2006. 11. 1. · Obvod nepotřebuje externí fázový detektor, díky plně integrovanému FM demodulátoru.

Programování obvodu pomocí I2C

- 49 -

Příloha D – Rozměry a rozmístění konektorů modulu


Recommended