msp430-hakkinda-msp430f169
Transkript
msp430-hakkinda-msp430f169
T.C. KOCAELĐ ÜNĐVERSĐTESĐ MÜHENDĐSLĐK FAKÜLTESĐ ELEKTRONĐK VE HABERLEŞME MÜHENDĐSLĐĞĐ KABLOSUZ ALGILAYICI UYGULAMASI (OSĐLOMETRĐK ÖLÇÜM YÖNTEMĐ ĐLE KABLOSUZ TANSĐYON ALETĐ) BĐTĐRME TEZĐ Tevfik KADIOĞLU 020207024 TEZ YÖNETĐCĐSĐ: Prof. Dr. Hasan DĐNÇER HAZĐRAN 2006 ANAHTAR KELĐMELER Smart Sensörler, ZigBee, WPAN, MSP430F169, CC1020, Kan Basınç Ölçümü, Basınç Dönüştürücü, Tıp Elektroniği 2 KEY WORDS Smart Sensors, ZigBee, WPAN, MSP430F169, CC1020, Blood Pressure Measurement, Pressure Transducer, Medical Instrumentation 3 ÖZET Bu tezde, tıp elektroniğinde yaygın kullanım alanı olan osilometrik kan basıncı ölçüm sistemi incelenmiş, smart sensörler üzerine yapılan araştırmalar da göz önüne alınarak; düşük tansiyon, yüksek tansiyon, ortalama tansiyon ve nabız değerleri ölçülmüş ve sisteme eklenen kablosuz modül sayesinde bilgisayarda gözlemlenmesi ve verilerin depolanması sağlanmıştır. 4 ABSTRACT In this thesis, blood pressure is measured by the help of the osilometric measurement system. Smart sensors’ last applications are keeped in mind in this pratical application. Sistolitic pressure, diastolic pressure, average pressure and blood pulse are send via wireless module. 5 TEŞEKKÜR Bu çalışmaya bilgi ve tecrübelerini katarak bize yardımcı olan ve bu konuda çalışma olanağı veren Prof. Dr. Hasan DĐNÇER’e ve Yrd. Doç. Dr. Mehmet YAKUT’a, sınıf arkadaşım Göker KUZUCU ve Serkan ERBORAL’a ve hayatımın her anında olduğu gibi bu konuda da bana maddi ve manevi desteklerini esirgemeyen değerli aileme teşekkürlerimi bir borç bilirim. 6 ĐÇĐNDEKĐLER ANAHTAR KELĐMELER........................................................................................ 2 KEY WORDS ............................................................................................................. 3 ÖZET........................................................................................................................... 4 ABSTRACT ................................................................................................................ 5 TEŞEKKÜR ............................................................................................................... 6 ĐÇĐNDEKĐLER .......................................................................................................... 7 SĐMGELER DĐZĐNĐ VE KISALTMALAR LĐSTESĐ.......................................... 12 ŞEKĐLLER LĐSTESĐ............................................................................................... 14 TABLOLAR LĐSTESĐ............................................................................................. 17 1. BÖLÜM: GĐRĐŞ ............................................................................................... 19 2. BÖLÜM: SENSÖRLER .................................................................................. 20 2.1. Akıllı Sensörler .......................................................................................... 20 2.2. Sensör Ağların Tanıtımı............................................................................. 21 2.3. Sensör Ağların Uygulama Alanları............................................................ 24 2.3.1. Çevresel Uygulamalar........................................................................ 24 2.3.2. Sağlık Uygulamaları........................................................................... 24 2.3.3. Ticari Uygulamalar ............................................................................ 25 2.3.4. Askeri Uygulamalar ........................................................................... 25 2.4. 3. Kablosuz Teknolojiler Đçin Đletişim Altyapısı............................................ 25 2.4.1. IEEE 802.11 ....................................................................................... 25 2.4.2. IEEE 802.15 ....................................................................................... 26 2.4.3. IEEE 802.16 ....................................................................................... 27 2.4.4. IEEE 802.20 ....................................................................................... 28 2.4.5. IEEE 802.21 ....................................................................................... 28 2.4.6. IEEE 802.22 ....................................................................................... 29 2.4.7. Bluetooth ............................................................................................ 29 2.4.8. Infrared Data Association (IrDA) ...................................................... 29 2.4.9. Ultra Wideband (UWB) ..................................................................... 30 2.4.10. IEEE P1451.5..................................................................................... 30 BÖLÜM: TANSĐYONUN TANIMI VE ÇEŞĐTLERĐ.................................. 31 3.1. Tansiyon..................................................................................................... 31 7 3.2. Normal Tansiyon Değerleri Nelerdir? ....................................................... 38 3.3. Düşük Tansiyon Nedir?.............................................................................. 40 3.4. Normal Tansiyon Değerlerinin Ölçümü..................................................... 40 3.5. Tansiyon nasıl ölçülür? .............................................................................. 41 3.6. Basınç Oranlarına Göre Tansiyon Değerleri.............................................. 42 3.7. Stetoskop Đle Kan Basıncının Ölçüm Koşulları ......................................... 43 3.8. Tansiyona Etkileri Tartışılan Diğer Etmenler ............................................ 43 3.9. Büyük Tansiyon, Küçük Tansiyon ve Ortalama Tansiyon Nedir? ............ 44 3.10. Neden Tansiyonum Đnip Çıkıyor?.......................................................... 45 3.11. Ölçüm Yöntemleri:................................................................................. 46 3.11.1. 3.11.2. Đndirekt Yöntemler ................................................................................. 47 3.11.2.1. Dokunma ("Palpatory") Yöntemi................................................... 48 3.11.2.2. Osilometrik Yöntem....................................................................... 49 3.11.2.3. Dinleme (Oskültasyon - "Auscultatoıy") Yöntemi ........................ 50 3.11.2.4. Flush Yöntemi................................................................................ 51 3.11.2.5. Ultrasonik Yöntem ......................................................................... 51 3.11.2.6. Otomatik Ölçüm Yöntemi.............................................................. 51 3.11.3. 4. Direkt Yöntemler ............................................................................... 46 Ortalama Kan Basıncını Ölçen Otomatik Bir Sistem ........................ 53 BÖLÜM CC1020 NORROW BANDLI UYGULAMLAR ĐÇĐN DÜŞÜK GÜÇLÜ RF TRANCEIVER ................................................................................... 56 4.1. Uygulamaları.............................................................................................. 56 4.2. Ürün Özellikleri ......................................................................................... 56 4.3. Teknik Özellikler ....................................................................................... 57 4.4. CC1020 Đçin, Çalışma Değer Aralıkları..................................................... 57 4.5. Çalışma Koşulları....................................................................................... 58 4.6. Elektriksel Değerler ................................................................................... 58 4.7. RF Verici Katı Parametreleri ..................................................................... 58 4.9. Frekans Sentezleme Parametreleri ............................................................. 60 4.10. Sayısal GĐRĐŞ/ÇIKIŞ ............................................................................. 61 4.11. Pin Dağılımı ........................................................................................... 62 4.12. Devre Yapısı........................................................................................... 64 4.13. Uygulama Devresi.................................................................................. 65 8 5. 4.14. Giriş / Çıkış Karşılaştırması ................................................................... 65 4.15. Konfigürasyon........................................................................................ 67 4.16. Konfigürasyon Yazılımı......................................................................... 67 4.17. Mikroişlemci Ara Yüzü.......................................................................... 69 4.18. Đşaret Ara Yüzü ...................................................................................... 70 4.19. PLL Kitleme Đşareti................................................................................ 71 4.20. 4 Telli Seri Konfigürasyon Ara Yüzü .................................................... 71 4.21. Đşaret Ara Yüzü ...................................................................................... 74 4.22. Senkronlu NRZ Ara Yüzü...................................................................... 74 4.23. Senkronlu Manchester Kodlama Modu ................................................. 75 4.24. Asenkron UART Modu.......................................................................... 76 4.25. CC1020’nin PCB Bacakları ................................................................... 77 BÖLÜM: MSP430F169 TEXAS INSTRUMENTS....................................... 79 5.1. Tanımı ........................................................................................................ 79 5.2. Özellikleri................................................................................................... 81 5.3. CPU............................................................................................................ 83 5.4. Komut Seti ................................................................................................. 84 5.5. Çalışma Modları......................................................................................... 84 5.6. Kesme Vektör Adresleme .......................................................................... 85 5.7. Düşük Güç Tüketim Yeteneği.................................................................... 86 5.8. Kesme Enable 1 ve 2 (kesme izin saklayıcıları) ........................................ 87 5.9. Modül Saklayıcı 1 ve 2 .............................................................................. 88 5.10. Mikrodenetleyicinin Modülleri .............................................................. 89 5.10.1. Bootstrap Loader (BSL) Yükleyici .................................................... 89 5.10.2. Flash Bellek........................................................................................ 90 5.10.3. DMA Kontroller................................................................................. 90 5.10.4. Osilatör ve Sistem Saati ..................................................................... 91 5.10.5. Gerilim Denetleyici............................................................................ 92 5.10.6. Watchdog Timer................................................................................. 92 5.10.7. USART0............................................................................................. 92 5.10.8. Timer-A3............................................................................................ 93 5.10.9. Timer B7 ............................................................................................ 93 5.10.10. Karşılaştırıcı (Comparator) - A ...................................................... 93 9 5.11. CPU Tanımı ........................................................................................... 93 5.11.1. Program Counter(PC/RO)(Program Sayıcı) ...................................... 94 5.11.2. Yığın Đşaretçisi(SP/RI) ....................................................................... 95 5.11.3. Durum Saklayıcısı(SR) ...................................................................... 96 5.11.4. Sabit Üreteç Saklayıcısı CG1 and CG2 ............................................. 96 5.11.5. Genel Amaçlı Saklayıcılar R4-R15.................................................... 97 5.12. Adresleme Modları................................................................................. 97 5.12.1. Saklayıcı Mod .................................................................................... 98 5.12.2. Adreslenmiş Mod ............................................................................... 99 5.12.3. Sembolik Mod.................................................................................. 100 5.12.4. Mutlak Mod (Absolute Mod) ........................................................... 101 5.12.5. Dolaylı Saklayıcı Mod (Indirect Register Mod) .............................. 102 5.12.6. Dolaylı Otomatik Artırım Modu (Indirect Autoincrement Mod) .... 103 5.12.7. Doğrudan Modu ............................................................................... 104 5.13. Komut Seti ........................................................................................... 105 5.13.1. Đki Operantlık Komutlar................................................................... 106 5.13.2. Tek Operantlık Komutlar ................................................................. 107 5.13.3. Atlamalar (Jumps)............................................................................ 107 5.14. C VE ASSEMBLY ile MSP430 .......................................................... 110 5.14.1. C’den Parametre Geçişi.................................................................... 111 5.14.2. Kesme Fonksiyonları ....................................................................... 111 5.14.3. C’den Çağrılmış Assembly Rutinler ................................................ 112 5.15. Yerel Hafıza Dağılımı .......................................................................... 113 5.16. Uygulama Devresi................................................................................ 113 5.17. Osilatör ve Sistem Darbesi................................................................... 115 5.18. Brown-Out ........................................................................................... 116 5.19. Karşılaştırma Latchleri (TBCLX) ........................................................ 119 5.20. A/D Çevirici ......................................................................................... 120 5.21. DAC12 ................................................................................................. 122 5.22. Çevrimsel Dosya Haritası .................................................................... 124 5.23. Çevresel Dosya Haritası....................................................................... 125 5.24. Terminal Fonksiyonları........................................................................ 126 5.25. Kesme Vektör Adresleri....................................................................... 128 10 5.26. IAR Embedded Workbench for MSP430 v3 Derleyicisinin Kullanılması 129 6. BÖLÜM: 200 kPa On-CHIP SICAKLIK HASSASĐYETLĐ ve KALĐBRELĐ BASINÇ SENSÖRÜ............................................................................................... 141 7. 8. 9. 6.1. Tanım ....................................................................................................... 141 6.2. Özellikleri................................................................................................. 141 6.3. Tipik Uygulamaları .................................................................................. 141 6.4. Voltaj Çıkışı ve Uygulanmış Diferansiyel Sensör Basıncı ...................... 142 6.5. Basınç P1/Vakum P2 Tarafı Bilgileri ...................................................... 143 BÖLÜM: SĐSTEMĐN ÇALIŞMA YAPISI .................................................. 144 7.1. Giriş.......................................................................................................... 144 7.2. Manşetin Ölçüm Alınacak Basınca Getirilmesi....................................... 145 7.3. Kan Basıncının Ölçümü ........................................................................... 147 7.4. Yüksek Tansiyonun Ölçümü.................................................................... 147 7.5. Nabız Ölçümü .......................................................................................... 150 7.6. Düşük Tansiyonun Ölçülmesi .................................................................. 152 7.7. Ölçüm Almadan Önce.............................................................................. 152 7.8. Ölçüm Alırken.......................................................................................... 153 7.9. Tansiyon Ölçümünde Kullanılan Analog Devreler.................................. 153 BÖLÜM: MODÜLLERĐN PROGRAM KODLARI .................................. 156 8.1. Fonksiyonlar Kütüphanesi ....................................................................... 156 8.2. ADC Programı ......................................................................................... 158 8.3. DCO Programı ......................................................................................... 160 8.4. Donanımsal Çarpıcı Programı.................................................................. 161 8.5. UART Programı ....................................................................................... 162 SONUÇLAR ve ÖNERĐLER ........................................................................ 165 KAYNAKLAR ....................................................................................................... 166 ÖZGEÇMĐŞ.............................................................Hata! Yer işareti tanımlanmamış. 11 SĐMGELER DĐZĐNĐ VE KISALTMALAR LĐSTESĐ ACP Adjacent Channel Power ACR Adjacent Channel Rejection ADC Analog-to-Digital Converter AFC Automatic Frequency Control AGC Automatic Gain Control AMR Automatic Meter Reading ASK Amplitude Shift Keying BER Bit Error Rate BOM Bill Of Materials bps bits per second BT Bandwidth-Time product (for GFSK) ChBW Receiver Channel Filter Bandwidth CW Continuous Wave DAC Digital-to-Analog Converter DNM Do Not Mount ESR Equivalent Series Resistance FHSS Frequency Hopping Spread Spectrum FM Frequency Modulation FS Frequency Synthesizer FSK Frequency Shift Keying GFSK Gaussian Frequency Shift Keying IC Integrated Circuit IF Intermediate Frequency IP3 Third Order Intercept Point ISM Industrial Scientific Medical kbps kilo bits per second LNA Low Noise Amplifier LO Local Oscillator (in receive mode) MCU Micro Controller Unit NRZ Non Return to Zero OOK On-Off Keying 12 PA Power Amplifier PD Phase Detector / Power Down PER Packet Error Rate PCB Printed Circuit Board PN9 Pseudo-random Bit Sequence (9-bit) PLL Phase Locked Loop PSEL Program Select RF Radio Frequency RSSI Received Signal Strength Indicator RX Receive (mode) SBW Signal Bandwidth SPI Serial Peripheral Interface SRD Short Range Device TBD To Be Decided/Defined T/R Transmit/Receive (switch) TX Transmit (mode) UHF Ultra High Frequency VCO Voltage Controlled Oscillator VGA Variable Gain Amplifier XOSC Crystal oscillator XTAL Crystal 13 ŞEKĐLLER LĐSTESĐ Şekil 2.1. Sensör Birimleri ......................................................................................... 22 Şekil 2.2. Çeşitli Boyuttaki Sensöler.......................................................................... 23 Şekil 3.1. Atardamarlarda akan kanın damar duvarlarına uyguladığı kuvvet............ 31 Şekil 3.2. Yüksek ve Düşük Tansiyon Değerleri ....................................................... 32 Şekil 3.3. Kalbin EKG Đşareti .................................................................................... 33 Şekil 3.4. Dolaşım Sistemindeki Basınç Profili ......................................................... 34 Şekil 3.5. Kanın Damarlardaki Basınç Oranları......................................................... 36 Şekil 3.6. Sistolik Basınç ........................................................................................... 38 Şekil 3.7. Diastolik Basınç ......................................................................................... 38 Şekil 3.8. Basınç Oranlarına Göre Tansiyon Değerleri.............................................. 39 Şekil 3.9. Arter Basıncının Değişimi ve Ortalama Basıncı Veren Bağıntılar............ 45 Şekil 3.10. Sıstolik ve Diastolik Basman Erkeklerde Yaşa Göre Değişimi............... 46 Şekil 3.11. Sıstolik Ve Diastolik Basman Kadınlarda Yaşa Göre Değişimi.............. 47 Şekil 3.12. Dokunma Yöntemi................................................................................... 48 Şekil 3.13. Kaf Basıncındaki Osilasyonlar I .............................................................. 49 Şekil 3.14. Kaf basıncındaki Osilasyonlar II ............................................................. 49 Şekil 3.15. Osilometrik Yöntem Dinleme Yöntemi (Gedtjes, k. -21)........................ 50 Şekil 3.16. Dinleme Yönteminde Algılanan Sesin Değişimi..................................... 50 Şekil 3.17. Ultrasonik Basınç Ölçüm Sistemi............................................................ 52 Şekil 3.18. Ultrasonik Basınç Ölçüm Sisteminde Kullanılan Pnömatik Sistem ........ 53 Şekil 3.19. a) Arter Basıncı Değişimi ve b) Kaf Basıncındaki Osilasyon ................. 54 Şekil 3.20 Osilometrik Ölçüm Yöntemine Göre Basınç Değerleri............................ 54 Şekil 3.21. Ortalama Kan Basıncının Otomatik Olarak Ölçen Mikroişlemcili Bir Sistem................................................................................................................. 55 Şekil 4.1. CC1020 Pin Numaraları(Üstten Görünüş)................................................. 62 Şekil 4.2. CC1020’nin Blok Şeması .......................................................................... 64 Şekil 4.3. Uygulama Devresi ..................................................................................... 66 Şekil 4.4. SmartRF® Studio Kullanıcı Ara Yüzü ...................................................... 68 Şekil 4.5. SmartRF® Studio Kullanıcı Ara yüzü ....................................................... 69 Şekil 4.6. Mikroişlemci Ara Yüzü ............................................................................. 70 Şekil 4.7. Yazma Đşlemi Esnasında Saklayıcıların Konfigürasyonu.......................... 72 14 Şekil 4.8. Okuma Đşlemi Esnasında Registerların Konfigürasyonu........................... 72 Şekil 4.9. Senkronlu NRZ Modu(SEP_DI_DO = 0).................................................. 74 Şekil 4.10. Senkronlu NRZ Modu (SEP_DI_DO = 0)............................................... 75 Şekil 4.11. Manchester Kodlama ............................................................................... 76 Şekil 4.12. PCB Bacakları.......................................................................................... 77 Şekil 4.13. CC1020 Uygulama Devresinin Üst Kısmı............................................... 77 Şekil 4.14. CC1020 Uygulama Devresinin Malzeme Yerleşimi ............................... 78 Şekil 4.15. CC1020 Uygulama Devresinin Alt Kısmı ............................................... 78 Şekil 5.1. MSP430F169 Microişlemcisi Geliştirme Board’u .................................... 80 Şekil 5.2. MSP430F169 ‘un Bacak Tasarımı............................................................ 82 Şekil 5.3. MSP430F169 ‘un Fonksiyonel Blok Diyagramları ................................... 83 Şekil 5.4. CPU Tanıtımı............................................................................................. 83 Şekil 5.5. Flash Bellek Yapısı .................................................................................... 90 Şekil 5.7. Yığın Kullanımı ........................................................................................ 95 Şekil 5.9.Saklayıcı Moduna Örnek ............................................................................ 98 Şekil 5.10. Adreslenmiş Moda Örnek ...................................................................... 100 Şekil 5.11. Sembolik Moda Örnek........................................................................... 101 Şekil 5.12. Mutlak Moda Örnek............................................................................... 102 Şekil 5.13. Dolaylı Saklayıcı Modunun Yapısı........................................................ 103 Şekil 5.14. Dolaylı Otomatik Artım Moduna Örnek................................................ 104 Şekil 5.15. Đşlemci Operasyonu ............................................................................... 104 Şekil 5.16. Doğrudan Modun Yapısı........................................................................ 105 Şekil 5.17. Entegre Analog Sistemi ......................................................................... 113 Şekil 5.18. MSP430F169 ile Entegre Sistem ........................................................... 114 Şekil 5.19. Entegre Olmuş Sistem Yazılım Akışı .................................................... 115 Şekil 5.20. Osilatör Devresi ..................................................................................... 116 Şekil 5.21 Brown-Out Devresi................................................................................. 117 Şekil 5.22. SVS Düzeyi............................................................................................ 118 Şekil 5.23. Karşılaştırma Mandalları ....................................................................... 120 Şekil 5.24. ADC ....................................................................................................... 122 Şekil 5.25. DAC ....................................................................................................... 123 Şekil 5.26. Adım 1 ................................................................................................... 129 Şekil 5.27. Adım 2 ................................................................................................... 130 15 Şekil 5.28. Adım 3 ................................................................................................... 131 Şekil 5.29. Adım 4 ................................................................................................... 132 Şekil 5.30. Adım 5 ................................................................................................... 133 Şekil 5.31. Adım 6 ................................................................................................... 134 Şekil 5.32. Adım 7 ................................................................................................... 135 Şekil 5.33. Adım 8 ................................................................................................... 136 Şekil 5.34. Adım 9 ................................................................................................... 137 Şekil 5.35. Adım 10 ................................................................................................. 138 Şekil 5.36. Adım 11 ................................................................................................. 139 Şekil 5.37. Adım 12 ................................................................................................. 140 Şekil 6.1. 200 kPa On-Chip Sıcaklık Hassasiyetli ve Kalibreli Basınç Sensörü ..... 141 Şekil 6.2. Basınç Sensörünün Yapısı ....................................................................... 142 Şekil 6.3. Çıkış Karakteristiği .................................................................................. 143 Şekil 7.1. Sistemin Akış Diyagramı......................................................................... 144 Şekil 7.2. Sistemin Akış Diyagramı......................................................................... 146 Şekil 7.3. Yüksek Tansiyon Ölçüm Algoritması ..................................................... 149 Şekil 7.4. Nabız Ölçüm Algoritması ........................................................................ 151 Şekil 7.5. Ölçüm Yükselteci .................................................................................... 153 Şekil 7.6. Farklı Kazançlardaki Bant Geçiren Filtreler............................................ 154 Şekil 7.7. AC Bağlaşma Devresi.............................................................................. 155 Şekil 7.8. Analog Devrelerin Baskı Devre Şeması .................................................. 155 16 TABLOLAR LĐSTESĐ Tablo 3.1. Kan Basıncı Ölçümünde Kullanılan Đndirekt Yöntemler ......................... 48 Tablo 4.1. Kesim Maksimum Oranlar........................................................................ 57 Tablo 4.2. Çalışma Koşulları ..................................................................................... 58 Tablo 4.3. RF Verici Katı Parametreleri .................................................................... 59 Tablo 4.4. RF Alıcı Katı Parametreleri ...................................................................... 60 Tablo 4.5. Frekans Sentezleme Parametreleri............................................................ 60 Tablo 4.6. Sayısal Giriş/Çıkış .................................................................................... 61 Tablo 4.7. CC1020 PIN Dağılımı .............................................................................. 63 Tablo 4.8. Harici Elemanlar ....................................................................................... 66 Tablo 4.9. Uygulama Devresi Đçin Kullanılacak Malzemelerin Değerleri ................ 67 Tablo 4.10. Seri Ara Yüz, Zamanlama Açıklamaları................................................. 73 Tablo 5.1. Kelime Komut Formatı............................................................................ 84 Tablo 5.2. Adres Modları ........................................................................................... 84 Tablo 5.3. STATUS (durum) Saklayıcısı................................................................... 86 Tablo 5.4. Kesme Çalışır Durumda 1 ........................................................................ 87 Tablo 5.5. Kesme Çalışır Durumda 2 ........................................................................ 87 Tablo 5.6. Kesme Bayrakları 1 ve 2........................................................................... 88 Tablo 5.7. Kesme Bayrak Saklayıcısı 1 ve 2 ............................................................. 88 Tablo 5.8. Modül Saklayıcı 1 ve 2 ............................................................................. 89 Tablo 5.9. MSP430F169 Hafıza Organizasyonu ....................................................... 89 Tablo 5.10. Bootsrap Lader........................................................................................ 89 Tablo 5.11. Program Sayıcı........................................................................................ 95 Tablo 5.12. Yığın Đşaretçisi........................................................................................ 95 Tablo 5.13. Durum Saklayıcısı .................................................................................. 96 Tablo 5.14. Kaynak ve Hedef Đşlemci Adres Modları ............................................... 98 Tablo 5.15. Yazıcı Modun Tanıtımı........................................................................... 98 Tablo 5.16. Adreslenmiş Mod Tanımı ....................................................................... 99 Tablo 5.17. Sembolik Modun Tanımı ...................................................................... 100 Tablo 5.18. Mutlak Moda Örnek.............................................................................. 101 Tablo 5.19. Dolaylı Saklayıcı Modun Tanıtımı ....................................................... 102 17 Tablo 5.20. Dolaylı Otomatik Artım Modunun Tanımı........................................... 103 Tablo 5.21. Doğrudan Modun Tanımı ..................................................................... 104 Tablo 5.22. Đki Operantlık Komutlar........................................................................ 106 Tablo 5.23. Đki Operantlık Komut Örneği................................................................ 106 Tablo 5.24. Tek Operant Komut Tanıtımı ............................................................... 107 Tablo 5.25. Tek Operantlık Komut Örneği.............................................................. 107 Tablo 5.26. Atlama Komutunun Formatı................................................................. 107 Tablo 5.27. Atlama Komutlarını Tanımlar ve Listeler ............................................ 108 Tablo 5.28. Çevrimsel Dosya Haritası ..................................................................... 124 Tablo 5.29. Çevresel Dosya Haritası........................................................................ 125 Tablo 5.30. Terminal Fonksiyonları......................................................................... 127 Tablo 5.31. Kesme Vektör Adresleri ....................................................................... 128 Tablo 6.1. MPX2200A/D CASE 344-15 ................................................................. 142 Tablo 6.2. MPX2200A/D CASE 344-15 Đçin Maksimum Oranlar.......................... 143 Tablo 6.3. MPX2200A/D CASE 344-15 Đçin Çalışma Karakteristikleri................. 143 18 1. BÖLÜM: GĐRĐŞ Günümüzden kablosuz bilgi iletişiminin gelişmesi ile gerek endüstriyel alanlarda olsun, gerek medikal uygulamalarda olsun sistemlerin tekrar gözden geçirilmesi gerekmektedir. Sistemler kablosuz bilgi iletişimi ile geliştirilebilirlikleri artmakta ve performansları daha da geliştirilmektedir. Yapılan uygulama ile hastalardan elde edilen veriler, ana merkeze daha hızlı ve daha güvenilir bir şekilde aktarılmaktadır. Sistem smart sensörlerin yapısında olan genişlenebilirlik ve geliştirilebilirlik sayesinde daha da geniş ortamlara yayılabilmekte ve sistemlerden kaynaklanan hatalar azaltılmaktadır. 19 2. 2.1. BÖLÜM: SENSÖRLER Akıllı Sensörler Sensörler hayatımızın bir çok alanında kullanılır. Örneğin buzdolaplarının sıcaklığının ne kadar olduğunu yada bize nükleer reaktörlerdeki hangi tankın sıcaklığının hangi değerlerde seyrettiğini bize bildirir. Sensörlerin daha bir çok alanda etkinlikleri vardır. Hatta bazı sensörler birbirleri ile haberleşerek birbirlerini kalibre edebilirler. Bu sistemler için IEEE’nin uyguladığı standartlar vardır (ZigBee®, Ethernet, Foundation Fieldbus, Lonwork, Profibus, Interbus-S, USB, CAN-Bus, Device-Net, WorldFIP, P-NET, HART, ASI, IEEE 802.15.4). Sensörlerin en büyük sorunlarından biri kalibrasyondur. Kalibrasyonun bu sistemlerdeki önemine işaret etmek için 2002 yılında Toronto’daki nükleer enerji üreten reaktördeki bir hata örnek verilebilir. Bruce B santralinde, doğru olarak kalibre edilmemiş nötron detektöründen kaynaklanan bir problemden dolayı, sistem o kısımla ilgili olan bütün reaktörlerin işleyişine son vermiştir. Reaktörün sıcaklığını kontrol eden sensör ortama uygun olarak doğru kalibre edilmediği için gerçek sıcaklık bilgisini merkeze iletememiştir. Bunun sonucunda sistemde hata meydana gelmiş ve reaktörün gerçek sıcaklık değeri beklenenden düşük ölçülmüştür. Neticede reaktör çok ısınmış ve patlama tehlikesi ile karşı karşıya kalınmıştır. Sıcaklık değerinin normal değerin üstüne çıktığı, onu kontrol eden diğer sensörden elde edilmiştir. Analog sensörlere sayısal elemanlar takılarak sistemler desteklenmiş ve plug-andplay sistemler geliştirilmiştir. Böylece sistemlerin standart bir ara yüzü oluşmuş ve belli protokolleri de destekleyen sistemler geliştirilmiştir. Böylece sistem içerisine eklemeler ve çıkartmalar kolaylıkla yapılabilir hale gelmiştir. Yani sistemler taşınabilir, güncellenebilir ve geliştirilebilir olmaktadır. Sensörlerin bir diğer problemleri de istenilen bölgeye yerleştirilmeleri kablo ile olmaktaydı. Bu da sistemleri kablo bağımlısı haline getirmekteydi. Ancak son yıllarda yarı iletken ve yonga teknolojisinin de gelişmesiyle wireless modüllerin boyutu ve maliyeti azalmıştır. Bu kablosuz elemanlar sensörlerin sayısal çıkışlarına bağlanarak istenilen uzaklıkta veri transferi yapılabilmektedir. Böylece sistemlerin etkinlik alanı daha da genişlemektedir. [1] Sensörler, otomatik cihazlara görme, dokunma ve diğer duyular aracılığıyla çevrelerindeki olayları araştırma, çözümleme ve bunun sonucu olarak da daha akıllıca davranma yeteneğini sağlar. Görme Sensörleri (Vision Sensors) parça tanımlama ve parça ölçümünde kullanılır. Sıcaklık, güç ve şekil ölçümü yapan sensörler de vardır. Sensörlerin üretimdeki rolü Uyarlanmalı (Adaptive) Kontrol Sistemleri için veri toplamaktır. Robotlara yön bilgisi vermek ya da Kalite Güvencesi (Quality Assurance) ve Muayene Sistemleri için ölçümler yapmak sensörlerin rolüne ilişkin örneklerdir. Sensör teknolojisi günümüzde çok yoğun bir araştırma alanıdır. Gelecekte önem kazanması beklenen araştırma alanlarından bazıları derinlik algılama için Üç Boyutlu Görme, sıcaklık ve temas algılama için Yapay Ten (Artificial Skin) ve çeşitli özel amaçlı sensörlerdir. 2.2. Sensör Ağların Tanıtımı Günümüze kadar farklı tiplerde ve büyüklüklerdeki sensörler, tetikleyici rolüyle elektronik sistemlerin bir parçası olarak kullanılmaktaydı. Mikro elektro-mekanik sistem (MEMS) ve telsiz iletişimi alanlarındaki teknolojik gelişmeler sonucu sensörler için farklı uygulama alanları doğdu; sensör ağları. Askeri imkan ve kabiliyetlerin arttırılması ve muharebe alanında üstünlük sağlaması için halen üzerinde çalışmaların sürdürüldüğü sensör ağlar, geniş uygulama alanı olması sebebiyle sivil projelerde de kullanılmaktadır Sensör ağlarda görev yapan bir sensörün algılayıcı, işlemci, alıcı/verici ve güç birimleri olmak üzere dört ana elemanı vardır. Bunlara ilave olarak kullanım amacına göre bir sensör, yer bulma sistemi, güç üretim birimi, konum değiştirici bulundurabilir. Ana birimler başta olmak üzere tüm bu birimler bir kibrit kutusu 21 büyüklüğünden, bozuk para boyutlarına düşürülmüş olup, bilgi sistemlerin boyutları da donanım teknolojindeki ilerlemelere paralel olarak daha da küçülmüştür. Şekil 2.1. Sensör Birimleri Sensörlerin ana birimlerinden olan ve uygulamalara temel teşkil edecek çok çeşitli algılayıcı tipleri vardır. Bunlar; • Sıcaklık ölçümü, • Nem ölçümü, • Hareket algılama, • Aydınlık tespiti, • Basınç ölçümü, • Sismik değer ölçümü, • Görüntü tespiti, • Gürültü algılama/ölçümü, • Canlı/cansız varlık tespiti, • Mekanik gerginlik algılama/ölçümü, • Hız, yön, miktar tespiti/ölçümü, • Đvme ölçümü, • Akustik ölçümü, • Biosensörler, • Akış ölçümü, • Seviye ölçümü, • Load cells, 22 • Oksijen ölçümü, • pH ölçümü, • Rezonans ölçümü, • Tork ölçümü, • Ultrasonic ölçüm, • Vakum, esneklik, eğim, yakınlık, eğim gibi değerleri ölçen sensörler vardır. Şekil 2.2. Çeşitli Boyuttaki Sensöler Sensör ağlar, uygulamaya bağlı olarak uygulama sahasında konuşlandırılmasına (elle konumlarına yerleştirilmesi, uçaktan atılması gibi) müteakiben, sensörlerin birbiri ile iletişim kurması ile oluşmaya başlar. Donanım ve iletişim gücü itibariyle güçlendirilmiş sensörler, sink etrafında dizayn aşamasında belirlenen protokoller çerçevesinde tamamen kendi kendilerine kısa sürede organize olurlar. Algılayıcıları vasıtasıyla tespit ettikleri veriyi sink’e birbirleri üzerinden ulaştırırlar. Sink kendisine ulaşan veriyi kullanıcıya erişim noktalarından (uydu, sabit/hareketli aktarıcı) ya da direk olarak ulaştırır. Verinin iletimi sırasında internet, intranet gibi ağ erişimleri de kullanılabilir. Sensör ağları geleneksel telsiz ağlardan ayıran özellikler şunlardır; • Sensör ağlarındaki sensör sayısı geleneksel telsiz ağlardaki bilgisayar sayısından çok daha fazla olabilmektedir, • Sensör uygulama sahasında sensörlerin yoğunluğu fazladır, • Gerek donanımlarının minyatüre edilmiş olduğundan gerekse de atıldıkları saha özelliğinden bazılarının çalışmama/çalışamama ihtimalleri vardır, • Donanım özellikleri kısıtlıdır (sınırlı batarya, işlemci, bellek), 23 • Adrese dayanan statik bir topolojileri yoktur, • Her birinin başında kullanıcısı yoktur, uygulama sahasına bırakıldıktan sonra kendi kendilerine organize olmak zorundadırlar. Sensör ağların dizaynını etkileyen unsurlar şunlardır: Hata toleransı, ölçeklenebilirlik, maliyet, uygulama sahası, ağ topolojisi, donanım kısıtlamaları, iletişim ortamı kuralları, ve güç tüketimi. Bunlardan araştırmalara konu olan en önemli unsur güç tüketimidir. Depolanabilen güç miktarı sensörün hayatta kalabilme süresini, dolayısıyla ağ ömrünü belirlediğinden, tüm ağ katmanlarında efektif güç tüketimini temel alan çalışmalar halen sürmektedir. 2.3. Sensör Ağların Uygulama Alanları Sensör ağların uygulama alanları, çeşitlendirilebilmekle beraber, algılayıcı tiplerinin genişliği oranında uygulamalar aşağıdaki gibi başlıklar altında toplanabilir: 2.3.1. Çevresel Uygulamalar Orman yangını, sel, deprem, gibi doğal afetlerin ölçümlendirilmiş olarak hızlı bir şekilde ihbar edilmesinde, Hava kirliliği tespiti ve ayrıntılı rapor alınmasında, Doğal yaşamın gözlenmesinde. 2.3.2. Sağlık Uygulamaları • Đnsanların fizyolojik verilerinin uzaktan izlenmesi, • Hastanede bulunan doktorların yerinin ve hastaların durumunun (kalp atışı, kan basıncı vb.) izlenmesi, • Hastanedeki ilaç dağıtımının yönetimi. 24 2.3.3. Ticari Uygulamalar • Küçük çocukların konumlarının aileleri tarafından takip edilmesi, • Güvenlik ihtiyaçları, • Envanter yönetim yardımcı aracı, • Araçların izlenmesi ve tespit edilmesi. 2.3.4. Askeri Uygulamalar • Dost kuvvetlerin teçhizat ve cephanesinin izlenmesi, • Savaş alanının gözlenmesi, • Arazi hakkında keşifte bulunma, • Hedefin konumu, sürati gibi hedef bilgilerinin tespiti, • Düşmana verdirilen hasar miktarının tespit edilmesi, • Nükleer, biyolojik ve kimyasal (NBC) saldırıları ihbarının alınması ya da keşfi. 2.4. Kablosuz Teknolojiler Đçin Đletişim Altyapısı [2] Kablosuz teknolojilerin, sürekli/yaygın hesaplama ortamında en çok bilinenleri IEEE 802 teknolojileridir. Genel olarak IEEE, bünyesinde oluşturduğu özel çalışma grupları aracılığıyla, varolan kablosuz ağ teknolojilerini standartlaştırmakta, yeni ve gelişmiş kablosuz ortamlar için OSI katmanlarından fiziksel katman ve veri bağı katmanı seviyesinde standartlar oluşturmaktadır. IEEE yanı sıra, kablosuz teknolojilerde ilgili cihaz standartlarını ve cihazlar arası iletişim standartlarını belirleyen kar amaçlı veya kar amaçsız çalışan, Blutooth SIG (Bluetooth Special Interest Group), IrDA (Infrared Data Association), ve bu gibi çeşitli organizasyonlar vardır. Aşağıda, var olan başlıca kablosuz standartlar incelenmiştir: 2.4.1. IEEE 802.11 802.11 standartları genel olarak, kablosuz cihaz arayüzleri ile bunların iletişim kurduğu erişim noktaları arasında uzlaşmayı sağlayarak, kablosuz yerel alan ağları içinde (WLAN) fiziksel seviyede ve ortam erişim kontrolü (MAC) seviyesinde 25 arayüz standartlarını tanımlar. Bunun yanı sıra 802.11, yetkilendirme, mahremiyet ve veri bütünlüğünü muhafaza etme gibi güvenlik unsurlarını iletişim protokol mimarisinde mantıksal olarak sunar. IEEE 802.11 teknolojileri, çalıştıkları frekans aralıkları ve destekledikleri veri oranları açısından özelleşmiş ve çeşitlenmiştir. Bu ailenin, son kullanıcılar tarafından isim olarak en çok bilineni 1999 yılında onaylanan IEEE 802.11b standardıdır. U.S. Federal Communications Commission (FCC) frekans kullanım kuralları gereğince, lisans istenmeden serbestçe kullanılabilen Endüstriyel Bilimsel Medikal (Industrial Scientific Medical, ISM ) bant frekanslarında, 2.40 GHz – 2.4835 GHz frekans aralığında çalışan 802.11b, 11 Mbps hızlarında veri oranı destekleyebilmektedir. 802.11g standardı ile, yine ISM frekanslarında, 54 Mbps veri hızlarına ulaşılmaktadır. Ayrıca, 802.11a standardı, 54 Mbps düzeyinde veri hızlarını 5 GHz üzerinde sunmaktadır. 802.11 alt grupları, özellikleri doğrultusunda, yine bu harflendirme sistemiyle çeşitlenmiştir. Bunların son zamanlarda en çok anılanlarından biri de IEEE 802.11i standardıdır. 802.11 spesifikasyonlarında ilk kullanılan güvenlik mekanizması, WEP (Wired Equivalent Protocol), ortaya konulan zayıflığı sonucu, Wi-Fi Alliance tarafından WPA (Wi-Fi Protected Access) ile değiştirilmiştir ve IEEE bunu güncel haliyle olduğu gibi kabul edip 802.11i olarak standartlaştırmıştır. 802.11, WLAN için tasarlanmış olması sonucu, bilhassa 802.11b arayüz kartları ile dizüstü kullanıcılarının bir yerel ağ içinde çalışmaları sayesinde, en fazla sayıda son kullanıcıya ulaşmış olan kablosuz iletişim altyapısıdır. Wi-Fi olarak da bilinen bu teknolojinin kullanımı, sunduğu veri hızları dahilinde, genel olarak dizüstü bilgisayar iletişim uygulamalarının yanı sıra, ofis yerel ağ uygulamaları ve ev yerel ağ oluşum uygulamalarını kapsar. 2.4.2. IEEE 802.15 Kablosuz kişisel alan ağı (Wireless Personal Area Network, WPAN) altyapısı olarak sunulan IEEE 802.15 standardı, her yönde 10 m kapsama alanı olarak ifade edilen kişisel işletim ortamı (Personal Operating Space, POS) için, fiziksel katman ve veri bağı katmanı seviyesinde, kablosuz ağ ara yüz standartlarını tanımlamaktadır. 26 Bluetooth V1.1 teknolojisi için de alt iki katman standardını tanımlayıp bazı eklentiler sunan 802.15 teknolojisi, asıl uygulamalarını kablosuz medya (WiMedia) olarak duyurmuştur. 802.15.3 standardı, bu doğrultuda, kablosuz kişisel alan ağları içinde video veri transferini desteklemek üzere, 20 Mbps veri hızı üzerinde multimedya iletişimi sunmaktadır. Bir başka tür teknoloji imkanı açısından, ultra-düşük maliyetli ve ultra-düşük güç tüketimli iletişim altyapısı olarak IEEE 802.15.4, uzun pil ömrüne imkan tanıyan fakat dolayısıyla düşük veri hızları sunan bir standarttır. 10 Kbps ile 250 Kbps arasında veri hızlarını destekleyen, ZigBee® olarak da isimlendirilen 802.15.4 teknolojisi, “piconet” ağlarının geleceği açısından önemli bir altyapıdır. 802.15, WPAN için tasarlanmış olup, bilhassa WiMedia olarak bilinen 802.15.3 arayüz kartları ile son kullanıcılara ulaşmıştır. Kullanımı, temel olarak, kablosuz yerel ağ ve kablosuz kişisel alan ağları içinde multimedya iletişim uygulamalarını kapsar. Ayrıca, düşük hızlı ama yüksek pil ömürlü sensör ağları ve “piconet” sistem oluşumlarını kapsar. 2.4.3. IEEE 802.16 Kablosuz iletişim teknolojilerinde kablolu iletişim hızlarına çıkmak, kablosuz ortamın hayatı kolaylaştırıcı özelliğinin önüne geçip gerçek amaca yönelik olarak, iş süreçlerini hızlandırmaya imkan tanımıştır. Şu an için her ne kadar yerel alan ağları ortamında değil de metropolitan alan ağları içinde bu imkan daha olanaklı olsa da, gün geçtikçe her tür ortam için performans ve verimlilik arttırıcı araştırmalar, büyük şirketler, üniversiteler ve araştırma geliştirme merkezleri aracılığıyla hızlanmaktadır. IEEE 802.16, bu doğrultuda, kablosuz metropolitan alan ağları (WMAN) içinde, sabit geniş bant kablosuz erişim sistemleri için noktadan-çok noktaya kablosuz iletişim arayüz standartlarını tanımlar. IEEE 802.16 standardı, 2 GHz – 11 GHz ve 10 GHz – 66 GHz geniş bant frekans aralıklarında 120 Mbps veri hızlarına ulaşılabilen uygulamaları kapsamaktadır. 27 WiMAX olarak da anılan 802.16 teknolojisi, sabit WMAN için tasarlanmış olup sunduğu yüksek veri hızları sayesinde, geniş alana yayılmış ofis uygulamaları ve dağınık yerleşimli ofis şubelerinin birbiri ile iletişimi için uygun bir altyapı oluşturmaktadır. 2.4.4. IEEE 802.20 802.16 teknolojisinin sunduğu sabit geniş bant uygulamalarını mobil imkanlarla sunmak amacıyla, IEEE, Mobil Geniş bant Kablosuz Erişim Çalışma Grubu (Mobile Broadband Wireless Access Working Group, MBWA) adındaki grubu ile IEEE 802.20 standartlarını oluşturmaya çalışmaktadır. 3.5 GHz frekans altında çalışan bu teknoloji üzerinde, IP veri iletimi desteği en iyileştirilmeye çalışılmaktadır. 2.4.5. IEEE 802.21 Kablosuz teknolojiler açısından, bu bölümlerde tanıtılan 802 standartları yanı sıra, tezin ileriki kısımlarında sunulacak olan 802 dışındaki altyapılar da önemli rol üstlenmektedir. Bu farklı teknolojiler, kendi içinde bağımsız olarak günümüz teknolojik imkanları dahilinde çalışabilmektedir. Her iki farklı grup teknolojinin de aynı ortamda çalışması sonucu olası sorunlar, çakışmalar yok edilmeye çalışılmaktadır. Zaten sürekli/yaygın ortamın felsefesindeki görünmezlik için, farklı kablosuz teknolojilerin altyapı olarak da birlikte kullanılabilmesi verimlidir. IEEE, bu farklı teknolojilerin birlikte kullanılmasının ötesinde, temelde, aynı oturumun teknolojik altyapı ortamının değiştiği durumlarda da sürdürülebilmesini amaçlayan çalışma grubunu 2004 yılında kurmuştur. IEEE 802.21 Çalışma Grubu (Media Independent Handover Interoperability Working Group), standartlaştırmaya çalıştıkları araştırmaları sonucunda, bütünüyle görünmez bir ortamda, 802 standartlarının ve 802 dışındaki kablosuz standartların sunduğu iletişimin durdurulmadan birbirine geçişini ve veri iletimi üzerine hizmet sürekliliğini sağlamayı hedeflemektedir. 28 2.4.6. IEEE 802.22 IEEE 802.22, 802 çalışma gruplarından en yeni olanıdır. Grup, Kablosuz Bölgesel Alan Ağları (Wireless Regional Area Networks) içinde noktadan-çok noktaya, sabit kablosuz iletişim için gerekenleri araştırmaktadır. Çalışma grubunun planı, bu doğrultuda, VHF/UHF TV bandındaki 54 MHz – 862 MHz frekans aralığı içinde kullanılmayan kanallar üzerinde kablosuz iletişimi kapsamaktadır. 2.4.7. Bluetooth Bluetooth, özel ilgi grubu olarak, Bluetooth Special Interest Group (SIG) tarafından 1998 yılında geliştirilmiş olan açık bir spesifikasyondur. Çalıştığı frekans açısından, 802.11b ile birbirine alternatif olan bu teknoloji, 802.11b altyapısının aksine bir ağ yapısı değildir. FCC’nin, 2002 yılında, bu iki alternatif teknolojinin frekans yapılarında düzenlediği bir modifikasyon ile, bugün aynı cihazda aynı anda her iki teknoloji de çalışabilmektedir. Temelde Bluetooth, ağ oluşturma niyetiyle değil de kabloyu ortadan kaldırıp yerel alan ağları içinde kablonun yerini almak üzere geliştirilmiş bir teknolojidir. Güncel olan Bluetooth V2.0 standardı, maksimum 3 Mbps veri hızını desteklemektedir. Bluetooth teknolojisi, kişisel veri iletimi uygulamaları amacıyla, başlıca, dizüstü bilgisayarlarda ve cep telefonlarında son kullanıcıya ulaşmaktadır. 2.4.8. Infrared Data Association (IrDA) IrDA, yönlü ışık demeti aracılığıyla ışığın dalga yapısı sayesinde kızılötesi (infrared) frekanslarda gerçekleştirilen kablosuz iletişim teknolojisidir. 802 teknolojilerindeki gibi radyo dalgalarını kullanmıyor olması, çalıştığı aynı frekanslardaki diğer radyo dalgaları ile girişim yapmamasını sağlar. Đletişim esnasında, ışık dalgalarının yapısı açısından, alıcı ve verici iki ucun birbirini direk görme zorunluluğu, düzenlemede kısıt getirse de iletişimin güvenilirliğini destekleyici bir yapıdadır. 16 Mbps veri hızlarındaki uygulamaları yaygın olarak kullanılmakta olan kızılötesi iletişim 29 teknolojisi, Infrared Data Association tarafından, 100 Mbps düzeyinde multimedya uygulamalarını destekleyecek hale getirilmeye çalışılmaktadır. 2.4.9. Ultra Wideband (UWB) Ultra Wideband (UWB) teknolojisi, altyapısındaki kapasite açısından, bir POS alan içerisinde 800 MBps düzeylerine kadar veri hızı destekleyebilecek olanakta olup temelde WiMedia uygulamaları için geliştirilmektedir. Kablolu iletişim hızlarını kablosuz bir teknoloji olarak sunmayı hedefleyen ve uzun pil ömrünü desteklemeyi amaçlayan UWB, ev ağ oluşumu, multimedya veri iletimi, radar teknolojileri, kablosuz intercom gibi uygulamalar için çözüm sunmaktadır. 2.4.10. IEEE P1451.5 IEEE P1451.5, sinyalleşmede temel eleman olan sensörler için, dönüştürücü (transducer) iletişim protokollerini ve sensörlerin kablosuz arayüz standartlarını belirlemektedir. 30 3. 3.1. BÖLÜM: TANSĐYONUN TANIMI VE ÇEŞĐTLERĐ Tansiyon Bedenimizde trilyonlarca hücre vardır. Bunlar mükemmel bir işbölümüyle çalışırlar. Ama çalışabilmeleri için yakıta ve oksijene gereksinimleri vardır. Bu yakıtı, hücrede oksijenle yakıp, çalışabilmeleri için gerekli enerjiyi sağlarlar. Sonra bu yanmadan arta kalan artıkların ve açığa çıkan karbondioksitin hücreden uzaklaştırılması gerekir. Đşte hücrenin gereksindiği yakıt ve oksijenin hücreye taşınması, oluşan artık ve karbondioksitin hücreden uzaklaştırılması işini kan üstlenir. Şekil 3.1. Atardamarlarda akan kanın damar duvarlarına uyguladığı kuvvet Kanla hücre arasında az önce söylediğimiz alışverişin yapılabilmesi için, tüm hücrelerin kanla temas etmesi gerekir. Bu yüzden, nasıl ki, dallar incele incele tüm yapraklara kadar ulaşıyorlarsa, kan damarları da benzer biçimde damarlarla tüm hücrelere kadar uzanırlar. Ne var ki, kanın hücrelere kadar bir kere gitmesi yetmez. Sürekli yeni yakıtın, taze oksijenin hücrelere taşınması, artıkların da sürekli uzaklaştırılması gerekir. Yani bunun için kanın sürekli hareket etmesi gerekir. Bu işi, doğumdan ölüme kadar hiç durup dinlenmeden kalp üstlenir. Bir kaç dakika bile dursa, bizim için tam bir felaket olur. Kalp, akciğerden gelen temizlenmiş, bol oksijenli kanı hücrelere kadar, atardamarlarla pompalar. Kirlenmiş kan ise toplardamarlarla yeniden kalbe taşınır. Yani kalp her atımda, önce kanı pompalar, sonra da kanın yeniden kalbe dolması için istirahata geçer. Bu durmadan tekrarlanır. Öyle ki, kalp her dakikada 70-80 kere pompalar bekler; pompalar bekler... Tansiyon dediğimiz şey, kanın damar duvarını zorlamasıdır. Kalp kanı pompaladığında, atardamarların duvarı daha fazla gerilir; bekleme sırasında ise bu gerginlik daha azdır. Yani iki farklı tansiyon vardır. Đlki pompalama sırasında, daha fazla olanı. Biz buna büyük ya da sistolik tansiyon diyoruz. Đkincisi, kalbin istirahatı sırasında, daha düşük olanı. Buna da küçük ya da diastolik tansiyon diyoruz. Şekil 3.2. Yüksek ve Düşük Tansiyon Değerleri Kanın damar duvarına ne kadar basınç yaptığı, bir cıva sütununu ne kadar yükseltebildiğiyle ölçülür. Diyelim ki 120 mm yükseltebiliyorsa 120 mmHg ya da 12 cm Hg olarak söylenir. Hg, civanın kimya dilindeki kısaltımıdır. Bu basınç değerleri, 1 cm^2 alanındaki cıva sütununun tabanına yaptığı basınçla karşılaştırılarak belirtilir. Örneğin bir kişinin tansiyonu 12 dediğimiz zaman, bu basınç 120 mmHg yüksekliğindeki cıva sütununun tabanına yaptığı basınca eşdeğerdir. Kan basıncı çeşitli aletlerle ölçülür. En bilinenleri cıva sütunlu olanlardır. Ama yay sistemli ölçümler de geliştirilmiştir. Son yıllarda, elektronik ölçme tekniğinin kullandığı araçlar, basit kullanımları nedeniyle, çokça satılır olmuştur. Sözlüğe bakıldığında basınç ve gerginlik gibi anlamlara geldiği görülen tansiyon sözcüğü, sağlık alanında önüne veya arkasına başka sözcük eklemeden kullanıldığında, atardamarların içindeki kan basıncını ifade eder. 32 Damarın içinde kanın akabilmesi için belirli bir basıncının olması gerekir. Bu basıncı, kalbin kasılmasıyla kanı damarların içine pompalaması ve atardamarların elastikliğiyle bu basıncı dengelemesi sistemleri oluşturur. Şekil 3.3. Kalbin EKG Đşareti Kalp kasıldığı zaman atardamarların içine kanı belirli bir basınçla pompalar. Bu sırada damar içindeki basınç en yüksek düzeye ulaşır. Bu basınca tıpta sistolik basınç, halk arasında büyük tansiyon adı verilir. Kalbin gevşemesiyle, damar içine pompalanan kan durur. Đşte bu sırada devreye damarın elastikliği girer. Önce genişlemiş olan damar, kana bir basınç uygulayarak kalbin gevşemesi anında da kan akımını sağlar. Đşte bu sırada oluşan en düşük basınca da tıpta diastolik tansiyon, halk arasında da küçük tansiyon denilir. Bu basınç, 1 cm2 alanındaki cıva sütununun tabanına yaptığı basınçla karşılaştırılarak belirtilir. Örneğin bir kişinin tansiyonu 12 dediğimiz zaman, bu basınç 12 cm yüksekliğindeki cıva sütununun tabanına yaptığı basınca eşdeğerdir. Tıpta bu ölçüler, mm olarak belirtilir. Yani halk arasında 12-14 gibi cm cinsinden söylenen ölçüler tıpta 120-140 gibi, mm cinsinden ifade edilir. 33 Tansiyon değerleri kişinin yaşına ve cinsiyetine bağlı olmakla birlikte, erişkin bir kimsede büyük tansiyon 130mmHg'nin, küçük tansiyonun da 85mmHg'nin altında olması istenir. Bu değerlerin üzeri derecesine göre sınırda yüksek, yüksek ve çok yüksek tansiyon (hipertansiyon) değerleri olarak adlandırılır. Büyük tansiyonun 90mmHg'nin, küçük tansiyonun 60mmHg'nin altında olması da düşük tansiyon olarak adlandırılır. Şekil 3.4. Dolaşım Sistemindeki Basınç Profili Kalbimiz sürekli pompa gibi çalışarak, kanın vücudumuzda dolaşımını sağlar. Tansiyon, diğer bir deyişle kan basıncı, dolaşım sırasında damarlarımızda akan kanın damar çeperlerine yaptığı basınçtır. Vücudumuzdaki organları oluşturan dokular, kalp ve damar yoluyla düzenli bir şekilde oksijen ve besin maddeleri alış-verişi yaparak görevlerini yerine getirir. Bu işlemin sürekliliği için kalp düzenli olarak çalışır. Kendisine kulakçıklardan gelen kanı karıncıklar yoluyla büyük ve küçük dolaşıma pompalar. Bu pompalama vücudun değişik bölgelerinde, örneğin, boyun ve el bilek damarlarında nabız atması şeklinde hissedilir. Nabız sol karıncıktan atılan temiz kanın bu damarlarda 34 oluşturduğu basınçtır. Büyük dolaşım sistemi ile dokuların gereksinimini karşılamak için dağıtılan bu kan kullanıldıktan sonra tekrar temizlenmek üzere küçük dolaşım yardımı ile akciğerlerden geçirilir. Damarın içinde kanın akabilmesi için belirli bir basıncının olması gerekir. Bu basıncı, kalbin kasılmasıyla kanı damarların içine pompalaması ve atardamarların elastikliğiyle bu basıncı dengelemesi oluşturur. Kalp kasıldığı zaman atardamarların içine kanı belirli bir basınçla pompalar. Bu sırada damar içindeki basınç en yüksek düzeye ulaşır. Bu basınca tıpta sistolik basınç, halk arasında büyük tansiyon adı verilir. Kalbin gevşemesiyle, damar içine pompalanan kan durur. Đşte bu sırada devreye damarın elastikliği girer. Önce genişlemiş olan damar, kana bir basınç uygulayarak kalbin gevşemesi anında da kan akımını sağlar. Đşte bu sırada oluşan en düşük basınca da tıpta diastolik tansiyon denir. Bu basınç, 1 cm2 alanındaki cıva sütununun tabanına yaptığı basınçla karşılaştırılarak belirtilir. Örneğin bir kişinin tansiyonu 12 dediğimiz zaman, bu basınç 12 cm yüksekliğindeki cıva sütununun tabanına yaptığı basınca eşdeğerdir. Tansiyon değerinin kişinin yaşına, cinsiyetine uyarlanan değerler arasında olmasına normal tansiyon, üzerinde olmasına yüksek tansiyon (hipertansiyon), altında olmasına da düşük tansiyon (hipotansiyon) denilmektedir. Tansiyon değerleri mmHg (milimetre Cıva) olarak ölçülür. Ancak halk arasında cmHg daha yaygın olarak kullanılır. Tansiyonu, kanın damar duvarını zorlaması diye tarif etmiştik. Tansiyon ne kadar yüksekse, damar duvarı o kadar çok zorlanır. Yani o kadar çok bozulur. Öyle bir kaç ayda değil ama uzun yıllar bu zorlanma devam ederse, damar duvarı sertleşmeye başlar. Damar duvarı sertleştikçe tansiyon daha da yükselir. Tansiyon daha da yükselince, damar duvarı da daha çok bozulur. Bu böylece, giderek daha kötüye 35 doğru devam eder. Damar duvarının bu bozulup sertleşmesine, “damar sertliği” ya da “aterosklerozis” denmektedir. Damar duvarı sertleşip bozulunca, en başta hücrelerin iyi çalışıp işlerini yapabilmeleri için kanın gerekli yakıt ve oksijeni; sonra açığa çıkan karbondioksit ve artıkları damarlarda taşıdığını söylemiştik. Damarlar bozulunca bu taşıma işlemi bozulur, hücreler de görevlerini yapamaz hale gelir, hatta ölürler. Tıpkı, su ve borular olduğu halde, boruların içlerinin tıkanıp, suyun artık akamaması gibi... Vücudun her yerinde damar olduğu için vücudumuzun her yeri etkilenir. Ama bazı yerler, daha da çok etkilenir. Atış basıncı (Pulse Pressure) = Sistolik Basınç – Diastolik Basınç Örneğin; Kan basıncı 120/80 Atış basıncı = 120 – 80 = 40 mmHg Örneğin; Kan basıncı 140/80 Atış Basıncı = 140 – 80 = 60 mmHg (Güçlü kasılma, Fazla kan hacmi) Şekil 3.5. Kanın Damarlardaki Basınç Oranları 36 En başta kalbi besleyen damarlar (yani koroner damarlar) etkilenir. Kalbi besleyen damarlar birden tıkanırsa, “kalp krizi” dediğimiz durum ortaya çıkar. Kalp krizi o kadar ağır bir hastalıktır ki, kriz geçirenlerin dörtte biri hastaneye bile yetişemeden ölür. Dörtte bir kadarı da hastanede, doktorların müdahalesine rağmen hayatlarını kaybederler. Kalpten sonra en çok etkilenen ikinci organ beyindir. Beyindeki damarların tıkanması ya da bazen yırtılıp kanamaları yüzünden “felç” oluşur. Üçüncü sırada alt üyelere yani uyluk, bacak ve ayağa giden damarların tıkanması vardır. Onlar tıkanınca “kangren” denilen ve tıkanan yerde çürümeye neden olan, o yüzden de kesip çıkarılmalarını gerektiren hastalık gelişir. Damar sertliğinin çokça etkilediği ve bizim için önemi fazla olan iki organ daha vardır. Bunlar göz ve böbrektir. Đlki körlüğe, ikincisi idrarın atılamamasına kadar gidebilen kötü sonuçlar doğurabilir. Yukarıda sıraladığımız hastalıklar, günümüzde insanların ölüm nedenlerinin yarısını oluşturmaktadır. Yani, günümüzde, her iki kişiden biri, damar sertliği yüzünden ölmektedir. Bu yüzden, son zamanlarda tıp, damar sertliğine bağlı hastalıklar konusunda seferber olmuştur. Bu hastalıkların nasıl önlenebilecekleri ve bu hastalıkların nasıl daha iyi tedavi edilebilecekleri son zamanların en önemli çalışma konusudur. Tansiyon, zarar vermek için bazen yıllarca damarların bozulmasını beklemeyebilmektedir. Damarda önceden var olan bir baloncuk (anevrizma), tansiyon yükselince patlayıp, anî ölüme neden olabilmektedir. Ya da, kalp pompası bir başka nedenle bozulmuşsa, yükselen tansiyon, kalp yetmezliğini ölüme götürebilecek kadar kötüleştirebilmektedir. Ancak tansiyonun zararı, başta da söylediğimiz gibi, daha çok damarları bozması yoluyladır. Tansiyon, damarı, yıllar içinde yavaş yavaş ama kararlı bir şekilde bozar. 37 Sonunda, yukarda saydığımız kötü sonuçlara ve ölüme kadar götürür. Bu yüzden tansiyona “sinsi katil” denmektedir. SĐSTOLĐK BASINÇ. Kalp kasılıp vücuda kan pompalarken atardamarda oluşan basınç sistolik olarak adlandırılır. Şekil 3.6. Sistolik Basınç DĐASTOLĐK BASINÇ. Kalbe kan geri toplanırken atardamarlarda oluşan basınç diastolik olarak adlandırılır. Şekil 3.7. Diastolik Basınç 3.2. Normal Tansiyon Değerleri Nelerdir? Tıpta genel olarak herkesin bünyesinin farklı olduğunu bilmek gerekir. Bu nedenle herkesin tansiyon ölçüm değerlerinin aynı olması beklenemez. Bu nedenle bir kişide tansiyonun yükselmiş ya da düşmüş olduğundan bahsedebilmek için, herhangi bir şikayetinin ya da hastalığının olmadığı dönemde tansiyonunun zaman zaman ölçülüp değerlerinin bir kenara kaydedilmesi yararlıdır. 38 Şekil 3.8. Basınç Oranlarına Göre Tansiyon Değerleri Herkesin tansiyon değerlerinin farklı olduğundan bahsettik ama genel olarak normal kabul edilen sınırları da ihmal etmemek gerekir. Yapılan uzun araştırmalar sonucu, yaşın artışıyla küçük değişmeler olmakla beraber sistolik (büyük) tansiyon için 120 ile 140, ya da Türkiye'de yaygın söylendiği gibi 12 ile 14 arası, diastolik (küçük) tansiyon için 70-90 ya da 7-9 arası olması halinde tansiyona bağlı olarak bir sağlık sorunu riski doğmadığı belirlenmiştir. Nasıl herkesin boyu farklı farklıysa, tansiyonu da farklıdır. Nasıl, kısa birine ya da uzun birine “anormal” demek kolay değilse, normal tansiyonu tarif etmek de zordur. Üstelik yaşa ve kiloya göre de çok büyük değişiklikler gösterir. Yaş ve kilo arttıkça, genelde tansiyon daha yüksektir. Bu durumda, tıpkı boyda olduğu gibi, belli bir yaştakilerin ortalama tansiyonunun ne olduğuna bakılabilir. Ama son yıllarda, daha çok, tansiyonu kaç olanların, ne kadar sağlıklı olduğuna bakılmaya başlandı. Yani damar sertliği olanların tansiyonlarıyla, sağlam olanların tansiyonları karşılaştırılmaya başlandı. Sonuçta, tansiyon ne kadar artarsa, tansiyona bağlı hastalıkların ve ölümlerin o kadar arttığı görüldü. Önceleri büyük tansiyonu 165, küçük tansiyonu 95 mmHg ‘dan daha yüksek olanların tedavisinin gerektiği düşünülüyordu. Ama şimdi, bu sınırlar daha aşağı indirildi; 140 ve 90 olarak. Yani büyük tansiyonu 140 ve/veya küçük tansiyonu 90'ın üstündekilerin yüksek tansiyonu olduğu kabul ediliyor ve bunlara “HĐPERTANSĐYON HASTASI” deniyor. 39 Ama bazı tıp merkezleri ve bazı doktorlar, bu sınırların daha da aşağı çekilmesini istiyorlar. Şeker hastalığı ve böbrek hastalığı gibi damar sertliği için riskli hastalıkları olanlarda, bu sınırlar şimdiden aşağı çekildi. Bu tür riskli hastalıkları olanlarda tansiyonun 130/85'in altına inmesi isteniyor. Önlemeyi önemseyenler, bununla da yetinmiyorlar. Haklı olarak, tansiyon ne kadar düşükse, damar sertliği ve buna bağlı hastalıkların daha az görülmesi gerçeğine bakıp, tansiyonu normal sınırda gözükenlerin bile, tansiyonlarının daha da düşürülebilmesini tartışıyorlar. 3.3. Düşük Tansiyon Nedir? Tıp dilinde hipotansiyon olarak adlandırılan düşük tansiyon, belirli bir düzeye kadar sorun teşkil etmez. Tam tersine normalin biraz altında olması kalp-damar hastalıklarından uzak daha sağlıklı bir yaşam demektir. Düşük tansiyonun sorun olduğu durum, sistolik tansiyonun çok uzun süreler için 70 mm den düşük kalması halleridir. Böyle hallerde şok durumu söz konusudur. Düşük tansiyonun en sık rastlanan şekli ortostatik hipotansiyondur. Kişinin otururken normal düzeylerde olan tansiyonunun, ayağa kalkılınca düşmesi halidir. Bu durumda bir süre için beyne daha az kan gideceği için geçici olarak denge ve şuur bozuklukları ortaya çıkabilir. Sıvı kayıpları sırasında daha sık görülen bu durum sıvı açığının kapatılmasına rağmen devam ediyorsa veya yüksek tansiyon tedavisi altında olanlarda görülüyorsa bir doktora başvurmak gerekecektir. 3.4. Normal Tansiyon Değerlerinin Ölçümü Tıpta genel olarak herkesin bünyesinin farklı olduğu kabul edilir. Ama genel olarak normal kabul edilen sınırlar mevcuttur. Yapılan uzun araştırmalar sonucu, yaşın artışıyla küçük değişmeler olmakla beraber büyük tansiyon için 12 ile 14 arası, küçük tansiyon için 7 ile 9 arası olması halinde değerler normal sayılır. Nabız, milattan önceleri de bilinmekteydi buna karşılık, tansiyon kavramı yakın zamanlarda gelişmiştir. Kan dolaşımı konusunda ilk bilimsel yapıtı 1628'de Harvey 40 yayınladı. Ardından 1727'de Stephen Hales, tansiyonu ölçmek için ilk deneyini yaptı. Bu deney, U harfi şeklinde bir borucuğun atardamara yerleştirilip, borucuktaki kan düzeyinin gözlenmesi ile yapıldı. Bu iş için Hales bir at kullandı. Daha sonra bazı araştırmacılar aynı yolu değişik hayvanlarda, daha geliştirilmiş araçlar kullanarak uyguladı. Bu yüzyıl başında ise, damara girilmeden tansiyon ölçmeyi sağlayan dolaylı yollar geliştirildi. Bunlardan en yaygın olanı kola ya da bileğe takılan tansiyon aletleridir. 3.5. Tansiyon nasıl ölçülür? Tansiyon ölçmekte kullanılan değişik aletler bulunmaktadır. En doğru ölçüm, zaman içinde ayarlarının değişmesi gibi bir sorun olmadığı için, cıvalı aletlerle yapılırsa da bunların kullanımı pek pratik olmadığı için diğer türdeki aletler tercih edilmektedir. Tüm aletlerde prensip aynıdır. Kola sarılan ve içine hava gönderilerek basınç oluşturulan bir lastik torba (manşon), bu torbaya hava göndermek için kullanılan bir pompa ve lastik torbanın içindeki basıncı ölçen bir ölçü sistemi. Ayrıca damarda oluşacak nabız seslerini dinlemek için bir dinleme aleti (steteskop) da gereklidir. Tansiyonu ölçülecek kişinin dinlenmiş ve sakin durumda olması gerekmektedir. Hızlı bir yürüyüşün ardından tansiyon ölçülmesi için bir süre dinlenmek gerekir. Rahat bir koltukta otururken, tansiyon ölçülen kolun kalp hizasında olmasına dikkat edilmelidir. Böyle bir alet edindikten ve uygun ortamı sağladıktan sonra aletin manşon kısmı tansiyonu ölçülecek kişinin kolunun üst kısmına sarılır. Bu sırada, dirsek önü çukurunun tamamen açıkta kalmasına ve giysilerin kolu sıkmamasına dikkat etmek gerekir. Tansiyonu ölçülen kişi rahat bir şekilde ve kolu kalp hizasında olacak şekilde otururken, pompa ile basınç oluşturulmaya başlanılır. Aletin göstergesindeki rakam, kişinin daha önceden bilinen tansiyon değeri varsa bunun 20-30 mm üzerine, böyle bir bilgi yoksa 150-160 mm civarına kadar çıkartılır. Bu sırada dinleme aleti, dirsek önü çukurunun gövdeye yakın kısmına konulup, hafifçe bastırılarak (manşonun altına sıkıştırarak değil) nabız sesleri olup olmadığı dinlenir. Eğer sesler 41 varsa kayboluncaya kadar basıncı arttırmak gerekir. Basın kaybolduktan sonra aletin havası yavaşça indirilerek nabız sesleri tekrar başlayıncaya kadar takip edilir. Seslerin ilk duyulduğu sırada aletin göstergesinde okunan rakam sistolik tansiyonu gösterir. Sürekli dinlerken basınç azaltılmaya devam edilir. Seslerin artık duyulmamaya başladığı sırada göstergedeki rakam da diastolik tansiyonu gösterir. 3.6. Basınç Oranlarına Göre Tansiyon Değerleri Kan basıncı aniden yükselirse damarların çeperini yırtarak kanamaya neden olabilir. Kanama, burun gibi dışa açık bir organdaysa, sorun kan kaybı riskidir, beyin gibi kapalı ortamda oluştuğunda ise beyin dokusu damarın içinden çıkan kan kütlesi içinde sıkışıp kalıcı hasara uğrar. Bunun sonucu felçler ve hatta hayati tehlikeler meydana gelebilir. Tansiyonun aşırı yükselmesi hallerinde, bir diğer tehlike damarlardan sıvı sızması ile beyin ödeminin meydana gelmesidir. Yüksek tansiyonun kalıcı olması; felç, kalp krizi ve böbrek hastalığı gibi ciddi sorunlara sebep olabilir. Bu yüzden, yüksek tansiyonun sürekli olarak kontrol edilmesi gerekir. Yüksek tansiyon genellikle uyarıcı belirtiler göstermediğinden kan basıcının yüksek olduğunun anlaşılmasının en güvenli yolu düzenli olarak ölçüm yaptırmaktır. Yüksek tansiyonun tanımı, sistolik basıncın 160 mm cıva (veya üzerinde olması) ve diastolik basıncın 95 mm cıva''dan yüksek olmasıdır. Bu düzeyler arasındaki basınçlar ile normal değerler arasındaki değerler (140 mm cıvanın üzerinde olan bir sistolik basınç ve 90 mm cıvanın üzerinde olan bir diastolik basınç) "sınırda yüksek tansiyon" olarak kabul edilir. Başta dolgunluk hissi, başın arka tarafından ağrı, kulak çınlaması, görme bulanıklığı, bulantı gibi belirtiler bulunabilir veya hiçbir belirti de olmayabilir. 42 3.7. Stetoskop Đle Kan Basıncının Ölçüm Koşulları Kan basıncının ölçümünde kullanılan mekanik, cıvalı ve elektronik tipte aletler vardır. Kullanımları pratik olmakla birlikte bu aletleri kullanırken bazı noktalar dikkate etmek gerekir. Mesaneniz doluysa ya da kısa bir süre önce kahve veya sigara içmişseniz kan basıncınız yüksek çıkabilir. Kan basıncı ölçümünden önce 5 dakika sakin bir şekilde oturmak gerekir. Ölçüm sırasında kolunuz bir masa veya sandalyenin kolu üzerinde ve kalp hizasında olmalıdır. Sağ kolunu kullananlarda tansiyon sol koldan, sol kolunu kullananlarda ise sağ koldan ölçülmelidir. Aletin manşonu (şişen bölümü) üst kola takılır, manşonun alt kenarı dirsekten 2.5 cm kadar yukarıda olmalı ve kola iyi oturmalıdır. Aletle birlikte kullanılan ve nabız seslerini dinlemeye yarayan stetoskobun tamburu, kolun içyüzünde bükülmüş dirseğin üzerinde manşonun hemen altına yerleştirildikten sonra aletin manşonu şişirilir ve göstergeye bakılarak ibre hızlı olarak, beklenen sistolik basınç değerine 30 mmHg yukarısına kadar yükseltilir. Balonun ucundaki vida açılarak basınç saniyesi 2-3 mmHg düşecek şekilde yavaş yavaş söndürülür. Basınç düşerken nabız sesleri dinlenir ve seslerin ilk duyulduğu nokta sistolik basıncı, atımların son duyulduğu nokta ise diastolik basıncı gösterir. Ölçümü doğrulamak için bu işlem bir kez daha tekrarlanır. 3.8. Tansiyona Etkileri Tartışılan Diğer Etmenler Tansiyona etkisi en fazla tartışılan şeylerin başında bazı mineraller gelmektedir. Üstünde en çok durulanlar potasyum, kalsiyum ve magnezyumdur. Ama tuzdan yani sodyum mineralinden farklı olarak, bu minerallerin azaltılması değil, arttırılması tavsiye edilmektedir. Bunlardan potasyum, daha iyi bir tansiyon için, daha fazla alınması gerektiği konusunda, herkesin üstünde anlaştığı bir maddedir. Günde 3.5 gramın üstüne çıkılması önerilmektedir. Sodyum ne kadar düşük, potasyum ne kadar fazlaysa, tansiyon o kadar iyi olmaktadır. Gerçekten de, bir çalışmada, potasyum alımını yalnızca yarım gr kadar artırmanın, felç riskini %40 azalttığı gösterilmiştir. Ama, 43 bunu potasyumlu tuzlar alarak başarmak tavsiye edilmemektedir. Doğru olan şey potasyumdan zengin besinlerle bunu başarmaktır. Bunun içinse, bol sebze-meyve tavsiye edilmektedir. Özellikle, 100gr'daki potasyum açısından, kahve, kuru baklagiller, fındık, marul, maydanoz, ıspanak, patates, enginar, muz, havuç başta gelen besinler olarak sayılabilir. Kalsiyum için tavsiye edilen miktar günde 800-1200 mg, magnezyum için 280-350 mg'dır. Bu minerallerin en yoğun olduğu besinlerse süt ve süt ürünleridir. Ayrıca kalsiyum için pekmez, susam, fındık, fıstık, yeşil yapraklı sebzeler, kuru baklagiller ve kurutulmuş meyveler; magnezyum için ıspanak, kuru baklagil, ekmek, badem, fıstık sayılabilir. Daha az yağ ve daha çok lif tüketmenin, kilo vermenin ötesinde, tansiyona yarar sağladığı iddia edilmektedir. Gerçekten de, yalnızca bitkisel besinlerle beslenenlerde (vegan), her türlü besinle beslenenlere (omnivor) göre, - tuz tüketimleri anlamlı farklı olmasa bile- daha az tansiyon yüksekliği görüldüğü bildirilmiştir. Buna karşılık bir çalışmada günde 3,7 gr balık yağının yaşlılarda, hafif bir tansiyon düşmesi sağladığı yayımlanmıştır. Kimileri kahve gibi, kafeinli içecekleri de az tüketmeyi önermektedir. 3.9. Büyük Tansiyon, Küçük Tansiyon ve Ortalama Tansiyon Nedir? Doktorlar büyük tansiyona sistolik, küçük tansiyona ise diastolik tansiyon adını verirler. Bu şu anlama gelir. Örneğin bir kişinin tansiyonu 12/8 ise (doktorlar 120/80 olarak adlandırırlar), 12 büyük tansiyon, 8 ise küçük tansiyondur. Bu deyimler şu mekanizmalarla oluşurlar. Đnsanın kalbinin dakikada ortalama olarak 70 defa attığını kabul edersek, kalp kanı damarların içine 70 defa attığını gösterir. Đşte her bir atım sırasında kalbin içinde bulunduğu duruma sistol adı verilir. Hemen bu atımın ardından, kalp istirahat haline geçer, gevşer, kan kalbe dolmaya başlar. Đşte bu devreye diyastol adı verilir. Đşte bu sistol sırasında kalbin damarlara kan atması sistolik yani büyük tansiyonu, gevşeme anında damarların içinde bulunduğu durum ise küçük yani diastolik tansiyonu oluşturur. Đki tansiyon da önemlidir, ancak son zamanlarda büyük tansiyonun kalp ve damar hastalıklarının oluşmasında daha 44 önemli olduğuna dair görüşler çok artmıştır ve daha çok kabul görmektedir. Kan basıncının ortalama değeri, hücrelere verilen besin maddesi miktarını belirlediği için önemli bir büyüklüktür. Biz tansiyonu ölçerken büyük ve küçük tansiyonu ölçeriz. Şekil 3.9.’da arter basıncının zamanla değişimini, sistolik, diyastolik basınçları, ortalama basıncı yaklaşık ve tam veren bağıntılar gösterilmiştir. Şekil 3.9. Arter Basıncının Değişimi ve Ortalama Basıncı Veren Bağıntılar 3.10. Neden Tansiyonum Đnip Çıkıyor? Kan basıncı kalbin her atışında değiştiği gibi gün içinde de çeşitli dalgalanmalar gösterir, bu doğal dalgalanmaya etki eden dış sebepler vardır, bunlar: • Isı (çok sıcak veya çok soğuk) • Stres • Korku • Kabızlık • Nem • Kızgınlık • Huzursuzluk • Endişe • Kişiye ait fiziksel koşullar • Yiyecek ve Đçecek Tüketimi 45 3.11. Ölçüm Yöntemleri: Kan basıncının belirlenmesinde, a.Direkt (doğrudan ölçüm - "invasive") yöntemler, b.Đndirekt (dolaylı -"noninvasive") yöntemler kullanılmaktadır. 3.11.1. Direkt Yöntemler Bir kateter yardımıyla arter veya ven içerisinden basıncın ölçüleceği noktaya ulaşılır ve ölçüm yapılır. [3] Direkt yöntemde basınç ölçümü iki şekilde yapılabilir: Şekil 3.10. Sıstolik ve Diastolik Basman Erkeklerde Yaşa Göre Değişimi 46 Şekil 3.11. Sıstolik Ve Diastolik Basman Kadınlarda Yaşa Göre Değişimi Basınç dönüştürücüsü kateterin ucuna yerleştirilmiştir. Böylece basınç ölçülen noktada dönüşüm işlemi yapılır. Bu amaçla, çeşitli tipte minyatür dönüştürücüler kullanılabilir. Ölçüm yapılan yerdeki basınç, kateterin içerisine konmuş saline (damar yolu ile verilmek üzere hazırlanmış tuzlu eriyik) yardımıyla vücudun dışına taşınır ve dönüşüm işlemi vücudun ışında bir basınç dönüştürücüsü yardımıyla yapılır. Kullanımındaki kolaylık, ucuzluk ve uzun süre kullanılabilmesinin mümkün olması bakımından, bir önceki yönteme göre bu yöntem daha üstündür. Rezonans problemi ve basla için hayati tehlike oluşturabilecek hava kabarcığı oluşum riski ise bu yöntemin sakıncalarıdır. 3.11.2. Đndirekt Yöntemler Đndirekt yöntemlerde, kan basıncının Ölçülmesinde tıkayıcı (kapayıcı -"occlusive") düzenler kullanılır. Çok yaygın olarak kullanılan tıkayıcı düzen, kaf (kolluk - "cuff) adı verilen, içi hava ile doldurulabilen, lastik bir torbadır. Hastanın yaşına göre çeşitli boyutlarda yapılır. [3][4]. 47 Bu gruba giren beş yöntem vardır. Bu yöntemler, ölçebildiği arter basınç büyüklükleriyle birlikte Tablo 3.l' de verilmiştir. Metodun adı Sistolik Ortalama Diastolik Dokunma Evet Hayır Hayır Osilometrik Evet Evet Evet Dinleme Evet Hayır Evet Ultrasonik Evet Hayır Evet Flush Evet Hayır Hayır Tablo 3.1. Kan Basıncı Ölçümünde Kullanılan Đndirekt Yöntemler 3.11.2.1. Dokunma ("Palpatory") Yöntemi Şekil'de bu yöntem gösterilmiştir. Kolu saran kafin basıncı sistolik basıncın üzerine çıkarılır. Basıncın zamana bağlı olarak azalması sağlanır. Kafin aşağısında (bilek), parmakla arterden darbelerin hissedildiği basınç, sistolik basınç olarak belirlenir. Şekil 3.12. Dokunma Yöntemi 48 Şekil 3.13. Kaf Basıncındaki Osilasyonlar I Şekil 3.14. Kaf basıncındaki Osilasyonlar II 3.11.2.2. Osilometrik Yöntem Osilometrik yöntem şekilde gösterilmiştir. Sistolik basınç değerinin üzerine çıkarılan kaf basıncı azaltılırken, kaf basıncında osilasyonun başladığı değer sistolik basınç, osilasyonun maksimum olduğu değer ortalama basınç ve osilasyonun bittiği değer ise diyastolik basıncı verir. 49 Şekil 3.15. Osilometrik Yöntem Dinleme Yöntemi (Gedtjes, k. -21) Şekil 3.16. Dinleme Yönteminde Algılanan Sesin Değişimi 3.11.2.3. Dinleme (Oskültasyon - "Auscultatoıy") Yöntemi Oskültasyon, bir organda meydana gelen sesi dinleme demektir. Kaf yardımıyla, üzerinde basınç ölçümü yapılacak arter tıkanır, Şekil 3.16’da basınç yavaşça 50 azaltılırken, arter içerisinde kesikli akan kanın oluşturduğu ses dinlenir. Sesin başladığı ve bittiği basınç değerleri sistolik ve diastolik basınç değerleridir. Dinleme işlemi, kaftan sonra arter üzerinde bir steteskop yardımıyla gerçekleştirilir. Bu sesler, Rus doktoru Korotkoffun adına izafeten Korotkoff sesleri olarak isimlendirilmiştir. Algılanan ses genliğinin kaf basıncıyla değişimi, Şekil 3.16'da gösterilmiştir. 3.11.2.4. Flush Yöntemi Özerinde basınç ölçümü yapılacak, organ (kol, bacak) ucundan başlayarak band ile sıkıca sarılır ve böylece o bölge kansız bırakılır. Organın üst kısmına kaf bağlanır ve basınç sistolik basıncın üzerine çıkarılır. Band açılır ve kafin basıncı yavaşça azaltılır. Sistolik basınca ulaşılınca, kansız bölgeye kesikli olarak kan gelmeye başlar. Bu durum kansız organın renk değiştirmesi ve hastanın o bölgede bir sıcaklık duymasıyla belirlenir. 3.11.2.5. Ultrasonik Yöntem Ultrasonik yöntemle kan basıncı, hem manuel hem de otomatik olarak ölçülebilir. Şekil 3.16'da böyle bir sistem gösterilmiştir. Piezoelektrik kristaller hasta kolu ile kaf arasına yerleştirilmiştir. Damar duvarlarının, kaf basıncının sistolik ve diastoik basınca eşit olduğu anlarda, hareketli olması sonucu yansıyan ultrasonik dalganın frekansında, Doppler olayı nedeniyle kayma olur. Bu değişim, kan akışının başlaması anında 2.00-500 Hz, akışın kesilmesi anında ise 25-100 Hz kadardır. Bu frekans kaymasının detekte edildiği andaki basınç sistolik basınç ve frekans kaymasının bittiği andaki basınç, ise diyastolik basınçdır. Kaf basıncının değişimiyle ilgili ayrıntılar diğer yöntemlerin aynısıdır. 3.11.2.6. Otomatik Ölçüm Yöntemi Şekil 3.16'da ise otomatik ultrasonik kan basınç ölçüm düzeni gösterilmiştir. Sistemin çalışması elektronik kontrol sisteminden, kaf basıncını sağlayan pompayı çalıştıran bir işaretin gelmesiyle başlar. Bu basınç önceden belirlenen seviyeye çıkar, 51 ikinci kontrol işareti V1 , basınç azaltma vanasını açar. Kaf basıncı sistolik basınca eşit olduğunda Doppler kayması oluşur. Bu işaret kontrol sistemi tarafından algılanınca, V2 sistolik vanasını kapatan bir işaret vanaya ulaşır. Kaf basıncı diyastolik basınca ulaştığında ise kontrol sistemi, V3 vanasını kapatır. Son üretilen kontrol işareti V4 valftım • açılmasını sağlar ve kaf basıncı atmosfer basıncına düşer. Bu işlemler istenirse periyodik olarak tekrarlanabilir. Sistolik ve diyastolik manometreler üzerinde basınçlar okunur. Şekil 3.17. Ultrasonik Basınç Ölçüm Sistemi a) Dönüştürücünün Yerleşimi ve Blok Diyagram b) Zamanlama 52 Şekil 3.18. Ultrasonik Basınç Ölçüm Sisteminde Kullanılan Pnömatik Sistem 3.11.3. Ortalama Kan Basıncını Ölçen Otomatik Bir Sistem Ameliyat sırasında anestezistler, hastanın dolaşım sisteminde bir anormallik olup olmadığını anlamak için sürekli olarak ortalama kan basıncım gözlemek zorundadır. Bu basıncın normalden düşük olması, anestezi seviyesinin yüksek olmasını veya bir kanamayı göstermektedir. Bu amaçla geliştirilen bir mikroişlemcili düzenin çalışması, osilometrik yönteme dayanmaktadır. Şekil 3.19'da görüldüğü gibi, kaf basıncında maksimum osilasyon, kaf basıncının ortalama kan basıcına eşit olması durumunda oluşur. Şekil 3.20’de ve Şekil 3.21'de gösterilen sistemde, kaf basıncının taban değeri ve osilasyonların genliği mikroişlemciyle örneklenir. Mikroişlemci aynı zamanda kaf basıncım kontrol eder, istenilen lojik kararlan verir ve sonuçların görüntülenmesini sağlar. [3][4][5] 53 Şekil 3.19. a) Arter Basıncı Değişimi ve b) Kaf Basıncındaki Osilasyon Şekil 3.20 Osilometrik Ölçüm Yöntemine Göre Basınç Değerleri 54 Şekil 3.21. Ortalama Kan Basıncının Otomatik Olarak Ölçen Mikroişlemcili Bir Sistem 55 4. BÖLÜM CC1020 NORROW BANDLI UYGULAMLAR ĐÇĐN DÜŞÜK GÜÇLÜ RF TRANCEIVER [6] 4.1. Uygulamaları • 12.5 ve 25 KHz’den daha fazla kanal boşluğu ile düşük güçte kablosuz UHF veri alma ve verme • 402 / 424 / 426 / 429 / 433 / 447 / 449 / 469 / 868 ve 915 MHz ISM/SRD band sistemleri 4.2. • AMR (Antenin giriş gücünün ölçülmesi) • Kablosuz alarm ve güvenlik sistemleri • Ev otomasyonu • Düşük güçlü telemetri Ürün Özellikleri CC1020 düşük gerilim ve düşük güç gerektiren kablosuz uygulamalar için tasarlanmıştır. CC1020 daha çok ISM için ve SRD frekansları (402 / 424 / 426 / 429 / 433 / 447 / 449 / 469 / 868 ve 915) için tasarlanmıştır. Sistem aynı zamanda diğer frekanslarda ,402 - 470 ve 804 - 940 MHz, kolayca çoklu kanal uygulamaları için programlanabilir. CC1020 temel uygulama parametreleri seri port üzerinden programlanabilir ve bu CC1020’yi esnek ve kullanılmasını kolaylaştırır. Temel özellikler içeren sistemlerde CC1020 microdenetleyicilerle çok az dış pasif elemanlar eklenilerek kullanılır. CC1020, Chipcon® firmasının ürettiği bir eleman olup, SmartRF® – 02 teknolojisi, 0.35µm CMOS, ile üretilmiştir. 4.3. 4.4. Teknik Özellikler • True Single Chip UHF RF transceiver • Frekans aralığı 402 - 470 ve 804 - 940 MHz • Yüksek hassasiyet (12.5kHz kanalı için -118dBm’daha fazla) • Programlanabilir çıkış gücü • Düşük akım tüketimi (RX: 19.9mA) • Düşük gerilim beslemesi (2.3V ile 3.6V) • Ek olarak IF filtre gerektirmez • Çok az ek eleman gereksinimi • Küçük ölçüler(QFN 32 paketi) • Pb-free paketi • Sayısal RSSI ve taşıyıcı sense indikatörü • Veri oranı 153.6 kBaud • OOK, FSK ve GFSK veri modülasyonu • Entegre edilmiş bit eş zamanlayıcısı • Image Rejection Mixer • Programlanabilir frekans • Frekans atlaması yönteminin uygulanması için uygundur CC1020 Đçin, Çalışma Değer Aralıkları Tablo 4.1. de verilen değerlerin değişmesi durumunda malzemede kalıcı hasarların olmasına yol açabilir. PARAMETRE Besleme gerilimi, VDD Herhangi bir pindeki gerilim Giriş RF seviyesi Saklama sıcaklığı Paket sıcaklığı Nem ESD(Đnsan Vücudu Modeli) Min -0.3 Max 5.0 Birim V -0.3 VDD+0.3, max 5.0 10 150 260 85 ±1 ±0.4 V -50 5 Durum Bütün besleme uçları bu şekilde beslenmelidir. dBm ºC ºC % kV kV Tablo 4.1. Kesim Maksimum Oranlar 57 4.5. Çalışma Koşulları Çalışma koşulları Tablo 4.2. ‘de verilmiştir. Parametre RF frekans sıralaması Çalışma sıcaklıkları Min 402 804 -40 Typ Max 470 940 85 Birim MHz MHz ºC Durum <300 Hz adımlarla programlanabilir Besleme gerilimi 2.3 3.0 3.6 V Aynı besleme gerilimleri hem sayısal hem analog güçler için kullanılabilinir. 3.0 ±0.1V besleme gerilimleri kullanılabilir. Tablo 4.2. Çalışma Koşulları 4.6. Elektriksel Değerler Tablo 4.3. ve Tablo 4.4.’te verilen elektriksel veriler çift katlı PCB CC1020EM’e göre hesaplanarak verilmiştir. Test işlemleri, sıcaklık = 25ºC, besleme gerilimi = AVDD = DVDD = 3.0V olarak yapılmıştır. Kristal frekans = 14.7456MHz’dir. Elektriksel değerler 868MHz olarak verilmiştir ancak 902 – 928 MHz frekans aralıkları içinde aynı değerleri vermiştir. 4.7. RF Verici Katı Parametreleri Parametre Đletilen veri oranı Min 0.45 Typ Max 153.6 58 Birim kBaud Durum Veri oranı programlanabilir. NRZ veya Manchester encoding kullanılabilir. 153.6kBaud NRZ kodlamada 153.6kbps’e, Manchester 76.8kbps’e eşittir. BFSK frekans yayılımı Çıkış gücü 0 0 433 MHz 868 MHz 108 216 kHz kHz -20’den +10 -20’den +5 dBm dBm 12.5 kHz kanal boşluğu, 433 MHz -46 dBc 25 kHz kanal boşluğu, 433 MHz -52 dBc 25 kHz kanal boşluğu, 868 MHz -49 dBc 433 MHz 54 + j44 Ω 868 MHz 15 + j24 Ω 915 MHz 20 + j35 Ω 402 – 470 MHz arası 804 – 940 MHz arası Đletim 50Ω ile sonlandırılmıştır. Çıkış gücü programlanabilirdir. Bitişik kanal gücü(GFSK) Optimum yük empedansı Tablo 4.3. RF Verici Katı Parametreleri 4.8. RF Alıcı Katı Parametreleri Parametre Alıcı hassasiyeti, 433 MHz, FSK Min Typ Max Birim 12.5 kHz kanal boşluğu -114 dBm 25 kHz kanal boşluğu -112 dBm -116 -81 dBm dBm Durum Hassasiyet PN9 sırası ile BER = 103 12.5 kHz kanal boşluğu: 2.4 kBaud, Manchester kodlama ile 25 kHz kanal boşluğu:4.8kBaud, NRZ kodlama ile Alıcı hassasiyeti, 433MHz, OOK 2.4 kBaud 59 Manchester 153.6kBaud kodlama Alıcı hassasiyeti, 868MHz, OOK -107 -87 dBm dBm 4.8 kBaud 153.6 kBaud Giriş empedansı Manchester kodlama 433 MHz 39 – j14 Ω 868 MHz Ω 32 – j10 Tablo 4.4. RF Alıcı Katı Parametreleri 4.9. Frekans Sentezleme Parametreleri Parametre PLL döngü bandgenişliği 12.5 kHz kanal boşluğu, 433 MHz Min Typ Max Birim Durum 2.7 kHz 8.3 kHz 900 us 640 us 14 us 3.2 ms 2.5 ms 700 us 25 kHz kanal boşluğu, 868 MHz PLL kitleme zamanı 12.5 kHz kanal boşluğu, 433 MHz 25 kHz kanal boşluğu, 868 MHz 500 kHz kanal boşluğu PLL açılış zamanı 12.5 kHz kanal boşluğu, 433 MHz 25 kHz kanal boşluğu, 868 MHz 500 kHz kanal boşluğu Tablo 4.5. Frekans Sentezleme Parametreleri 60 PLL ve VCO kalibrasyonundan sonra. PLL döngü band genişliği programlanabilirdir. 307.5 kHz frekans adımı ±%10 luk adımlarla RF frekansına geçebilir. Bu geçiş işlemi PLL_BW saklayıcısına ve döngü filtre elemanlarına bağlıdır. Saklayıcılarına kanal boşluğunun RF frekansını yazma arasında geçen süre. 4.10. Sayısal GĐRĐŞ/ÇIKIŞ Parametre Logic <<0>> giriş gerilimi Min 0 Typ Max Birim 0.3 V VDD Logic <<1>> giriş gerilimi 0.7 VDD VDD V Logic <<0>> çıkış gerilimi 0 0.4 Logic <<1>> çıkış gerilimi 2.5 VDD V Logic “0” giriş akımı NA -1 µA Logic “1” giriş akımı NA 1 µA V Tablo 4.6. Sayısal Giriş/Çıkış 61 Durum Çıkış akımı -2.0mA, 3.0 V besleme gerilimi Çıkış akımı 2.0mA, 3.0 V besleme gerilimi Giriş işareti GND’ye eşittir. Giriş işareti VDD’ye eşittir. 4.11. Pin Dağılımı Şekil 4.1. CC1020 Pin Numaraları(Üstten Görünüş) Pin no.. Pin Đsmi Pin Tipi Açıklama - AGND Ground(analog) 1 PCLK Sayısal Giriş 2 PDI Sayısal Giriş 3 PDO Sayısal Çıkış 4 DGND Ground(sayısal) 5 DVDD Güç(Sayısal) 6 DGND Ground(sayısal) 7 DCLK Sayısal Çıkış 8 DIO Sayısal Giriş/Çıkış 9 LOCK Sayısal Çıkış 62 Bu pin bütün analog modüllerinin ground bağlantısıdır ve katı yüzeye lehinlenmelidir. SPI konfigürasyon ara yüzü için programlama saati SPI konfigürasyon ara yüzü için programlama veri girişi SPI konfigürasyon ara yüzü için programlama veri çıkışı Sayısal modüller ve sayısal I/O için toprak (0) bağlantısı Sayısal modüller ve sayısal I/O için besleme (3V) Sayısal modüller için toprak(0) bağlantısı Alıcı ve verici modları için veri saati. Asenkron modda alıcı veri çıkışı olarak kullanılır. Verici katta veri girişi; veri çıkışı alıcı moda. PLL Lock Indikatörü, aktif low. PLL 10 11 12 13 14 XOSC_Q1 XOSC_Q2 AVDD AVDD LNA_EN Analog Giriş Analog Çıkış Güç(Analog) Güç(Analog) Sayısal Çıkış 15 PA_EN Sayısal Çıkış 16 AVDD Güç(Analog) 17 R_BIAS Analog Çıkış 18 AVDD Güç(Analog) 19 20 21 22 RF_IN AVDD RF_IN AVDD RF Giriş Güç(Analog) RF Çıkış Güç(Analog) 23 24 AVDD VC Güç(Analog) Analog Çıkış 25 AGND Ground(Analog) 26 27 AD_REF AVDD Güç(Analog) Güç(Analog) 28 CHP_OUT Analog Çıkış 29 30 AVDD DGND Güç(Analog) Ground(Sayısal) 31 32 DVDD PSEL Güç(Sayısal) Sayısal Çıkış Lock modunda olduğu zaman çıkış pasif low. Pin genel sayısal çıkış olarak yada senkron NRZ/Manchester modda alıcı veri çıkışı olarak ta kullanılabilir. Kristal osilatör yada harici saat girişi Kristal osilatör Kristal osilatör için besleme 3 V IF VGA için besleme 3 V Genel sayısal çıkış. Yüksek hassasiyet gerekirse harici LNA’yı kontrol etmede de kullanılır. Genel sayısal çıkış. Yüksek çıkış gücü gerekirse harici PA’yı kontrol etmede de kullanılır. Global bias üreteç ve IF filtresi için 3 V besleme gerilimi Harici hassas bias direncine bağlantısı(82 kΩ, ±1%) LNA giriş basamağı için besleme gerilimi 3 V Antenden gelen RF işaret girişi LNA için besleme 3 V Antene RF işaret çıkışı LO tampon, karıştırıcı, ön bölücü ve ilk PA bölümü için besleme 3 V VCO için besleme 3 V Harici döngü filtresinden gelen VCO kontrol gerilim girişi Analog modüller için toprak bağlantısı 0 V ADC için 3 V referans gerilim girişi Faz dedektörü ve charge pump için besleme 3 V Harici döngü filtresine PLL charge pump çıkışı ADC için besleme 3 V Sayısal modüller için toprak bağlantısı 0 V Sayısal modüller için 3 V luk besleme Konfigürasyon ara yüzü için, programlama entegresi seçimi, active low. dahili pull-up direnci. Tablo 4.7. CC1020 PIN Dağılımı NOT: 63 DCLK, DIO ve LOCK power down durumunda(BIAS_PD = 1 temel saklayıcıda) yüksek empedansa(3 basamak) sahiptirler. 4.12. Devre Yapısı Şekil 4.2. CC1020’nin Blok Şeması Şekil 4.2.’de basit olarak CC1020’nin blok diyagramı verilmiştir. Şekilde sadece işaret pinleri gösterilmiştir. CC1020’nin özellikleri düşük-IF alıcısıdır. Alıcı RF işareti düşük gürültü yükselteci tarafından(LNA ve LNA2) yükseltilir ve IF frekansına dörtlü(I/Q) olarak downconverted yapılır. IF frekansında, I/Q işareti karmaşık olarak filtre edilir, yükseltilir ve ADCs tarafından sayısala çevrilir.otomatik kazanç denetleyicisi, bir senkronizasyonunu, demodülasyonu ve hassas kanal filtrelemesini sayısal olarak yapar. CC1020 sayısal olarak demodüle edilmiş verileri DIO pini üzerinden çıkış olarak verir. Senkronize edilmiş veri saati, DCLK pininde elde edilebilir hale getirilir. RSSI sayısal formatta elde edilebilir ve seri porttan okunabilir. RSSI, programlanabilir taşıyıcı indikatöre de ağırlık verir. 64 Đletim modunda, sentezlenmiş RF frekansında doğrudan güç yükselteci tarafından (PA) beslenir. RF çıkışı, DIO pininden beslenen sayısal bit akışı tarafından frekans kaydırmalı anahtarlamadır (FSK). Đsteğe bağlı olarak Gaussian filtresi, Gaussian FSK(GFSK)’yi elde etmek için kullanılır. Frekans sentezleyicisi, eksiksiz on-chip LC VCO’yu içerir ve alıcı modda downconverter karıştırıcıları için LO_I ve LO_Q işaretlerinin üretimi için 90 derece faz bölücü içerir. VCO, 1.608 – 1.880 GHz frekansları arasında çalışır. CHP_OUT pini ve VC on-chip VCO’nun kontrol düğümüdür. Harici döngü filtresi bu pinler arasındadır. Kristal XOSC_Q1 ve XOSC_Q2 arasına bağlanmalıdır. Kilitleme işareti, PLL’den elde edilebilir. 4 telli SPI seri ara yüzü konfigürasyon için kullanılır. 4.13. Uygulama Devresi CC1020’nin çalıştırılması için çok az harici elemana gereksinim vardır. Şekil 3’te uygulama devresi verilmiştir. Harici devre elemanları ise Tablo 8-9’da verilmiştir. 4.14. Giriş / Çıkış Karşılaştırması L1 ve C1, alıcı için giriş karşılaştırması yapar. L2 ve C3 verici katını 50Ω’a karşılaştırmak için kullanılır. Đçsel devre, giriş ve çıkışı TX ve RX moddayken CC1020’yi, 50Ω’a eşitlemek için kullanılır. C4 ve C5 kristal için kullanılan kapasitörlerdir. R2 ve R3, PLL döngü filtresi için kullanılır. C6, C7 ve C8 yine aynı şekilde PLL için kullanılır. Ancak yüksek döngü band genişliği istenildiği yerde C7 ve C8 kullanılmaya bilir. Ref C1 C3 C4 C5 C6 Açıklama LNA giriş karşılaştırması ve DC bloğu PA çıkış karşılaştırması ve DC bloğu Kristal yük kapasitörü Kristal yük kapasitörü PLL döngü filtresi kapasitörü 65 C7 C8 C60 L1 L2 R1 R2 R3 R10 XTAL PLL döngü filtresi kapasitörü(Đstenirse kullanılmayabilinir.) PLL döngü filtresi kapasitörü(Đstenirse kullanılmayabilinir.) Decoupling kapasitörü LNA karşılaştırma ve DC bias PA karşılaştırma ve DC bias Akım referans üreteci için doğruluk direnci PLL döngü filtresi direnci PLL döngü filtresi direnci PA çıkış karşılaştırması Kristal Tablo 4.8. Harici Elemanlar Şekil 4.3. Uygulama Devresi Ref C1 C3 C4 C5 C6 C7 C8 433 MHz 10 pF, 5%, NP0, 0402 5.6 pF, 5%, NP0, 0402 22 pF, 5%, NP0, 0402 12 pF, 5%, NP0, 0402 220 nF, 10%, X7R, 0603 8.2 nF, 10%, X7R, 0402 2.2 nF, 10%, X7R, 0402 868 MHz 47 pF, 5%, NP0, 0402 10 pF, 5%, NP0, 0402 22 pF, 5%, NP0, 0402 12 pF, 5%, NP0, 0402 100 nF, 10%, X7R, 0603 3.9 nF, 10%, X7R, 0402 1.0 nF, 10%, X7R, 0402 66 915MHz 47 pF, 5%, NP0, 0402 10 pF, 5%, NP0, 0402 22 pF, 5%, NP0, 0402 12 pF, 5%, NP0, 0402 100 nF, 10%, X7R, 0603 3.9 nF, 10%, X7R, 0402 1.0 nF, 10%, X7R, 0402 C60 L1 L2 R1 R2 R3 R10 XTAL 220 pF, 5%, NP0, 0402 33 nH, 5%, 0402 22 nH, 5%, 0402 82 kΩ, 1%, 0402 1.5 kΩ, 5%, 0402 4.7 kΩ, 5%, 0402 82 Ω, 5%, 0402 14.7456 MHz crystal, 16 pF load 220 pF, 5%, NP0, 0402 82 nH, 5%, 0402 3.6 nH, 5%, 0402 82 kΩ, 1%, 0402 2.2 kΩ, 5%, 0402 6.8 kΩ, 5%, 0402 82 Ω, 5%, 0402 14.7456 MHz crystal, 16 pF load 220 pF, 5%, NP0, 0402 82 nH, 5%, 0402 3.6 nH, 5%, 0402 82 kΩ, 1%, 0402 2.2 kΩ, 5%, 0402 6.8 kΩ, 5%, 0402 82 Ω, 5%, 0402 14.7456 MHz crystal, 16 pF load Tablo 4.9. Uygulama Devresi Đçin Kullanılacak Malzemelerin Değerleri 4.15. Konfigürasyon CC1020 uygulamalara göre bir çok şekilde programlanabilir. Uygulamada kullanılan parametreler aşağıda verilmiştir. • Alıcı-verici modu • RF çıkış gücü • Frekans sentezleyici anahtar parametreler: RF çıkış frekansı, FSK frekans • ağılımı, kristal osilatör referans frekansı • Power-down, power-up modu • Kristal osilatör power-down, power-up modu • Veri oranı ve veri formatı (NRZ, Manchester kodu veya UART ara yüzü) • Sentezleyici lock indikatör modu • Sayısal RSSI ve taşıyıcısı • FSK / GFSK / OOK modülasyonu 4.16. Konfigürasyon Yazılımı Chipcon firması CC1020 kullanıcıları için SmartRF® Studio adlı bir program üretmiştir. Biz de uygulamamızda bu programı kullandık. CC1020’nin konfigüre edilmesi için mikroişlemciye gerekli giriş bu 16’lık sayı düzeninde (heksadesimal) numaralar ile verilir. Buna ilaveten program giriş/çıkış karşılaştırma devresi, PLL 67 döngü filtresi ve LC filtrenin ihtiyaca göre elemanları değiştirilebilir. Şekil 4 ve 5’te bu programın Windows® arayüzüne nasıl erişileceği adımlarla verilmiştir. Şekil 4.4. SmartRF® Studio Kullanıcı Ara Yüzü 68 Şekil 4.5. SmartRF® Studio Kullanıcı Ara yüzü 4.17. Mikroişlemci Ara Yüzü CC1020’nin mikroişlemcilerle ara yüzü vardır. Şekil 6’da bu bağlantı gösterilmiştir. • CC1020, 4 telli seri konfigürasyon ara yüzü (PDI, PDO, PCLK ve PSEL) ile mikroişlemci ile haberleşmesini sağlar. • Arayüz, iyi yönlü eşzamanlı veri işaret ara yüzüne (DIO ve DCLK) sahiptir. • Đsteğe bağlı olarak, mikroişlemci veri kodlamasını ya da kod çözümünü gerçekleştirebilir. 69 • Đsteğe bağlı olarak, mikroişlemci frekans lock durumunu, taşıyıcı sense durumunu yada diğer durumları LOCK pin ile gösterebilir. • Đsteğe bağlı olarak, mikroişlemci sayısal RSSI değerlerini ve diğer 4 telli seri ara yüzün verilerini okuyabilir. Şekil 4.6. Mikroişlemci Ara Yüzü Mikroişlemci 3 ve 4 numaralı giriş-çıkış pinlerini konfigürasyon ara yüzü için kullanır(PDI, PDO, PCLK ve PSEL). PDO mikroişlemcinin girişine bağlanmalıdır. PDI, PCLK ve PSEL mikroişlemcinin çıkışına bağlanmalıdır. PDI ve PDO pinleri eğer mikroişlemcinin çıkışına bağlanırsa, işlemci bu çıkışlardan sadece birini girişçıkış pini olarak ele alır. PDO, PDI ve PCLK uçlarına bağlanmış mikroişlemci pinleri, konfigürasyon ara yüzü için kullanılmamışsa diğer uygulamalar için de kullanılabilir. PDI, PDO ve PCLK uçları, PSEL ucu aktif edilmedikçe, yüksek empedans değerine sahiptir. 4.18. Đşaret Ara Yüzü Çift yönlü pin veri iletimi ve veri alımı için kullanılır. DCLK, mikroişlemcinin girişine bağlanmış veri zamanlamasını sağlar. Alıcı modunda veri çıkışı, ayrık pin sayesinde elde edilebilir. 70 4.19. PLL Kitleme Đşareti Đsteğe bağlı olarak, bir mikroişlemci pini kitleme işaretini göstermek için kullanılır. Bu işaret, PLL kilitli olduğu zaman, lojik olarak low seviyededir. Diğer bir kullanım yeri de, diğer içsel test işaretlerini göstermede kullanılır. 4.20. 4 Telli Seri Konfigürasyon Ara Yüzü CC1020 slave modda iken, entegre 4 telli SPI ara yüzü ile (SPI PDI, PDO, PCLK ve PSEL) konfigüre edilebilir. 8 bit konfigüre edilebilir saklayıcı vardır ve bu saklayıcıların her birinin 7 bitlik bir adresi vardır. CC1020’yi tamamen konfigüre edebilmek için, 33 veri çerçeve gönderilmelidir ve bu her bir çerçeve içerisinde 16 bittir(7 adres biti, 8 veri biti ve R/W biti). PCLK frekansına, bütün konfigürasyonu gerçekleştirmek için ihtiyaç vardır ve zamanlama değeri bundan alınır. PCLK frekansı sayesinde 10MHz’lik bir işaret alınır ve konfigürasyonun tamamı 53µs’den daha az bir zamanda sonlandırılır. Bütün saklayıcılar okunabilirdir. Her bir yazma döngüsü boyunca, PDI hat üzerinden 16 bit gönderilir. Her bir veri çerçeve için yedisi en anlamlı bitlerdir ve bu bitler adres bitleridir(A6:0). A6 adresin en anlamlı bitidir(MSB) ve e bu ilk bit olarak gönderilir. Bir sonraki bit ise R/W bitidir(yazma için high, okuma için low). 8 veri biti bu R/W bitinden sonra iletilir(D7:0). Adres ve veri iletimi süresince PSEL(Program Select) low tutulmalıdır. Programlama için zamanlama değerleri Şekil 18, Şekil 19 ve Tablo 9’da gösterilmiştir. 71 Şekil 4.7. Yazma Đşlemi Esnasında Saklayıcıların Konfigürasyonu Şekil 4.8. Okuma Đşlemi Esnasında Registerların Konfigürasyonu PDI’in veri saati (clock) işlemi, PCLK’nın artan kenarında yapılır. Veri PCLK’nın düşen kenarında set up edilir. 8 veri bitinin ,D0, en son biti yüklendiği zaman veri kelimesi (wordü) içsel konfigürasyon saklayıcılarına yüklenmiş olur. Konfigürasyon verisi power-down modunda programlama esnasında tutulur ancak power down modu kapatıldığı zaman tutulmaz. Saklayıcılar her hangi bir sıra ile programlanabilir. 72 Konfigürasyon saklayıcıları, aynı konfigürasyon ara yüzü üzerinden mikroişlemci tarafından okunabilir. 7 adres adres biti ilk olarak gönderilir ve daha sonra R/W biti, veri read-back işleminin başlatılması için low konumuna alınır. CC1020, adreslenmiş saklayıcıdan veriye döner. PDO, veri çıkışı gibi kullanılır ve mikroişlemci tarafından mutlaka giriş olarak konfigüre edilmelidir. PDO, PCLK’nın düşen kenarında set edilir ve artan kenarında örneklenmelidir. PSEL, her R/W işlemi esnasında high konumuna getirilmelidir. Parametre PCLK, clock frekansı Sembol FPCLK Min PCLK low Darbe Süresi TCL, min PCLK high Darbe Süresi Max 10 Birim MHz Açıklama 50 ns PCLK minimum zamanı low olmalı TCH, min 50 ns PCLK minimum zamanı high olmalı PSEL set up Zamanı TSS 25 ns PSEL hold Zamanı THS 25 ns PSEL high Zamanı TSH 50 ns PCLK’nın yükselen kenarından önce PSEL minimum zamanı low olmalı PCLK’nın düşen kenarından sonra PSEL minimum zamanı hold olmalı PSEL minimum zamanı high olmalı PDI set up Zamanı TSD 25 ns PDI hold Zamanı THD 25 ns Yükselme Zamanı Trise 100 ns Düşme Zamanı Tfall 100 ns PCLK’nın yükselen kenarından önce PDI’daki minimum veri zamanı hazır olmalı PCLK’nın yükselen kenarından sonra minimum veri zamanı PDI’da hazır olmalı PCLK ve PSEL için maksimum yükselme zamanı PCLK ve PSEL için maksimum düşüm zamanı Tablo 4.10. Seri Ara Yüz, Zamanlama Açıklamaları 73 4.21. Đşaret Ara Yüzü CC1020, NRZ ve Manchester Kodlama teknikleri ile kullanılabilir. CC1020 veriyi, demodülatörden senkronize eder ve veri clock unu ise DCLK’den sağlar. Veri formatı MODEM saklayıcısındaki DATA_FORMAT[1:0] bitlerinden kontrol edilir. CC1020 3 farklı veri formatı şeklinde konfigüre edilebilir. 4.22. Senkronlu NRZ Ara Yüzü Đletim modunda, CC1020 veri saat(clock) unu veri girişi olarak kullanılan DCLK ve DIO’ dan sağlar. Veri DCLK’nın yükselen kenarında, CC1020’ye saati tutulur. Veri RF’te kodlama olmadan modüle edilir. Alıcı modda CC1020 senkronizasyonu yerine getirir ve DCLK’ deki alıcı veri saatini ve DIO’daki veriyi sağlar. Veri bu modda, DCLK’nın yükselen kenarında ara yüz devresine saat tutulmalıdır. Şekil 20’da bu iletim şekilleri gösterilmiştir. Şekil 4.9. Senkronlu NRZ Modu(SEP_DI_DO = 0) 74 4.23. Senkronlu Manchester Kodlama Modu Đletim modunda CC1020 veri girişi olarak kullanılan DCLK ve DIO tarafından veri saatini sağlar. Veri, DCLK’nın yükselen kenarında saat tutulmalıdır ve veri NRZ formatında olmalıdır. Veri, RF’te Manchester kodu ile modüle edilir. Kodlama işlemi CC1020 tarafından yapılır. Bu modda efektif bit oranı, kodlamaya bağlı olarak baud oranın yarısıdır. Örneğin, 4.8 kBaud olan Manchester kodlama 2.4kbp’e eşittir. Alıcı modda CC1020 senkronizasyonu sağlar ve DCLK’ deki alıcı veri saatini ve DIO’daki veriyi sağlar. CC1020 kod çözme işini yapar ve NRZ veri DIO’da verilir. Veri bu modda, DCLK’nın yükselen kenarında ara yüz devresine saat tutulmalıdır. Şekil 21 ve 22’de iletim şekilleri gösterilmiştir. Şekil 4.10. Senkronlu NRZ Modu (SEP_DI_DO = 0) 75 Şekil 4.11. Manchester Kodlama 4.24. Asenkron UART Modu Đletim modunda DIO, veri girişi olarak kullanılır. Veri, RF’te senkronizasyon ve kodlama olmadan modüle edilir. Alıcı modda, demodülatörden gelen işlenmemiş işaret çıkışa aktarılır(DIO). CC1020’de işaretin senkronizasyonu ve kodlaması yapılmaz ve bu işlem ara yüz devresinde yapılır. Arayüz saklayıcısında SEP_DI_DO = 0 olursa, DIO pini, alıcı modda veri çıkışıdır ve iletim modunda ise veri girişidir. DCLK pini aktif değildir ve DATA_FORMAT[0] tarafından low veya high seviyesine çekilebilir. Arayüz saklayıcısında SEP_DI_DO = 1 olursa, DCLK pini alıcı modda veri çıkışı ve iletim modunda DIO pini veri girişi olur. TX modunda, DCLK pini aktif değildir ve DATA_FORMAT[0] tarafından high ve low seviyelerine ayarlanabilir. 76 4.25. CC1020’nin PCB Bacakları Şekil 4.12. PCB Bacakları Şekil 4.13. CC1020 Uygulama Devresinin Üst Kısmı Şekil 4.14. CC1020 Uygulama Devresinin Malzeme Yerleşimi Şekil 4.15. CC1020 Uygulama Devresinin Alt Kısmı 78 5. BÖLÜM: MSP430F169 TEXAS INSTRUMENTS [7] 5.1. Tanımı Texas Instruments’ın ürettiği ultra düşük güçlü microdenetleyicisi MSP430 ailesi, özellikle düşük güç uygulamaları için tasarlanmıştır. Düşük güç tüketimi 5 farklı güç modu ile ayarlanır. Güçlü 16 bit RISC CPU mimarisi, 16 bit saklayıcıları ile maksimum verimlilik hedeflenmiştir. Dijital olarak kontrol edilen osilatörü (DCO) sayesinde düşük güç modlarından aktif moda 6 µs ‘den daha az sürede uyandırmaya izin verir. Bu “hızlı uyanış” düşük güç tüketiminin temel mantığını oluşturur. • 2 tane16 bit sayıcı, • Hızlı 12 bit a/d dönüştürücü, • Çift 12 bit d/a dönüştürücü • 2 tane UART, SPI, I2C arayüzeyleri • DMA ve I/O MSP430/16x serileri halinde ailere sahiptir. Tipik uygulamaları ise; • Sensör Sistemleri, • Endüstriyel Kontrol Uygulamaları, • Mobil Aletleri Đçermektedir. MSP430 serisi çeşitli uygulamalara yönelik farklı modüller içeren ultra düşük güçlü bir mikrodenetleyici ailesidir. Düşük güç tüketimi sayesinde temelde pilli uygulamalar için tavsiye edilen bir çözümdür. • MSP430 16-bit RISC Mimarisi, • 16-bit CPU tümleşik saklayıcı ve sabit üreteç ile maksimum kod verimi elde edilmektedir, • Sayısal kontrollü osilatör 6 µs’den daha kısa sürede stabil çalışmaya başlayabilmektedir, • MSP430x16x serileri iki tümleşik 16 bit zamanlayıcı, • 12-bit A/D çevirici, • 12-bit D/A çevirici, • 2 seri haberleşme ara yüzü(USART) • DMA ve 48 I/O pine sahiptir. Analog sinyalleri yakalayan algılayıcı sistemleri içeren tipik uygulamalarda sayısal değerlere dönüştürülüp işlem yapılır ve veri ana sisteme iletilir. Zamanlayıcılar, sayısal motor kontrolü, taşınabilir sayaçlar, optik networklerin kontrolü gibi endüstriyel uygulamalar hep aynı temel mantık vardır. Analog bilgi alınır, sayısala dönüştürülür gerekirse işlenir ve iletilir. Şekil 5.1. MSP430F169 Microişlemcisi Geliştirme Board’u 80 5.2. Özellikleri • Düşük besleme voltajı aralığı 1,8V … 3,6V, • Aşırı düşük güç tüketimi; o Aktif mod=1,1 µA 1 MHZ’ de 2,2V’da o Hazır Bekleme modu o Kapalı modu (RAM saklama) =0,2 µA • 6 µs ‘den daha az zamanda Stand-by modundan uyanma, • 16 bit RĐSC yapısı ,125 ns komut çevrim zamanı, • 3 kanal dahili DMA, • 12 bit A/D dönüştürücü dahili referans ile model ve tutma ve autoscan özelliği, • Çift 12 bit DA senkronizasyonlu dönüştürücü, • 3 tutma karşılaştırma saklayıcıları ile 16 bit zamanlama, • 3 ve 7 karşılaştırma saklayıcıları ile zamanlama, • Seri haberleşme arayüzü (USART0 ve USART1) istenirse SPI, I2C veya UART modunda çalıştırılabilir. • Giriş gerilimini kontrol eden denetleyici, • 60Kb+256byte Flash Memory, • 2Kb RAM. 81 Şekil 5.2. MSP430F169 ‘un Bacak Tasarımı 82 Şekil 5.3. MSP430F169 ‘un Fonksiyonel Blok Diyagramları 5.3. CPU Şekil 5.4. CPU Tanıtımı MSP430 CPU’su 16 bit RISC mimarisine sahiptir. Program saklayıcısına ilaveten durum saklayıcısı ve yığın işaretçisi bulunur. Azaltılmış komut uygulama zamanı sağlayan 16 bit saklayıcılar ile entegre edilmiştir. Saklayıcıdan saklayıcıya operasyon uygulama zamanı, CPU saatinin bir çevrimidir. Saklayıcılarının, R0’dan R3‘e kadarı özel saklayıcılar olan; program sayacı, yığın işaretçisi, saklayıcısı ve sabit üreteci olarak ayrılmıştır. 83 durum 5.4. Komut Seti Komut seti 3 formatlı 51 tane komut içerir ve 7 adresleme modundan oluşmaktadır. Her bir komut ile çalıştırılırlar. Tablo 10’da, komut formatlarında 3 çeşit operandında örnekleri verilmiştir. Tablo 11‘de adresleme modları listelenmiştir. Tablo 5.1. Kelime Komut Formatı Tablo 5.2. Adres Modları 5.5. Çalışma Modları MSP430, biri aktif ve diğerleri de düşük güç olmak üzere yazılımsal olarak seçilebilir 6 farklı çalışma moduna sahiptir. Kesme olayı 5 düşük güç modundan mikrodenetleyiciyi uyandırır, istenilen servisi uygular ve istenilen düşük güç moduna geri döner. Aşağıda 6 tane yazılım ile seçilebilen çalışma modları vardır. Burada belirtmek gerekir ki, bu çalışma modları modüllerin çalışmasını doğrudan etkilemez. Etkilemesi sadece saatlerin kapanması nedeniyle olur. • Aktif mod AM; o Tüm saatler aktif • Düşük –güç modu 0 (LPMO) o CPU pasif durumdadır.(kullanılmaz) o ACLK ve SMCLK aktif kalır.MCLK kullanılmaz 84 • Düşük – güç modu 1 (LPM1); o CPU kullanılmaz, pasiftir. o ACLK ve SMCLK aktif kalır.MCLK pasiftir o DCO ‘un dc jeneratör(üretici) kullanılmaz eğer DCO aktif modda değil ise • Düşük - güç modu 2 (LPM2); o CPU Pasiftir o MCLK ve SMCLK pasif durumdadır o DCO ‘nun dc jeneratörü kullanıma hazır bekler o ACLK aktif kalır • Düşük - güç modu 3 (LPM3); o CPU pasiftir o MCLK ve SMCLK pasiftir. o ACLK aktif kalır. • Düşük - güç modu 4 (LPM4); o CPU pasiftir. o ACLK pasiftir o MCLK ve SMCLK pasiftir o DCO’ nun dc jeneratörü pasiftir o Kristal osilatör durdurulmuştur 5.6. Kesme Vektör Adresleme Kesme vektörleri ve ortam güç başlatma adresleri (0FFFh-0FFEh) adres aralığında bulunurlar. Vektör kesme işleyicisinin 16 bit adreslerini içerirler. Kesmeler MSP430 ailesinin düşük güç tüketimini sağlayan en önemli özelliğidir. Bu özellik sayesinde, modüller ve CPU birbirlerinden farklı işletim tarzlarında çalışabilirler ve kesme olayı bu durumu tamamiyle destekler. Bir kesme işlemi, sistemi RETI komutunu kullanarak yapılır. Kesme işlemi fonksiyonu içinde istenilen mikrodenetleyici istenilen moda geçirilip uyandırılabilir yada uyutulabilir. Sistem maliyeti ve güç tüketim amaçları doğrultusunda, CPU ve modüllerdeki farklı gereksinimler farklı saat sinyallerinin kullanımı gerektirir. Bunlar; • Yardımcı saat ACLK, Çevre Modüller veya CPU için; • Ana sistem saati MCLK, CPU ve sistem ile kullanılır. • Alt sistem saati SMCLK, çevre birimi modülleri ile kullanılır. 85 5.7. Düşük Güç Tüketim Yeteneği Düşük güç tüketim yeteneği, temelde CPU ve çevre modüllerinin yazılımsal kontrollü osilatörün hızlı bir şekilde uyanabilme özelliğinden faydalanarak mümkün olduğunca çok uyutulması mantığına dayanır. Bu saat sistemi, optimize sistem maliyeti ve en düşük güç tüketimini korur. • Harici bileşensiz dahili saat üreteci kullanımı, • Düşük frekans ve maliyet için, harici kristal veya seramik rezonans devresi seçimi, • Uygun saat sinyali ve saat bölücü fonksiyonunun yazılımla seçilebilmesi, • Harici saat üretecinin uygulanabilirliği. 15………….9 Gelecekteki gereksinimlere göre arttırılabilir 8 V 7 6 5 4 SCG1 SCG0 OscOff CPUOff 3 2 1 0 GIE N Z C Tablo 5.3. STATUS (durum) Saklayıcısı Tablo5.3 de gösterilen saklayıcı 4 bit CPU ve sistem saati üretecini kontrol eder : CPU OFF, SCG1, SCG0 ve OscOff CPU OFF, SCG1, SCG0 ve OscOff, sistem saat üretecinin temel fonksiyonunda kurulduğu zaman düşük bit kontrolünde en önemli bitlerdir. Kesme gelir gelmez yığına itilirler ve kesme isteğinden sonra işleme dönmek için geri yüklenirler. CPU OFF: Saat sinyali MCLK, CPU ile kullanılır. SCG1: Set edildiğinde SMLCK sinyali kapatılır. OscOff: LFXT1 kristali bu bit set edildiğinde pasif duruma geçer. Eğer SMCLK veya MCLK olarak kullanılmayacaksa pasif edilmelidir. 86 SCG0: DC üreteç SCG0 biti sıfırlandığında aktif olur. DCO eğer SCG0 biti çalıştığında ve DCOCLK sinyali MCLK veya SMCLK gibi kullanılmazsa etkisiz olur. DC kaynak tarafından tüketilen dc akım DCOCLK un temel frekansında tanımlanır. DCOCLK: Saat sinyali DCOCLK eğer MCLK veya SMCLK olarak kullanılmazsa durdurulabilir. 5.8. Kesme Enable 1 ve 2 (kesme izin saklayıcıları) Tablo 5.4. Kesme Çalışır Durumda 1 OFIE: Osilatör hata kesme çalışır durumdadır. NMIE: Maskesiz - kesme aktiflenir. ACCVI: Flash hafıza kesme ihlali çalışır durumda URXIE0: USART0: UART ve SPI alıcı-esme-enable UTXIE0: USART0: UART ve SPI iletici- kesme enable Tablo 5.5. Kesme Çalışır Durumda 2 USART1:UART ve SPI alıcı -kesme enable, veri geldiğinde kesme izni 87 USART1:UART ve SPI iletim-kesme enable, veri gönderilmesi tamamlanığında kesme izni Kesme Bayrakları 1 ve 2 Tablo 5.6. Kesme Bayrakları 1 ve 2 WDTIFG: Gerilim düşümlerinden kullanıcıyı korumak için engellenemez kesme bayrağıdır OFIFG: Osilatör işaretinde bir şekilde hata oluşması durumunda bu bayrak set edilir NMIIFG: Engellenemez bir kesme olan NMI kesmesinin oluştuğunu gösteren bayraktır. URXIFGO: USART0:UART ve SPI alıcı bayrak UTXIFGO: USART0:UART ve SPI iletici bayrak Tablo 5.7. Kesme Bayrak Saklayıcısı 1 ve 2 USART1 UART ve SPI alıcı bayrağı USART1:UART ve SPI iletim bayrağı 5.9. Modül Saklayıcı 1 ve 2 88 Tablo 5.8. Modül Saklayıcı 1 ve 2 URXE0:USART0:UART modu alıcı UTXE0:USART1:UART iletim modu USPIE0:USART1:SPI alıcı ve iletim modu Tablo 5.9. MSP430F169 Hafıza Organizasyonu 5.10. 5.10.1. Mikrodenetleyicinin Modülleri Bootstrap Loader (BSL) Yükleyici MSP430 (BSL) kullanıcıları flash belleği’ni ve UART seri ara yüzünü kullanarak, programlamayı sağlar. BSL’in hafızaya erişimi bir şifre ile korunmaktadır. Yani isteyen herkesin kod hafızasına bu yolla erişimi engellenmiş olur. Yeni nesil BSL yapısında ise Texas firması şifrenin yanlış girilmesi durumunda hafızayı silerek yazılan kodların güvenliğini arttırmıştır. BSL özelliklerin tanımı ve uygulamaları aşağıdaki şekilde tamamlanır. Tablo 5.10. Bootsrap Lader 89 5.10.2. Flash Bellek Flash bellekler JTAG portla, bootstrap loader ile veya sistemdeki CPU veya DMA modülü kullanılarak programlanabilir. Flash belleğinin içerdiği özellikler: • Her biri 128 byte olan A ve B ile adlandırılan 2 tane bilgi hafızasına ve 9 hafıza bilgi bloğuna sahiptir. • 0’dan N’e kadar olan bloklar bir adımda silinebilir veya bloklar ayrı olarak silinebilir, • Blok A ve B sırayla ayrı olarak veya 0-n bloklu gruplarda da silinebilir. A ve B bloklarına bilgi hafızası da denebilir, • Yeni donanımların bazı byteları bilgi hafızasında programlanabilir(imal sırasında ihtiyaç duyulabilir). Önce kullanıcının hafıza bilgisinin silinmesi işlemi gerçekleştirilmelidir. Şekil 5.5. Flash Bellek Yapısı 5.10.3. DMA Kontroller DMA kontroller bir bilgiyi bir adresten başka bir adrese kopyalamak ile görevli bir modüldür. DMA’in avantajı bu saklayıcılarına hedef ve kaynak adresleri verildiğinde 90 kopyalama işlemini gerçekleştirebilmek için CPU’ya ihtiyaç duymamasıdır. örnek olarak ADC den okunan değerlerin bulunduğu ADC12MEM0 saklayıcısındaki bilgiler her istenen saat çevriminde bir başlangıç adresi verilen hafızaya kopyalanabilmektedir. Bu işlem sırasında sadece çalıştığı için ADC modülü ve kopyalama yaparken çalışan DMA modülünün aktif olması yeterlidir. Bu yöntem düşük güç tüketim özelliği ile ön plana çıkan MSP430 ailesinin güç tüketiminin diğer mikrodenetleyicilerinkinden daha da az olabilmesini sağlamıştır. DMA kontroller her modülün saklayıcısına erişebilmekte ve buradan aldığı bilgileri istenilen saklayıcıya gerek hafıza, gerek RAM gerekse diğer modüllerin saklayıcılarına aktarabilmektedir. Tabii ki bunun tersi de geçerlidir. 5.10.4. Osilatör ve Sistem Saati MSP430x16x donanımı ailesi, yüksek hız kristal osilatöre ve dijital kontrollü osilatöre (DCO) ilaveten bir de düşük güç tüketiminin desteklenmesi için düşük hızlı harici bir osilatörü (ACLK) destekler. Bu osilatör tipik olarak 32768 Hz ayarlıdır. Zaman saati bu osilatörü baz alarak çalışır. Ana saat modülü, sistemin düşük güçlü olduğu göz önüne alınarak dizayn edilmiştir. DCO’nun da güç çekmemesini sağlamak ve bekleme modunda kapalı durmasını sağlamak için DCO 6 µs’den daha kısa bir sürede stabil sinyal üretebilen bir duruma gelebilmektedir. Ana saat modülü aşağıdaki saat sinyalini sağlar. • Yardımcı saat (ACLK) zaman kristalinden kaynak alır. Tipik değeri 32768 Hz’dir. • Ana saat (MCLK) CPU tarafından kullanılan sistem saatidir ACLK’dan veya hızlı kristalden beslenebilir. • Alt ana saat (SMCLK) periferik modülleri tarafından kullanılan alt sistem saatidir. ACLK, DCO veya hızlı kristalden beslenir. 91 5.10.5. Gerilim Denetleyici Voltaj denetleyici (SVS) devresi, besleme gerilimi, kullanıcının seçtiği seviyeden aşağı düştüğünü algılamak için dizayn edilmiştir. Donanım otomatik olarak tekrar başlatılır. Mikrodenetleyici belirlenenden daha düşük voltajlarda da çalışabileceği için çıkış portlarının istenen gerilim seviyelerini sağlamaması durumu programın doğru koşması fakat mikrodenetleyiciden ona bağlı diğer birimlere eşik seviyelerinden daha düşük gerilimlerin gitmesinin engellenmesini sağlar. 6 tane 8 bit I/O P1 ve P6 portları bulunmaktadır. • Tüm ayrı I/O portları bağımsız olarak programlanabilir, • Giriş ve çıkışın komut sıraları ve kesme durumları olasıdır, • P1 ve P2’nin portlarının 8 bitleri için kesime giriş kapasiteleri uçları seçilmelidir, • Tüm komutlar tarafından port kontrol girişlerine yazma ve okuma girişleri desteklenir. 5.10.6. Watchdog Timer WDT modülünün ilk fonksiyonu yazılımsal bir hata oluştuğunda donanımı RESET etmesidir. Eğer bu özelliği kullanılmak istenmiyorsa belirlenen aralıklarla kesme üretmesi sağlanabilir. Bu kullanımıyla bir sayıcı/zamanlayıcı gibi de çalışabilmektedir. 4 farklı zaman için kesme üretebilir ve osilatör olarak ACLK, DCO veya hızlı osilatör isteğe göre seçilebilir. 5.10.7. USART0 MSP430 ailesinin içinde dahili olarak 2 adet USART modülü bulunmaktadır. Bu modül 3 farklı modda çalışabilmektedir. • SPI • I2C 92 • UART Her bir modül birbirinden bağımsız olarak farklı protokollerde çalışabilmektedir. Çalışması basitçe saklayıcısına yazılan değerin ilgili modülün TX pininden iletilmesi şeklinde olmaktadır. CPU kullanımı zorunlu değildir, saklayıcısına DMA kullanılarak da bilgi yazılabilir. Dahili olarak hata kod düzeltmesi bulunmaktadır. Bir hata oluşumunda, saklayıcıdaki bilginin iletimi bitmeden saklayıcıya tekrar bilgi yazılması gibi durumlarda veya gelen bilginin okunmadan üzerine yeni bilgi gelmesi durumunda ilgili hatayı bayraklarında göstererek bir kesme oluşturabilir. 5.10.8. Timer-A3 3 adet tutma ve karşılaştırma saklayıcıları ile 16 bit (timer /counter) sayıcı ve zamanlayıcıdan oluşur. Timer A3 çoklu tutma karşılaştırma, PWM çıkışları ve zamanlamayı sağlar. Timer A3 ayrıca kesme kapasitesine de sahiptir. Taşma durumlarında da kesmeler yapabilir. 5.10.9. Timer B7 7 tane tutma karşılaştırma saklayıcıları ile birlikte, 16 bitlik (timer/counter) zamanlayıcı ve sayıcıdır. B7 geniş kesme kapasitesi vardır. Tutma karşılaştırmadan her biri sayıcıdaki taşma durumunda kesmeleri gerçekleştirir. 5.10.10. Karşılaştırıcı (Comparator) - A Karşılaştırıcı–A MSP430F169’un içindeki tek karşılaştırıcıdır. Giriş olarak başka modüllerden gelen gerilimleri(referans gerilim üreteci, sıcaklık sensörü gibi) veya dışardan gelen gerilimleri alarak birbirleriyle karşılaştırabilmektedir. Bu modül 1MHz’den daha hızlı karşılaştırma sonucunu üretmektedir. Bu noktada ADC’ye hassasiyeti karşılaştırılamayacak kadar az da olsa bir alternatiftir denebilir. 5.11. CPU Tanımı 93 CPU, farklı modüllerin hepsinin kontrolünü sağlar, özelliklede, tablo uygulamaları, yüksek düzey seviye dili C dili gibi modern programlama tekniklerinin uygulanmasını sağlar. • RISC numarası 27 temel komutu ile 7 adresleme modu vardır, • Her komut her hangi bir adresleme modu ile kullanılır, • Tam saklayıcı girişi program sayıcı, durum saklayıcı ve yığın işaretçisi içermektedir, • Tek çevrimlik saklayıcı uygulamalarını içerir, Şekil 5.6. CPU Yapısı • 16 bit uzunluğundaki • Saklayıcı, bellek bilgilerinin aktarılmasını sağlar, • 16 bit adres yolu direk girişi ve geçişi tüm bellek alanında sağlar, • 16 bit veri yolu giriş kelime bağımsız değişkenlerinin direk kullanılmasını izin verir, • Sabit jeneratör en çok kullanılan kod uzunluklarını azaltır. • Direk hafızadan hafızaya tampon olmadan bilgi transfer eder. • Word ve byte adresleme ve komut formatlarını içerir. 5.11.1. Program Counter(PC/RO)(Program Sayıcı) Uygulanacak bir sonraki komutu işaret eder. Her komut çift byteların numaralarıyla kullanılır ve buna bağlı olarak PC ‘de artışlar oluşur. 64KB adres boşluğundaki komut girişleri kelime sınırlarında uygulanılır. 94 Tablo 5.11. Program Sayıcı 5.11.2. Yığın Đşaretçisi(SP/RI) CPU tarafından kesme dönüş adreslerini depolamak için kullanılır. SP, software tarafından tüm komutları ve adresleme modları ile kullanılır. RAM içine SP hazırlanır. Kullanıcı tarafından ve çift adresleme ile hazırlanır. Tablo 5.12. Yığın Đşaretçisi Şekil 5.7. Yığın Kullanımı Şekillerde PUSH SP POP komutları için SP saklayıcısı olarak kullanımı özel durumları gösterilmiştir. 95 5.11.3. Durum Saklayıcısı(SR) (SR/R2) kaynak ve hedef saklayıcı olarak kullanılabilir, saklayıcı modunda sadece kelime komutları ile adreslenebilir. Adres modlarının genel kombinasyonları sabit jeneratörü desteklemek için kullanılır. Tablo 5.13. Durum Saklayıcısı 5.11.4. Sabit Üreteç Saklayıcısı CG1 and CG2 Program kodunda sık kullanılan ve dizayna göre belirlenen sabitler her seferinde flash belleğe yazmak yerine üreteç saklayıcısında üretilirler. Böylece kodun uzunluğundan tasarruf edilmiş olur. Sabit üreteç genişletilmiş komut seti MSP430’un RISC komut setinin 27 tane komutu vardır. Sabit üreteç MSP430 24 eklemeli komutlara izin verir. Mesela tek işlenen komut ; ile aynı uzunlukta olan çift işlenen konut ile aynı işlevi başarırlar. assembler tarafından #0 yerleştirilir ve R3 AS =00 , ile yerleştirebilir. 96 5.11.5. Genel Amaçlı Saklayıcılar R4-R15 12 adettir. R4-R15 genel amaçlı saklayıcılardır. Tüm bu saklayıcılar bilgi (data) saklayıcısı, adres işaretleyicisi ve içerik değeri ve byte veya kelime komutları ile girilebilir. Şekil 5.8. Saklayıcı -> byte ve byte -> Saklayıcı Đşlemleri 5.12. Adresleme Modları Đşlenen kaynak için 7 adresleme modu ve hedef için 4 adresleme modu vardır. As/Ad 00/0 01/1 Adresleme modu saklayıcı mod Đndexlenmiş mod Syntax Rn X(Rn) 01/1 Sembolik mod ADDR 01/1 Mutlak mod &ADDR 97 Tanımı saklayıcı bileşenleri işlenendir (Rn+x)işleneni işaret eder.sonraki kelimede x depolanmıştır (PC+x) işeneni işaret eder.x bir sonraki kelimede depolanmıştır adreslenmiş olarak X(PC) kullanılır Komutu takip eden kelime tam bir adres içerir X sonraki kelimde depolanmış .adreslenmiş mod X(SR) 10/- Dolaylı saklayıcı mod @Rn 11/- Dolaylı otomatik arttırım @Rn+ 11/- doğrudan modu #N Rn işlenene işaretçi olarak kullanılır Rn işenene işaretçi olarak kullanılır R birer artırılır.daha sonra b komutları ile 2 şer olarak arttırılır.W komutları Komutu takip eden kelime doğrudan sabit N’i içerir.direk olmayan otomatik artım modu@ PC +kullanılır Tablo 5.14. Kaynak ve Hedef Đşlemci Adres Modları Çoğunlukla örnekler hedef ve kaynak için aynı adresleme modlarını gösteririler. Kaynağın geçerli kombinasyonlar ve hedef adresleme modları olabilir. 5.12.1. Saklayıcı Mod Aşağıda tanıtılmıştır. Tablo 5.15. Yazıcı Modun Tanıtımı Uzunluk :1 veya 2 kelimeli Đşlem:R10içeriğini R11’e taşır R10 etkilenmeyecek Açıklama :kaynak ve hedef için geçerli Örnek: Mov R10 ,R11 Şekil 5.9.Saklayıcı Moduna Örnek 98 Saklayıcıdaki bilgi kelime ve bayt komutları kullanarak girilebilir. Eğer bayt komutları kullanılıyorsa yüksek değerli byte her zaman sonuçta 0dır. Durum bitleri komut bytenin sonucuna göre kontrol edilir. 5.12.2. Adreslenmiş Mod Tablo 5.16. Adreslenmiş Mod Tanımı Uzunluk: 2 veya 3 kelimelik Đşlem:(R5+2 içeriğindeki) kaynak adresindeki içeriği hedef adrese (R6+6 içeriğine) taşımak, kaynak ve hedef saklayıcıları (R5+R6) etkilenmez. adreslenmiş modda program sayıcı otomatik olarak arttırılır, böylece program daha sonraki komutla devam eder. Açıklama: Hem kaynak hem hedef için geçerli Örnek 99 Şekil 5.10. Adreslenmiş Moda Örnek 5.12.3. Sembolik Mod Tablo 5.17. Sembolik Modun Tanımı Uzunluk: 2 veya 3 kelimedir. Đşlem: Kaynak adreste EDE(PC+X içeriğini ) hedef adresi TONĐ (PC içeriğini )taşır.kaynak veya hedef adreslerinde PC arasında komutlardan sonraki kelimeler değişik içerikleri vardır. Assembly hesaplar ve offset Xi otomatik olarak girer. Sembolik mod ile sayacı otomatik olarak arttırılır. Böylece program bir diğer komutla işlemeye devam eder. Açıklama: Kaynak ve hedef için vardır. Örnek: 100 Şekil 5.11. Sembolik Moda Örnek 5.12.4. Mutlak Mod (Absolute Mod) Tablo 5.18. Mutlak Moda Örnek Uzunluk: 2 veya 3 kelime Đşlem: Kaynak adreste EDE içeriğini TONI’ye taşır. Komuttan sonraki kelimeler kaynak ve hedef adresinin mutlak adresini içermektedir. Mutlak mod ile PC otomatik olarak arttırılır böylece program diğer komut ile devam eder. Açıklama: Hedef ve kaynak için geçerlidir. Örnek: 101 Şekil 5.12. Mutlak Moda Örnek 5.12.5. Dolaylı Saklayıcı Mod (Indirect Register Mod) Tablo 5.19. Dolaylı Saklayıcı Modun Tanıtımı Uzunluk: 1 veya 2 kelimedir. Đşlem: Kaynak adreste (R10 içeriğine ) hedef adrese (R11 içeriğine) taşır. Saklayıcılar değiştirilemez. Açıklama: Kaynak işlemcisi için geçerlidir. Kaynak işlemcisi için değer 0’dır(Rd). 102 Şekil 5.13. Dolaylı Saklayıcı Modunun Yapısı 5.12.6. Dolaylı Otomatik Artırım Modu (Indirect Autoincrement Mod) Tablo 5.20. Dolaylı Otomatik Artım Modunun Tanımı Uzunluk: 1 veya 2 sözcüktür. Đşlem: Kaynak adresindeki (R10 içeriğini) hedef adrese (R11 içeriğine)taşır. R10 byte operasyonları için 1 artırılır veya kelime operasyonları için alıp gelmeden sonra 2 arttırılır. herhangi bir destek işlem olmaksızın bir sonraki adresi işaret eder. tablolama işlemi için yararlıdır. Açıklama: Kaynak işlemci için geçerlidir. Hedef için işlemcisi 0’dır. Örnek: 103 Şekil 5.14. Dolaylı Otomatik Artım Moduna Örnek Şekil 5.15. Đşlemci Operasyonu Not: Yazmaç otomatik olarak arttırılmaktadır. 5.12.7. Doğrudan Modu Tablo 5.21. Doğrudan Modun Tanımı Uzunluk:2 veya 3 kelime . Eğer CG1 veya CG2 kullanılırsa 1 sözcük daha azdır. Đşlem: Kelimeyi takip eden komutta 45h ‘ı TONI adresine taşır. Açıklama: Sadece kaynak işlemci için geçerlidir. Kaynağı alıp gelmesinden sonra program sayıcı komutu takip eden kelimeyi işaret eder ve içeriğine hedefe taşır. 104 Örnek: Şekil 5.16. Doğrudan Modun Yapısı 5.13. Komut Seti MSP 430 komut seti 27 çekirdek komutu ve 24 tane benzetilmiş komutlar içermektedir. Çekirdek komutlar, CPU tarafından op-kodları olan komutlardır. Benzetilen (emulated) komutlar op-kodlara sahip olmayan ama kodun okunmasını veya yazmasını kolaylaştıran komutlardır. 3 çekirdek (temel) komut formatları: Src = kaynak işlemci As ve S_reg tarafından tanımlanır. Dst = hedef işlemci Ad ve D_reg tarafından tanımlanır. As = adresleme modu için sorunlu olan adresleme modları kaynak için (src)de kullanılır. S_reg = çalışma registerleri kaynak için kullanılır. Ad = adresleme modu için sorumu olan adresleme bidleri hedef için kullanılır(dst). D_reg = çalışma registeri hedef için kullanılır. (dst) BW = byte veya kelime işlemcisi. 0: kelime işlemcisi 1: byte işlemcisi 105 Not: Hedefleme adresler hafıza haritasının her yerinde geçerlidir. Bunun yanında, hedefin içeriğini değiştiren komut kullanıldığında, kullanıcı hedef adresinin yazılabilir olduğunu farkında olmalıdır. Mesela maskelenmiş RON yeni geçerli hedef adresi olabilirdi ama içeriği değiştirilemez o yüzden komutun sonuçları kaybolabilirdi. 5.13.1. Đki Operantlık Komutlar Tablo 5.22. Đki Operantlık Komutlar Tablo 5.23. Đki Operantlık Komut Örneği CMP ve SUB sonucu saklama dışında tamamen aynıdır. BI ve AND komutları da aynı şekildedir 106 5.13.2. Tek Operantlık Komutlar Tablo 5.24. Tek Operant Komut Tanıtımı Tablo 5.25. Tek Operantlık Komut Örneği Tüm adresleme modları CALL komutu için mümkündür. Eğer sembolik mod (ADDRESS), doğrudan modu (#N)(dolaysız, mutlak mod(&EDE) içeriklenmiş mod x8RN)kullanılır ise, kelime adres bilgisinin içeriğini takip eder. 5.13.3. Atlamalar (Jumps) Tablo 5.26. Atlama Komutunun Formatı 107 Tablo 5.27. Atlama Komutlarını Tanımlar ve Listeler Koşullu atlamalar;PC ‘e bağlantılı olan program bölümlerini destekler ve durum bitlerine etki etmez. -511’den +512 ‘e kadar sözcükler atlama komutundan PC değerine bağıntılıdır. 10 bitlik program sayacı offseti çiftlenmiş ve eklenmiş program sayacısına 10 bit değerlikli işaretlenmiş olarak davranır. Bazı komut örnekleri aşağıda tanıtılmıştır. ADD(.W) Kaynağı hedefe ekler ADD.B Kaynağı hedefe ekler Syntax ADD src,dst veya ADD.W src,dst ADD.B src,dst Đşlem: src+dst->dst Tanımı: Kaynak işlemci hedef işlemciye eklenir kaynak işlemci etkilenmez hedefin eski içeriği kaybolur. Durum bitleri N: sonuç negatif ise kur ,pozitif ise yeniden başlat Z: sonuç 0 ise kur değilse yeniden başlat C: sonuçta taşıma varsa kur değilse temizle V: aritmetik taşma durumlarında kur değilse yeniden başlat 108 Örnek: R5 10 artırılsın, taşımada TONĐ’ye atlama için kullanılır. ADD #10,R5 JC TONĐ :taşıma oluşmuş … Örnek: :taşıma olmamış R5 10 artırılsın ,taşımada TONI’ye atlama için kullanılır. ADD #10,R5 JC TONĐ …. R5 in düşük değerli bitine 10 ekler :eğer(R5)>246(0Ah+0F6h) :taşıma yoktur. BIC(.W) hedefteki bitleri temizler BIC.B hedefteki bitleri temizler Syntax BIC src,dst veya BIC.W src,dst BIC.B src,dst Tanımı: Hedef içine sonuçlar yerleştirilir. Durum bitleri etkilenmez. Mod bitleri OSCOFF,CPUOFF ve GIE etkilenmez. Örnek: BIC RAM ın LEO kelimesinin 6 MSB leri temizlenir. #0FC00h,LEO ;MEM(LEO)daki 6 MSB leri temizlenir Örnek: BIC.B RAM ın LEO kelimesinin 5 MSB leri temizlenir. #0F8h,LEO ;RAM byte LEO nun 5 MSBleri temizlenir CLR(W) hedefteki bitleri temizler. CLRB hedefteki bitleri temizler. 109 Syntax CLR dst or CLR.W dst CLR.B dst Đşlem: 0 dst Değişme MOV #0,dst MOV.B #0,dst Tanımı: hedef işlemci temizlenir. Durum bitleri etkilenmez Örnek: RAM sözcüğü TONĐ temizlenir CLR Örnek: TONĐ R5 RAM byte TONĐ temizlenir CLR.B 5.14. ;0 R5 registeri temizlenir CLR Örnek: TONĐ TONI ;0 TONI C VE ASSEMBLY ile MSP430 C ve assembly kodu birlikte MSB 430 uygulamalarında kullanılabilir. C ve assembly kombinasyonlarının assembly düşük düzey kontrolü, etkinlik, yüksek düzey dili, gücü ve hızı sayesinde kullanıcı faydalı olmaktadır. Complier(derleyici)saklayıcı işlemcilerinin iki grubunu kullanır. • 1, saklayıcı ile R2 den R15 parametre geçişinde kullanılır. Bundan dolayı çağrı sırasında muhafaza edilmezler. • Diğer amaçlı saklayıcılar, R4 ve R11 genel olarak saklayıcılar değişkenleri geçici olarak sonuçlar için kullanılır ve de çağrı sırasında saklanılır. Bu durum C ile kontrol edilir. URR45 seçeneği derleyicisi R4 ve/veya R4 saklayıcılarının kullanımında korunma amaçlıdır. 110 • Yığın çerçevesi ve parametre geçişi • Parametreler • Đlk iki dışında • Dönüş adresi • Yüksek değerlikli adresler • Düşük değerlikli adresler • Yığın işaretleyicisi SP • Yığın 5.14.1. C’den Parametre Geçişi Çağrılmış fonksiyon parametreleri olağan geçişi sağdan sola doğrudur. Yapı veya bağlantı tipi olarak tanımlanmadıkça saklayıcılardaki en soldan parametreler geçirilirler ayrıca yığındakilerde geçirilir. Kalan parametreler her zaman yığın üzerinden geçirilirler . Aşağıda örnekte gösterilmişlerdir f(w,x,y,z). Uygulamalar sağdan sola sırasıyla uğraştığından beri Z yığın üzerine ilk yüklenir. Daha sonra,X R14 ,R15:R14 veya yığın üzerinde, çeşidine bağlı olarak, W de aynı şekildedir. Sonuçlar R12 veya (R13 = R12 32 bit için) ve eğer yapısal ise R12 tarafından özel yer belirlenir. 5.14.2. Kesme Fonksiyonları C de yazılan kesme fonksiyonları otomatik olarak ilk önceki saklayıcıların, SR(status register), R14 ve R15 saklayıcıları muhafaza etmektedir. Rutin olarak kullanılan herhangi saklayıcı push Rxx komutları kullanılarak saklanırlar. Çıkışta pop Rxx komutları ile tekrar geri alınırlar. RETI komutu durum saklayıcısı tekrar yüklemek için ve kesmeden dönüşte kullanılır. C’den çağrılması ile kesme servis rutini sırasında dönüş adresi ile durum saklayıcısı yığında depolanır. 111 C den yığın işaretçisine direkt olarak giriş mümkün değildir ama esas fonksiyonları BIC_SR_IRQ(bitleri) yığın üzerinde durum saklayıcısı kaydı değiştirilebilir. 1,25 versiyonundan itibaren başlayarak IAR’da bulunmaktadır. #include <msp430x11x1.h> void main(void) { ... _EINT(); // Enable interrupts while(1) { ... _BIS_SR(LPM3_bits); // Enter LPM3 ... } } interrupt[WDT_VECTOR] void watchdog_timer (void) { _BIC_SR_IRQ(LPM3_bits); // Clear LPM3 bits from saved SR on Stack } 5.14.3. C’den Çağrılmış Assembly Rutinler • Yukarıda anlatılan çağrı geleneğine uyulmalıdır. • Kamusal giriş işaret etiketi olmalıdır. • Harici parametrelerin promosyon seçeneğine ve çeşit kontrolüne yani harici intfoo()da veya harici intfoo(int1 int3)izin vererek harici çağrıdan önce bildirimi sağlamalıdır. 112 5.15. Yerel Hafıza Dağılımı Eğer genel anlamda yerel hafızaya ihtiyaç duyulursa aşağıda gösterilen yönlerden dağılım yapılır. • Donanım yığınında, • Statik çalışma alanında, • Rutin eş zamanlı yeniden kullanılır olmadığında ona yeni bir seri sağlar, Fonksiyonlar her zaman anlar kaydetmeden R12 ve R15’te kullanılır.ve R6 dan R11 e kullanımından önce oraya getirilmiş olmaları gerekir. R4 ve R 5 ROM uygun monütör kodu ile kullanılmalıdır. 5.16. Uygulama Devresi Şekil 5.17. Entegre Analog Sistemi MSP430F169 dijital fonksiyonlarından ve entegre analog sistemlerinden çok faydalanılır. Şekilde MCU’nun analog sistemli bir uygulaması gösteriliyor. Benzerleri ile karşılaştırıldığında MCU’nun sistem dizaynını basitleştirmesiyle ADC ve DAC fonksiyonlarının entegrasyonu çip üzerinde gerçekleşir. ADC, DAC seri iletişim protokolleri CPU dan kaldırılır ve ADC ve DAC iç modülleri ile işlemleri yerine getirebilir. 113 CPU tarafından, ADC çevirim ortalama fonksiyonu kullanılır ama DAC’nin durumunda bilgi transferinde ve işaretçisi çipteki içmodül tarafından kullanılır. DAC çıkış frekansı ayarı SPU yerine DMA tarafından kesilir. CPU diğer görevler için kaynakları kullanmaktadır. ADC örnek hızının 8k SPS için tetikleme solüsyonu timer B yi ve ADC 12 örneği ACC örnek hızının 8 k SPS için tetik çevirici kurmak için kullanılır. OX O3 E7 ve P99 A yollanan timer B CCRO tarafından bu değerler verilir. Timer B SMCLK =8 MHZ durumu için ayarlıdır. ADC12 modülü tekli kanal AO da tekrar dönüşüm için kullanılır. Her bin TimerB sayıcıları veya 0,125 ms, ADC12 tetiklenir ve AD dönüşüm örneği için kullanılır. ADC 12 MEMO saklayıcılarında çevrim sonuçlarını depolar ve kesme üretir. ADC12 ISR Max50 MCLKlarla tamamlanır. Çevirim sonucun avantajını içeren 8.kesme içindir. Tetiklenilen DMA yükleme bilgisinden DAC12 modülünün kanal alınmasından daha sonra ortalama sonuçlar zaman sayıcısının tetiğiyle DMA’nın DAC 12 modülün kanal 0 a yüklediği bilgi arasında tanımlanan Timer A CCRO’ya taşınır. Şekil 5.18. MSP430F169 ile Entegre Sistem 114 Şekil 5.19. Entegre Olmuş Sistem Yazılım Akışı 5.17. Osilatör ve Sistem Darbesi Sistemde üç darbe kullanılır. Đşlemci ve sistem tarafından kullanılan ana sistem darbesi, çevresel birimler tarafından kullanılan alt sistem darbesi ve çevre birimler tarafından kullanılan ve LFXTCLK(kristal frekans)’dan harici olarak üretilen yardımcı darbedir. Aşağıdaki Varsayılan olarak kullanılan bir DCLOCK olan POR ,DCOR biti Sıfırlandırılmış ve DCO başlangıç yazmalı frekans ile kuruludur.Ek olarak LFXT1CLK veya XT’CLK dan birisi MCLK için olmazsa DCLOCK otomatik olarak seçilir. SMCLK XT2CLK veya DCOCLK tan üretilmiştir. ACLK genellikle LFXT1CLK tan üretilir. Kristal Osilatör LFXT1 saat kristali ile veya yüksek frekanslı kristal veya rezonatörler işleyen olarak tanımlanabilir. Kristal veya seramik resonatorler çapraz iki terminale bağlanırlar. Crystal Üreciler tarafından belirtildiği gibi Dâhili elemanlar saatli kristaller için gereklidir. Eğer yüksek XT1 modu seçiliyse VSS deki XIN ve VSS deki Xout harici kapasitörlere gerek duyulur. VCC'nin uygulamalarından sonra LFXT1 Osilatör başlar. Eğer OscOff biti 1 olarak kurulursa MCLK için bu kullanılmadığında Osilatör durur. Kristal Osilatör XT2 LFXT1 Osilatörü özdeştir; ama sadece yüksek frekanslı seramik rezonatör veya kristallerle çalışır. XT2 Osilatörü VCC uygulanmasından sonra kapalıdır. takı XT2 115 osilatörünün XT2Off kontrol biri kurulana kadar. Eğer XT2Off biri 1 ile kurulursa XT2 osilatörü MCLK veya SMCLK için kullanılmadığında durur. Darbe sinyali ACLK , MCLK, ve SMCLK harici üzerinden port pinlerini kullanabilir.Farklı uygulama gereksinimleri ve sistem farklı sistem darbelerine koşullandırılır. Şekil 5.20. Osilatör Devresi 5.18. Brown-Out Mikroişlemcinin yapısında bulunan Brown-Out özelliği mikrodenetleyicinin, çevre birimlerin eşik seviyesinin altında anlamsız (diğer modüller için eşik değerin altındaki çıkışlar okunamayacaktır ve yanlış gözükecektir.) yere çıkış üretmesini engelleyerek mikroişlemciyi reset eder. Örneğin 3.5V ile çalışan bir mikroişlemcinin çıkışında 5V ile çalışan lojik bir devreyi sürdüğünü düşünelim. Mikroişlemciyi besleyen gerilim değeri 3.5V’un altına düşerse sistem çıkışta gerekli olan 3.5V’dan büyük çıkış değerini veremez, böylece çıkışta high olarak verilmek isteyen değer low olarak verilir ve bu da hataya sebep olur. Bu tip hataları önlemek için sisteme Brown-out özelliği eklenmiştir. Brown-out devresi eğer VCC uçbirimi ve aygıtın ilk durumundan farklı bir şekilde geri beslemeye başvurulursa Brown-out(kısmi karartma) devresi meydana gelir. 116 Brown-out devresinin yayımlanmasından sonra işlemci kodları yürütmeye başlar. Bununla beraber bu zamandaki VCC VCC(min)e doğru ilerlemeyebilir. Kullanıcı VCC nin VCC min e ulaşana kadar Varsayılan FLL+ ayarlarını değişmemesini sağlamak zorundadır. VCC VCC(min) e eriştiği zaman SVS aygıtı karar vermeye alışık olmayı ister. Besleme gerilimi seçilebilen kullanıcı seviyesi ve desteği ile birlikte besleme gerilimi denetimi(aygıt otomatik olarak hazır durumundadır) ve besleme gerilim denetimi(aygıt başlangıç hazır durumda değildir)inerse geri besleme gerilimi denetimi ortaya çıkar. Giriş durumundayken Kullanıcı yazılımı çalışır durumda ise akım tüketimini korumak için SVS kapalı durumdadır. Şekil 5.21 Brown-Out Devresi VLD bitleri SVS devresinin açık/kapalı durumunu kontrol eder.VLD=0 ise SVS kapalıdır, VLD=1 ise SVS açıktır. PORON biti MSP430 üzerindeki düşük voltaj algılayıcısının otomatik reseti aktif yapar yada etkisiz yapar.PORON=1 ise düşük bir voltaj algılayıcısı bir POR sinyali ve MSP430 un sıfırlandığını üretir.SVSOP gerçek SVS çıkışının karşılaştırmasını izler. 117 SVSFG biti düşük voltaj durumu oluştuğu ve düşük voltaj oluşmadığı ve yazılım bunu sıfırlayana kadar ve düşük voltaj durumunun oluşmayana kadar set konumunda olduğu sürece set (ayarlanmış, kurulmuş)durumundadır. Eğer bu sadece besleme gerilimi isterse ama eğer bu kararlı seviyeden aşağı düşerse aygıtları hazır konumuna getiremez. PORON bitini sıfırlamayı ve Seviyeyi normal olarak kurmayı ancak kullanıcı yapar. Bunu sağlayan SVM fonksiyonlarıdır.SVM fonksiyonları örneğin A/D çeviricisini gerçekleştirmede ve çeviri devam ederken eğer besleme gerilimi minimum çalışma gerilimine düşerse bunu kullanıcın bilmesinde kullanılır. SVS devresi VCC eşik değerine yakın iken voltaj duyarlılığını düşürmede kullanılır. Her bir SVS düzeyi gösteriminin izlenmesi aşağıdaki tablodadır. SVS/SVM aşağıda gösterildiği gibi bazı gecikmelere sahiptir.Delay1 (~50 ms) SVS/SVM( VLD değişimi 0 ve >0) etkinken Yanlış resetlere izin vermemekte kullanılır. Ayrıca ikinci gecikme ne zaman VLD değişti ise SVS ON bitinin düşük değerini tutar. VLD =0 iken SVS ON düşüktür. SVS düzeyi aşağıdaki tabloda gösterildiği gibi programlanabilir kullanıcıdır. Ek olarak eğer herhangi diğer voltaj A7 için uygulanıyorsa bu da gösterilir. Şekil 5.22. SVS Düzeyi 118 5.19. Karşılaştırma Latchleri (TBCLX) Karşılaştırma mandalları yazılımla yada üzerinden seçilmiş durumları ile direk olarak PWM’den yüklenebilir. POR sinyali tarafından resetlenir. • Load TBCLx doğrudan, CLLD=0: tutma karşılaştırma saklayıcısı CCRx ve benzer karşılaştırma mandalları aynı anda yüklenir. • Load TBCLx at Zero, CLLD=1: tutma karşılaştırma saklayıcısındaki veri benzer karşılaştırma mandallarına yüklenir. (16 bit zamanlayıcı 0’ı gösterdiğinde) • Load TBCLx at Zero + Period, CLLD=2: tutma karşılaştırma saklayıcısındaki veri benzer karşılaştırma mandallarına yüklenir. (16 bit zamanlayıcı 0’ı gösterdiğinde veya bir sonraki periyot başladığındaki). • Load TBCLx at EQUx, CLLD=3: tutma karşılaştırma saklayıcısındaki veri CCRx TBR ye eşit olduğunda yüklenir. • Karşılaştırma mandalı yüklenirken tek başına yada guruplar halinde yapılabilir. Seçilmiş yükleme durumu gerçeklendiğinde CCRx datası TBCLx e yüklenir. • TBCLGRP=0: seçilmiş yükleme durumu gerçeklendiğinde karşılaştırma mandalı TBCLx y • yüklenir. Dual load TBCLx mode, TBCLGRP=1: veri aynı gurubun her iki CCRx saklayıcına yüklendiğinde ve seçilmiş yükleme durumu gerçeklendiğinde 2 karşılaştırma mandalı TBCLx yüklenir. CCR1+CCR2, CCR3+CCR4, and CR5+CCR6.Triple load TBCLx mode, TBCLGRP=2: veri aynı grubun bütün CCRx saklayıcılarına yüklendiğinde ve seçilmiş yükleme durumu gerçeklendiğinde 3 karşılaştırmalı mandal yüklenir. Two groups are defined: CCR1+CCR2+CCR3 and CR4+CCR5+CCR6. Full load TBCLx mode, TBCLGRP=3: veri bütün 7 CCRx saklayıcılarına yazıldığında ve seçilmiş yükleme durumu gerçekleştiğinde 7 karşılaştırma mandalı hepsi yüklenir. Bütün CCRx verisi benzer karşılaştırma mandallarına eş zamanlı olarak yüklenir. 119 Şekil 5.23. Karşılaştırma Mandalları 5.20. A/D Çevirici 12-bit analog-dijital çeviriciler(ADC) 10-bit ağırlıklı kapasitör dizisi ve bir 2-bit direnç dizgi ile kullanılır. Başarı yaklaştırma çevirme yordamı içindeki CMOS eşik 120 düzenleyici bir seri ikili ağırlıklı kapasitör üzerindeki yükü ölçerek her biti tanımlar. ADC’ nin özellikleri: • 12-bit çevirir (±1 doğrusallık) • Örnekle tut eylemi üzerine inşa edilmiştir • Sekiz dışsal ve 4 içsel analog kanlı vardır. Dışsal ADC giriş uçbirimi (terminal) Dijital port G/Ç bacaklarıyla birlikte paylaşılmıştır. • Đçsel referans gerilimi VREF+ 1.5 V veya 2.5 V’dur ve yazılım seçilebilir biti 2_5 V’dur. • Sıcaklık ölçümü için içsel sıcaklık sensörü: T = (V_SENSOR(T) – V_SENSOR) / TC_SENSOR • Pil Voltajı ölçümü: N = 0.5 X(AVCC - AVSS) X 4096 / 1.5V; VREF+ 1.5 V için seçilmiştir. • Pozitif voltaj referansı seviyesi VR+ içsel(1.5 V veya 2.5 V), dışsal veya AVCC seçilebilir. Kaynak her kanal için ayrı ayrı seçilir. • Pozitif voltaj referansı seviyesi VR- dışsal veya AVSS seçilebilir. Kaynak her kanal için ayrı ayrı seçilir. • Dönüştürme zamanı çeşitli saatli kaynaklarından seçilebilir: ACLK, MCLK, SMCLK veya içsel ADC12CLK osilatör. Saat kaynağı seçilmiş yazılıma göre 1 den 8 e kadar bir tamsayı tarafından bölünür. • Kanal dönüştürme: tek kanallar, bir grup kanallar, veya bir grup kanalın tekrarlı dönüşümü.Eğer sonuncusu seçilmişse,diziler, kanallar, ve gruptaki kanalların numaraları yazılım tarafından tanımlanabilir.Örneğin, a1-a2-a5-a2a2. • Dönüşüm ENC bitiyle sağlanır, ve yazılım yoluyla ve dönüşüm kontrol biti ADC12SC, Timer_A3, or Timer_Bx. Bir çok kontrol biti sadece ENC kontrol bit 0 ise değiştirilebilir. Bu kazayla değiştirilmesi sonucu oluşan kesin olmayan sonuçları engeller. • Örnekleme zamanı 4 Xn0 XADC12CLK veya 4 Xn1 XADC12CLK olabilir. Bu sinyalin yüksek (ISSH=0) veya alçak (ISSH=1) olmasına göre seçilebilir. SHT0 n0’ı ve SHT1 n1’i tanımlar. • Dönüşüm sonucu 16 yazmaçtan birinde depolanır.Bu 16 yazmacın teker teker adresleri vardır ve bunlara yazılım yoluyla girilebilir. 16 yazmaçtan her biri 121 bir tane 8-bit yazmaca bağlanır.Bu 8-bit yazmaçlar pozitif ve negatif referansı ve atanmış kanalı tanımlar. Şekil 5.24. ADC 5.21. DAC12 MP430F15x ve MP430F16x cihazlarının iki eş parçalı 12-bit DAC’ları vardır. Her DAC12 modülü çıkış voltajı DAC olan bir 12-bit R-ladder’dir. Her DAC12 modülü pozitif referans için AVCC veya ADC12 modülünden 1.5-V yada 2.5-V referans sinyali kullanabilir. Her DAC12 modülü yüksek derecede ayarlanabilirdir. Her DAC modülünün güncellenmesi, Zamanlayıcı_A veya Zamanlayıcı_B den bir çıkış olayı olması üzerine ayrı ayrı seçilmiş olabilir veya veri ilgili DAC12xDAT kütüğüne yazıldıktan hemen sonra olabilir. Ek olarak, DAC12 modülleri eş zamanlı kılınabilir. 122 Uygulamalar DAC12 modüllerini DMA kanalları ile birlikte kullanılarak kazanç sağlayabilir. DMA ile kullanıcı DAC değerlerini hafızada depolayabilir ve bu değerlere her DAC12 modülüne otomatik olarak transfer edilmiş biçimde ulaşabilir. Bu herhangi bir CPU müdahalesi olmadan, tamamen donanım tarafından kontrol edilen bağımsız ve periyodik iki dalga formu yaratılmasına izin verir. DAC12 öbek Şekil 5'te gösterilir Şekil 5.25. DAC 123 5.22. Çevrimsel Dosya Haritası DMA DAC12 ADC12 ÇEVRĐMSEL DOSYA HARĐTASI DMA kanal 2 transfer boyutu DMA2Sz DMA kanal 2 hedef adresi DMA2DA DMA kanal 2 kaynak adresi DMA2SA DMA kanal 1 transfer boyutu DMA1Sz DMA kanal 1 hedef adresi DMA1DA DMA kanal 1 kaynak adresi DMA0SA DMA kanal 0 transfer boyutu DMA0Sz DMA kanal 0 hedef adresi DMA0DA DMA kanal 0 kaynak adresi DMA0SA DMA kanal 2 kontrolü DMA2CTL DMA kanal 1 kontrolü DMA1CTL DMA kanal 0 kontrolü DMA0CTL DMA modül kontrolü 1 DMACTL1 DMA modül kontrolü 0 DMACTL0 DAC12.1 veri DAC12.1 kontrolü DAC12.0 veri DAC12.0 kontrolü Kesme-vektör-word saklayıcısı Kesme-bayrak saylayıcısı Kontrol saklayıcı 1 Kontrol saklayıcı 0 Değişen hafıza 15 Değişen hafıza 14 Değişen hafıza 13 Değişen hafıza 12 Değişen hafıza 11 Değişen hafıza 10 Değişen hafıza 9 Değişen hafıza 8 Değişen hafıza 7 Değişen hafıza 6 Değişen hafıza 5 Değişen hafıza 4 Değişen hafıza 3 Değişen hafıza 2 Değişen hafıza 1 Değişen hafıza 0 DAC12_1D AT DAC12_1C TL ADC12IV ADC12IE ADC12IFG ADC12CTL 1 ADC12CTL 0 ADC12ME M15 ADC12ME M14 ADC12ME M13 ADC12ME M12 ADC12ME M11 ADC12ME M10 ADC12ME M9 Tablo 5.28. Çevrimsel Dosya Haritası 124 01F6h 01F4h 01F2h 01EEh 01ECh 01EAh 01E6h 01E4h 01E2h 01F0h 01E8h 01E0h 0124h 0122h 01CAh 01C2h 01C8h 01C0h 01A8h 01A6h 01A4h 01A2h 01A0h 015Eh 015Ch 015Ah 0158h 0156h 0154h 0152h 0150h 014Eh 014Ch 014Ah 0148h 0146h 0144h 0142h 0140h 5.23. Çevresel Dosya Haritası ÇEVRESEL DOSYA HARĐTASI (SÜREKLĐ) ADC12 ADC hafıza-kontrol saklayıcı15 ADC12MCT 08Fh (sürekli) ADC hafıza-kontrol saklayıcı 14 L15 08Eh ADC hafıza-kontrol saklayıcı 13 ADC12MCT 08Dh ADC hafıza-kontrol saklayıcı 12 L14 08Ch ADC hafıza-kontrol saklayıcı 11 ADC12MCT 08Bh ADC hafıza-kontrol saklayıcı 10 L13 08Ah ADC hafıza-kontrol saklayıcı 9 ADC12MCT 089h ADC hafıza-kontrol saklayıcı 8 L12 088h ADC hafıza-kontrol saklayıcı 7 ADC12MCT 087h ADC hafıza-kontrol saklayıcı 6 L11 086h ADC hafıza-kontrol saklayıcı 5 ADC12MCT 085h ADC hafıza-kontrol saklayıcı 4 L10 084h ADC hafıza-kontrol saklayıcı 3 ADC12MCT 083h ADC hafıza-kontrol saklayıcı 2 L9 082h ADC hafıza-kontrol saklayıcı 1 ADC12MCT 081h ADC hafıza-kontrol saklayıcı 0 L8 080h Zamanlayıcı_ 7/ Al/kıyas saklayıcı 6 CCR6 019Eh Zamanlayıcı_B3 al/kıyas saklayıcı 5 CCR5 019Ch (Bak Not 1) al/kıyas saklayıcı 4 CCR4 019Ah al/kıyas saklayıcı 3 CCR3 0198h al/kıyas saklayıcı 2 CCR2 0196h al/kıyas saklayıcı 1 CCR1 0194h Al/kıyas saklayıcı 0 CCR0 0192h Zamanlayıcı_B saklayıcısı TBR 0190h al/kıyas kontrol 6 CCTL6 018Eh al/kıyas kontrol 5 CCTL5 018Ch al/kıyas kontrol 4 CCTL4 018Ah al/kıyas kontrol 3 CCTL3 0188h al/kıyas kontrol 2 CCTL2 0186h al/kıyas kontrol 1 CCTL1 0184h al/kıyas kontrol 0 CCTL0 0182h Zamanlayıcı_B kontrolü TBCTL 0180h Zamanlayıcı_B kesme vektörü TBIV 011Eh Zamanlayıcı_ 3 Saklanmış 017Eh 017Ch Saklanmış Saklanmış 017Ah Saklanmış 0178h al/kıyas saklayıcı 2 0176h al/kıyas saklayıcı 1 CCR2 0174h al/kıyas saklayıcı 0 CCR1 0172h Zamanlayıcı_A saklayıcısı CCR0 0170h Saklanmış TAR 016Eh 016Ch Saklanmış Saklanmış 016Ah Tablo 5.29. Çevresel Dosya Haritası 125 5.24. Terminal Fonksiyonları Terminal Đsim No AVCC 64 I/O AVSS 62 I/O DVCC 1 I/O DVSS 63 I/O P1.0/TACLK 12 I/O P1.1/TA0 13 I/O P1.2/TA2 14 I/O P1.3/TA3 15 I/O P1.4/SMCLK P1.5/TA0 P1.5/TA1 P1.5/TA2 P2.0/ACLK P2.1/TAINCLK 16 17 18 19 20 21 I/O I/O I/O I/O I/O I/O P2.2/CAOUT/TA0 22 I/O P2.3/CAO/TA1 23 I/O P2.4/CAO/TA2 24 I/O P2.5/Rosc 25 I/O I/O P2.6/ADC12CLK/ DMAE0 P2.7/TA0 26 I/O 27 I/O P3.0/STE0 28 I/O P3.1/SIMO0/SDA 29 I/O P3.2/SOMI0 30 I/O P3.3/UCLK0/SCL 31 I/O P3.4/UTXD0 32 I/O Tanımlama Analog besleme gerilimi pozitif terminal. Sadece ADC12 ve DAC12’nin analog bölümünü besler. Analog besleme gerilimi negatif terminal.Sadece ADC12 ve DAC12’nin analog bölümünü besler. Sayısal besleme gerilimi, pozitif terminal. Bütün sayısal bölümleri besler. Sayısal besleme gerilimi, negatif terminal. Bütün sayısal bölümleri besler. Genel amaçlı sayısal I/O pin/Timer_A, saat işareti TACLK girdisi Genel amaçlı sayısal I/O pin/Timer_A, yakalama : CCI0A giriş, karşılaştırma : Out0 çıkış Genel amaçlı sayısal I/O pin/Timer_A, yakalama : CCI1A giriş, karşılaştırma : Out1 çıkış Genel amaçlı sayısal I/O pin/Timer_A, yakalama : CCI2A giriş, karşılaştırma : Out2 çıkış Genel amaçlı sayısal I/O pin/SMCLK sinyal çıkışı Genel amaçlı sayısal I/O pin/Timer_A karşılaştırma : Out0 çıkış Genel amaçlı sayısal I/O pin/Timer_A karşılaştırma : Out1 çıkış Genel amaçlı sayısal I/O pin/Timer_A karşılaştırma : Out2 çıkış Genel amaçlı sayısal I/O pin/ACLK çıkış Genel amaçlı sayısal I/O pin/Timer_A, INCLK’nın saat sinyali Genel amaçlı sayısal I/O pin/Timer_A, yakalama : CCI0B giriş/karşılaştırıcı_A çıkış Genel amaçlı sayısal I/O pin/Timer_A, yakalama : Çıkış1 giriş/karşılaştırıcı_A girişi Genel amaçlı sayısal I/O pin/Timer_A, yakalama : Çıkış2 giriş/karşılaştırıcı_A girişi Genel amaçlı sayısal I/O pin, DCO nominal frekansı olarak tanımlanan harici resistor için giriş Genel amaçlı sayısal I/O pin, çevirme zamanı -12 bit ADC, DMA kanal 0 harici tetikleme Genel amaçlı sayısal I/O pin/Timer_A karşılaştırma : Out0 çıkış Genel amaçlı sayısal I/O, bağımlı gönderme çalışımı – UART0/SPI mod Genel amaçlı sayısal I/O, USART0/SPI modunda bağımlı giriş / ana çıkış Genel amaçlı sayısal I/O, USART0/SPI modunda bağımlı çıkış / ana giriş Genel amaçlı sayısal I/O, Harici saat girişi – USART0/UART veya SPI mod, saat çıkışı USART0/SPI mod Genel amaçlı sayısal I/O, veri gönderim çıkışı - USART0/UART 126 P3.5/URXD0 33 I/O P3.6/UTXD1† P3.7/URXD1† P4.0/TB0 P4.1/TB1 P4.2/TB2 P4.3/TB3† P4.4/TB4† P4.5/TB5† P4.6/TB6† P4.7/TBCLK P5.0/STE† 34 35 36 37 38 39 40 41 42 43 44 I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O P5.1/SIM01† 45 I/O P5.2/SOMI1† 46 I/O P5.3/UCLK† 47 I/O P5.4/MCLK P5.5/MCLK P5.6/ACLK P5.7/TBouth/ SVSOUT P6.0/A0 P6.1/A1 P6.2/A2 P6.3/A3 P6.4/A4 P6.5A5 48 49 50 I/O I/O I/O modu Genel amaçlı sayısal I/O, veri yakalama girişi – USART0/UART modu Genel amaçlı sayısal I/O, veri gönderim çıkışı – USI1/UART modu Genel amaçlı sayısal I/O, veri yakalama girişi – USI1/UART modu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, yakalama I/P veya PWM çıkış portu Genel amaçlı sayısal I/O, giriş saati TBCLK Genel amaçlı sayısal I/O, , bağımlı gönderme çalışımı Genel amaçlı sayısal I/O, USART1/SPI modunda bağımlı giriş / ana çıkış Genel amaçlı sayısal I/O, USART1/SPI modunda bağımlı çıkış / ana giriş Genel amaçlı sayısal I/O, Harici saat girişi – USART1/UART veya SPI mod, saat çıkışı USART1/SPI mod Genel amaçlı sayısal I/O, Ana sistem saati MCLK çıkışı Genel amaçlı sayısal I/O, ikincil ana sistem saati MCLK çıkışı Genel amaçlı sayısal I/O, yardımcı saat ACLK çıkışı 51 I/O Genel amaçlı sayısal I/O, 59 60 61 2 3 4 I/O I/O I/O I/O I/O I/O P6.6/A6/DAC0 5 I/O P6.7/A7/DAC1 6 I/O RST/NMI TCK TDI TDO/TDI 58 57 55 54 I I I I/O TMS 56 I VeREF+ 10 I/P Genel amaçlı sayısal I/O, analog giriş a0 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a1 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a2 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a3 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a4 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a5 – 12 bit ADC Genel amaçlı sayısal I/O, analog giriş a6 – 12 bit ADC, DAC12.0 çıkış Genel amaçlı sayısal I/O, analog giriş a7 – 12 bit ADC DAC12.1 çıkış Reset girişi, maskelenemez iş kesmesi giriş portu, Test saati. Test veri girişi Test data çıkış portu Test modu seçimi. TMS bir giriş portunun aygıtın programlanması ve testi için kullanılır. Harici referans voltajı için giriş Tablo 5.30. Terminal Fonksiyonları 127 5.25. Kesme Vektör Adresleri Kesme ve başlangıç adresleri 0FFFFh – 0FFE0h adres dizilerine yerleştirilmiştir. Kesme Kaynakları Kesme Bayrakları Güç Harici Reset Gözcü Flash bellek NMI Osilatör Arızası Flash Bellek Erişim Đhlali Timer_B7 Timer_B7 WDTIFG KEYV Comparator_A Gözcü Saati USART0 alımı I2C gönderme/alım/diğer USART0 gönderme ADC Timer_A3 Timer_A3 I/O port P1 USART1 alış USART1 gönderme I/O port P2 DAC12 DMA Sistem Kesmeleri Reset Word Adresleri 0FFFEh Öncelik NMIIFG OFIFG ACCVIFG (Non)Maskable (Non)Maskable (Non)Maskable 0FFFCh 14 BCCIFG0 BCCIFG0 TBIFG CAIFG WDTIFG URXIFG0 I2CIFG Maskable Maskable 0FFFAh 0FFF8h 13 12 Maskable Maskable Maskable 0FFF6h 0FFF4h 0FFF2h 11 10 9 UTXIFG0 ADCIFG CCIFG0 CCIFG1 CCIFG2 TAIFG P1IFG.0 to P1IFG.7 URXIFG1 UTXIFG1 P2IFG.0 to P2IFG.7 DAC12.0IFG DAC12.1IFG DMA0IFG DMA1IFG DMA2IFG Maskable Maskable Maskable Maskable 0FFF0h 0FFEEh 0FFECh 0FFEAh 8 7 6 5 Maskable 0FFE8h 4 Maskable Maskable Maskable 0FFE6h 0FFE4h 0FFE2h 3 2 1 Maskable 0FFE0h 0, en düşük Tablo 5.31. Kesme Vektör Adresleri 128 15, en yüksek 5.26. IAR Embedded Workbench for MSP430 v3 Derleyicisinin Kullanılması [8] Şekil 5.26. Adım 1 Programa ilk çalıştırıldığında Şekil 5.27. ‘de görüldüğü gibi kullanıcıya var olan bir projeyi mi açmak istediğini yoksa yeni bir proje mi açacağını sormaktadır. Yeni bir projenin açılacağını düşünerekten burada yeni bir projenin açılması anlatılmıştır. 129 Şekil 5.27. Adım 2 IAR derleyicileri birçok firmanın mikrodenetleyicilerine ve mikroişlemcilerine derleyici desteği vermektedir. Bu yüzden proje dosyasını açarken hangi denetleyici / işlemci ailesini kullanmak istediğimizi seçmek gereklidir. Burada MSP430 ailesi kullanılmıştır. Derleyici dili olarak da C kullanılmaktadır. (IAR derleyicileri ANSI C 99 standardındadır.) 130 Şekil 5.28. Adım 3 Proje açıldıktan sonra, projenin özelliklerine girilip gerekli ayarların yapılması gereklidir. Bu esnada sol taraftaki “workspace” sekmesinden kullanılacak olan proje isminin seçili olmasına dikkat edilmelidir. 131 Şekil 5.29. Adım 4 Genel özelliklerden kullanılacak olan mikrodenetleyicinin tam modeli seçilmelidir. 132 Şekil 5.30. Adım 5 “Debugger” menüsünden derleyicinin yazılan kodu sadece simüle mi edeceğini yoksa debugger kullanarak mikrodenetleyiciye yükleyip gerçek zamanlı mı çalıştıracağını seçmek gereklidir. Varsayılan ayar simüle etmek yönündedir. Đstenirse bu sekmeden programın başlayacağı varsayılan değeri olan “main” fonksiyonundan başka bir yerden başlaması sağlanabilir. 133 Şekil 5.31. Adım 6 “FET Debugger” menüsünden kullanılacak olan debugger ın modeli seçilmelidir. 134 Şekil 5.32. Adım 7 Projenin özellikleri ayarlandıktan sonra artık programda kod yazmaya geçilebilir. Kütüphane dosyaları, yardımcı C kaynak dosyaları oluşturulabilir. Buradan sonra derleyicinin kullanımı normal bir C derleyicisinden farksızdır. Burada kitin P1.0’a bağlı olan bir ledi yakıp-söndüren bir program örneği görülmektedir. “#include <msp430x16x.h>” satırı IAR derleyicisinin desteklediği bir kütüphane dosyasıdır ve bu kullanılan mikrodenetleyiciye özgüdür. Đçinde mikrodenetleyicinin saklayıcı adreslerini, farklı modlarda çalıştırılabilmesini sağlayan fonksiyonları vb barındırır. Bu dosyanın içeriği ilerde detaylı olarak incelenecektir. 135 Şekil 5.33. Adım 8 Programın gerçek zamanlı olarak test edilebilmesi için, Debug edilerek mikrodenetleyiciye aktarılması gerekmektedir. 136 Şekil 5.34. Adım 9 Burada Debug edildikten sonraki ekran görüntüsü görülmektedir. Sol tarafta derleyicinin oluşturduğu assembly komutları görülmektedir. Ortada ise kullanıcı tarafından yazılan C kodları vardır. 137 Şekil 5.35. Adım 10 “View” menüsünden mikrodenetleyici içindeki farklı saklayıcıları, hafıza haritalarını görülebilmektedir. Burada bir örnek olarak programın içindeki “i” değişkeni incelenecektir. 138 Şekil 5.36. Adım 11 MSP ailesi de diğer mikrodenetleyicilerde olduğu gibi değişiklik yapılacak olan değişken içindeki değeri saklayıcıları vasıtasıyla değiştirmektedir. Burada “i” değişkeni R15 saklayıcısına aktarılarak değeri birer birer azaltılmaktadır. 139 Şekil 5.37. Adım 12 Đstenildiği takdirde IAR derleyicisinin birer adım veya fonksiyon geçecek şekilde ilerlemesi sağlanabilir. Bunu için “Debug” menüsünden istenilen seçenek işaretlenmelidir. Bu program ile alakalı olarak, eğer “step over” seçeneğine basılırsa R15 saklayıcısındaki değerin 0x0A5A değerine gerilediği görülecektir. 140 6. BÖLÜM: 200 kPa On-CHIP SICAKLIK HASSASĐYETLĐ ve KALĐBRELĐ BASINÇ SENSÖRÜ [9] 6.1. Tanım Şekil 6.1. 200 kPa On-Chip Sıcaklık Hassasiyetli ve Kalibreli Basınç Sensörü MPX2200 serisi aygıtları direkt olarak uygulanan basınç değerlerine uygun olarak yüksek doğrulukta ve doğrusal olarak gerilim çıkışı verir. Bu devre elemanlar silikon piezodirençli basınç sensörleridir. Sensör strain gauge yapıda olup tek monolithic silikon diyaframı vardır. Yongaya ince film direnci ağı entegre edilmiştir. Bu yonga daha düzgün bir şekil vermek amacı ile lazer kullanılmıştır ve ofset kalibrasyonu ve sıcaklık ilavelidir. Bu sensör bizim de uygulamamızda olduğu gibi hava pompalarında yaygın olarak kullanılır. Diğer kullanım alanları ise robotik uygulamalar, seviye indikatörleri, tıbbi teşhis, basınç kontrollü anahtarlama, barometreler, yükseklikölçerlerde kullanılır. 0 ile 200kPa (0 ile 29psi) arası basınç ölçer ve 40mV çıkış gerilimi vardır. 6.2. Özellikleri • Sıcaklık hasiyetli 0ºC ile +85ºC • ±0.25% doğruluk • Yonga yapıları için kullanımı kolaydır • Doğruluk payı yüksektir, diferansiyel ve ölçüm konfigürasyonu 6.3. Tipik Uygulamaları • Robotik uygulamalar • Seviye indikatörleri • Tıbbi teşhis cihazları • Basınç kontrollü anahtarlama-Barometreler • Yükseklikölçer BACAK NUMARALARI 1 GND 3 Vs 2 +Vout 4 -Vout Tablo 6.1. MPX2200A/D CASE 344-15 Şekil 6.2. Basınç Sensörünün Yapısı 6.4. Voltaj Çıkışı ve Uygulanmış Diferansiyel Sensör Basıncı Sensörün diferansiyel gerilim çıkışı uygulana diferansiyel basınç ile direkt olarak orantılıdır. Sensörün referans vakumu vardır. Çıkış gerilimi basınç tarafında(P1) çizilen vakumun ki kadar, izafi olarak, düşer. Diferansiyel sensörün çıkış gerilim değeri, P1 ve P2 tarafına uygulanan basıncın artmasıyla artar. Aynı şekilde, çıkış gerilimi P2 ve P1 tarafına uygulanan basınç değeri ile artar. Maksimum basınç(P1 > P2) Yonga Sıcaklığı Çalışma Frekansı Sembol PMAX TSTG TA Değer 800 -40 ile +125 -40 ile +125 142 Birim kPa ºC ºC Tablo 6.2. MPX2200A/D CASE 344-15 Đçin Maksimum Oranlar Karakteristikler Diferansiyel Basınç Besleme Gerilimi Besleme Akımı Full Scale Span Offset Giriş Empedansı Çıkış Empedansı Uyarı Zamanı Sembol Pop Min 0 Typ - Max 200 Birimler kPa Vs Io Vfss Voff Zın Zout - 38.5 -1.0 1300 1400 - 10 6.0 40 20 16 41.5 1.0 2500 3000 - Vdc mAdc mV mV W W Ms Tablo 6.3. MPX2200A/D CASE 344-15 Đçin Çalışma Karakteristikleri Şekil 6.3’te MPX2200A/D CASE 344-15’in, 25ºC’deki çıkış karakteristiği verilmiştir. Çıkış orantılı olarak uygulanan basınç değeri ile değişir. 1.0kPa 0.145psi’ye eşittir. Şekil 6.3. Çıkış Karakteristiği 6.5. Basınç P1/Vakum P2 Tarafı Bilgileri Basınç sensörünün P1 ve P2 olmak üzere 2 tarafı vardır. P1 tarafı basıncı, P2 tarafı ise vakum tarafını gösterir. Basınç tarafı dışarıdan izole edilmiş, silikon jel ile kaplıdır. Diferansiyel sensör pozitif basınç uygulanması (P1 > P2) ile kullanılır. 143 7. BÖLÜM: SĐSTEMĐN ÇALIŞMA YAPISI 7.1. Giriş Bu bölümde sistemin çalışması yüzeysel olarak anlatılacaktır. Öncelikle sistem kullanıcıdan aldığı talimatla ölçüm değerini yapmak için ilgili işlemleri başlatır. Đlk aşamada sistem mikroişlemci ve RF elemanının ilgili saklayıcı değerlerini hazır konumuna getirir. Ardında kolluğu 190mmHg değerine gelinceye kadar kolluğa hava basar. Bu değere ortala bir insanın yüksek tansiyon değerinin (120mmHg) 70mmHg daha fazlası alınarak seçilmiştir. Kolluğun şişirilmesi işleminin ardından, sistem kollukta belli, değerlerde 2mmHg adımlarla hava boşaltmaya başlar. Boşaltma işlemi sonlanıncaya kadar sistem yüksek tansiyon, düşük tansiyon ve nabız değerlerini ilgili değişkenlere yazmış olur. Bu işlemden sonra bu değerler RF ile iletimimizi sağlayan CC1020 ile karşı tarafta bulunan LCD’ye basılır. Sistemin geliştirilmesi aşamasında bu değerler bir bilgisayar ekranına yada hastanedeki bir bilgi bankasına aktarılabilir. Daha ileriki uygulama aşamasında ise, ki bu ağ yapıları olabilir, bu değerler bu ağlara toplanarak ana merkeze gönderilerek hastanın istenen değerleri takip altına alınabilinir. Sistemin yüzeysel akış diyagramı Şekil 7.1.’de gösterilmiştir. Şekil 7.1. Sistemin Akış Diyagramı 7.2. Manşetin Ölçüm Alınacak Basınca Getirilmesi Sistemde ölçüm alınması için öncelikle kolluğun ölçüm için gerekli olan 190mmHg basınç seviyesine getirilmesi gerekmektedir. Bunun için öncelikle kolluğun tahliye vanasının (bu vana bir röle ile kontrol edilmektedir) kapatılarak kolluğa hava pompa ile basılan havanın dışarı çıkması engellenir. Timer A, olası sorunlara karşı 5 saniyeye kurulur. Burada belirtilen sorunlar kolluğun patlaması, hava pompalayan motorda oluşabilecek hatalar ya da basınç sensöründen kaynaklana sorunlar dolayısı ile kolun şişememesi ya da fazla şişmesini engellemek için konmuş ampirik bir önlemdir. Basıncın ölçüleceği ADC0’ın referans gerilimi ve saklayıcıları kurulur. Burada ADC0, sürekli ölçüm alma modunda çalışır, böylece her ölçüm alınacağında ADC’nin tekrar tekrar kurulmasına gerek kalmaz. Referans geriliminin stabil bir duruma gelmesi için gerekli olan 13ms boyunca beklenir. Burada daha önceden kurulmuş olan TIMERA kullanılır. TIMERA sayacı ACLK’dan beslendiğinden TAR’ın 13ms e eşdeğer olan sayma sayısına ulaştığında beklemeye son verilir. Ve ADC0 tetiklenir. ADC0’ın ölçüm alana kadar geçen zamanda işlemci LPM3 moduna sokulur. Böylece bekleyerek harcanacak olan güçten de tasarruf edilmiş olunur. ADC0’ın okuması bitince oluşturacağı kesme ile LPM3 modundan çıkılır. Ölçülen ADC değeri mmHg ya dönüştürülür bu sırada da pompa çalıştırılır. Pompa manşetin içindeki basınç 190mmHg olana kadar açık tutulur. Her ölçüm beklenirken işlemci uyutulur. Đşlemcinin uyanma süresi ve DCO’nun stabil hale gelme süreleri çok kısa olduğundan işlemcinin LPM3 moduna girmesi ölçüm sırasında bir aksamaya veya gecikmeye neden olmamaktadır. Manşet içindeki basınç istenen değer ulaşınca döngüden çıkılır ve pompa susturulur. 145 EXT INT LPM OFF RÖLE OFF TIMER A KUR H TAR =13ms E READ ADC POMPA ON LPM3 BASINÇ HESAPLANMAS P>190mmHg H E POMP OFF ADC READ ADC1 Şekil 7.2. Sistemin Akış Diyagramı 146 7.3. Kan Basıncının Ölçümü Genellikle, doktorlar hastanın atardamarındaki kan basıncını ölçümü esnasında kolluk ve stethoscope kullanırlar. Ölçüm esnasında ilk olarak kolluğa hava pompalarlar. Tabii bunu belli bir basınç değerine kadar yaparlar. Daha sonra hastanın kan basıncını dinlemek için stethoscope denilen aleti kullanırlar. Başlangıçta pompalanan hava basıncının, değeri yüksek(systolic) tansiyon değerinden fazla olacak şekilde olmalıdır. Bu aşamada doktor stethoscopetan her hangi bir ses duymaz. Basınç değeri düşürüldükçe doktor stethoscopetan kalp atışını duymaya başlar. Bu aşamada ölçülen değer yüksek tansiyondur. Hava basıncı düşürüldükçe doktor farklı karakteristikte kalp atış değerleri duymaya başlar. Her hangi bir noktada ses kaybolmaya başlar. Đşte bu nokta düşük(diastolic) tansiyon değerine ulaşılır. Ölçüm esnasında bizim sistemimizde “oscillometric” denilen ölçüm şekli kullanılmıştır. Hava, ortalama yüksek tansiyon değeri olan 120mmHg basıncından 70mmHg fazla olacak şekilde kolluğa pompalanmıştır (190mmHg). Bundan sonra ise hava basıncı yavaşça düşürülmeye başlanır. Bu düşürülme esnasında sistem koldaki hava basıncındaki küçük dalgalanmaları (osilasyonları) ölçmeye başlar. Yüksek tansiyon nabız atımlarının başladığı esnada olur. Bu arada MCU nabzın hangi noktada başladığını ve kolluktaki basıncı kaydeder. Kolluktaki hava basıncı düşürülmeye devam edilir. Düşük tansiyon ise kolluktaki nabzın dalgalanmasının kaybolmaya başladığı anda alınmaya başlanılır. 7.4. Yüksek Tansiyonun Ölçümü Kolluğa hava pompalama işlemi, 160mmHg’nın üzerinde gerçekleştirildikten sonra kollukta bulunan hava boşaltma ünitesi devreye girdiği anda (aşağı yukarı sağlıklı bir insanın yüksek tansiyon değerinden fazla olmalıdır) sistem Sys_Measure konumuna geçer. Bu durumda, program ADC0 pinindeki, AC dalga formuna bakar. Kolluktaki basınç değeri azaltıldığı anda kesin bir değere geldiği zaman kan koldan akmaya başlar. Bu noktada yüksek tansiyon değeri elde edilir. AC dalga formu için 4V değeri threshold değeri olarak seçilmiştir. Başlangıçta, sabit değer 2.5V olan ADC0 pininde darbe yada gerilim değeri yoktur. yüksek tansiyon değeri ölçülünceye kadar kollukta basınç değeri düşer. Osilasyon bu noktada başlar ve yükselir. Bu noktadan sonra threshold geriliminden yüksek değerlerdeki maximum darbeler sayılmaya başlar. Eğer program 4’ten fazla sayarsa program Sys_cal durumuna girer. Bu durumda program ADC1 numaralı pinden DC gerilimi kaydeder.daha sonra bu DC gerilim hastanın yüksek tansiyonun değerine dönüştürülür. Basınç sensörünün transfer karakteristikleri ve DC yükseltecin DC kazancı ADC1 numaralı pinin ucundaki DC gerilime bakılarak öğrenilir. ADC1 pininden okunan DC gerilim değeri “DC_voltage” ve DC yükseltecin kazancı “DC_gain” olarak belirtilmiştir. Böylece DC yükselteçten gelen diferansiyel gerilim değeri; (7.1) şeklinde hesaplanır. Bu değere sayesinde basınç gerilim karakteristiğinin olduğu grafikten basınç değeri ölçülür. Bu eğrinin eğimi ise; (7.2) şeklinde bulunur. Böylece koldaki basınç değeri kPa birimi üzerinden; (7.3) şeklinde bulunur. Ardından, elde edilen değer mmHg’ya çevirmek için; (7.4) ile çarpılır. Böylece basınç mmHg şeklinde tam olarak şöyle hesaplanır; 148 Bütün bu değerleri toparlarsak DC bir gerilimi mmHg cinsinden ifade etmek için; ifadesi direkt olarak kullanılır. Program bittikten sonra Rate_measure durumuna girerek hastanın darbe oranını belirler. LPM3 EXT INT 0 ADC0 KUR READ ADC0 Nop() ADC0 INT BASINC = ADCMEM0 HESAPLA P Şekil 7.3. Yüksek Tansiyon Ölçüm Algoritması 149 7.5. Nabız Ölçümü Program yüksek tansiyon değerini ölçtükten sonra hastanın darbe oranını göstermeye başlar. Bu çalışmada darbe oranı yüksek tansiyon değeri ölçüldükten sonra hesaplanması uygun görülmüştür bunun sebebi ise osilasyonun bu noktadaki dalga formu en güçlü olmaktadır. Bu formdaki genlik değeri için ayarlanan referans gerilimine bağlı olarak farksal yükseltecin referans gerilimi ile karşılaştırılan işaret her periyodunda bir işaret oluşturur. Bu işaret de işlemci içinde bir kesme oluşturur. Oluşan kesmelerin aralarındaki zaman ölçüldüğünde nabız atışının periyodu bulunur. Şekil 7.3’de Nabız Ölçme Algoritması verilmiştir. 150 TIMERB KUR LPM3 EXT INT0 KUR EXT INT0 VECTOR LPM3 OFF TIMERB BAŞLAT LPM3 EXT INT0 VECTOR LPM3 OFF TIMER B KAPAT PERĐYOT = TAR f = 1/PERĐYOT Şekil 7.4. Nabız Ölçüm Algoritması 151 7.6. Düşük Tansiyonun Ölçülmesi Darbe oranı bulunduktan sonra program Dias_measure durumuna geçer. Bu durumda program her 40ms’de işareti örneklemeyi sürdürür. Ardından düşük tansiyon için threshold gerilimi belirlenir. Kolluktaki basınç değeri düşürülünce, düşük tansiyon basınç değerine gelmeden bir noktada, osilasyon değerindeki gerilim değeri düşmeye başlar. Düşük tansiyon değerinin belirlenmesi için osilasyonun gerilim değeri threshold gerilim değerinin altına düştüğü zaman bu noktadaki DC değer kaydedilir. DC değer yüksek tansiyon değerinin ölçüm aşamalarında da belirtilen şekilde basınç değeri mmHg cinsinden bulunur. Düşük tansiyon değerinin ölçülmesi zor olup threshold değeri kişiden kişiye değişiklik gösterir. Böylece, sistemimizde genel olarak kullanılan ölçüm elemanlarında alınana threshold değerleri ile gerekli ölçümler sağlıklı bir şekilde gerçekleştirilmiştir. Programın düşük tansiyon değerinin ölçüm işlemi bittikten sonra LCD’de ölçülen değerler gösterilir. Daha sonra program kolluğun valfini açarak içerisindeki havanın hızlı bir şekilde boşalmasını sağlar. Böylece ölçüm işlemi sonlanır. 7.7. Ölçüm Almadan Önce - 10 dakika kadar sessiz ve sakin oturun, bu vücudunuzun normal ve dinlenme pozisyonuna dönmesini sağlayacaktır. - Tansiyonunuzu ortam ısısının ölçümü etkilemeyecek kadar sıcak veya soğuk olmadığı bir yerde yapınız. -Ölçümden hemen önce kahve gibi kafeinli bir içecek yada çay veya kola içmediğinize emin olun ölçümden hemen önce sigara içmeyin sigara içmişseniz 30-45 dakika beklemeniz gerekir.. 152 7.8. Ölçüm Alırken • Ölçüm alırken sessiz ve hareketsiz oturun konuşma veya hareket tansiyonunuzu yükseltebilir. • Ölçümlerin tutarlı olması için her gün aynı vakitte ve aynı bilekten ölçüm almak iyi bir fikirdir, mümkünse sol bileğinizi kullanmanızı öneririz. • Birçok ölçümü arka arkaya almak istiyorsanız kan damarlarınızın normale dönmeleri için en az 5 dakika beklemeniz gerekir. • Tutarlı ölçüm alabilmek için, ölçüm sırasında manşon kalp hizasında bulunmalıdır. • Cihazınızın plastik kabını veya başka bir cismi kullanarak ve masa üzerindeki dirseğinize destek çıkarak bileğinizi kalp hizasına getiriniz. 7.9. Tansiyon Ölçümünde Kullanılan Analog Devreler Şekil 7.5’deki devre basınç sensöründen alınan düşük gerilim değerini yükselterek algılanması kolay olan bir değere çeker. Yükseltecin kazancı 208’dir. Devrenin ileriki katlarında ise düşük olan bu gerilim değeri kademeli olarak arttırılır. Bunun sebebi ise gürültüden etkilenmesini azaltmaktır. Şekil 7.5. Ölçüm Yükselteci 153 Şekil 7.6. Farklı Kazançlardaki Bant Geçiren Filtreler Şekil 7.6’de de görüldüğü gibi yükselteçten sonra devrede farklı kazançlarda BGS kullanılmıştır. BGS kullanılmasını sebebi biçim için gerekli olan frekans değerlerini göz önünde bulundurmak istememizdir. Bu değere ise kalbin damar çeperlerine yaptığı basıncın sonucunda oluşan frekans değerleridir. Devre elemanlarının değerleri ilgili kesim frekansını sağlayacak şekilde hesaplanarak bulunmuştur. Hesaplar pratik uygulamada test edilerek gerekli olan değerler olması gereken değerlere çekilerek bulunmuştur. Şekil 7.7. AC Bağlaşma Devresi Basınç sensöründen alınan ham değer yukarıda da belirttiğimiz gibi önce kuvvetlendirilmiş daha sonra BGF lerden geçirilmiş ve kuvvetlendirilmiş. Uygulamanın bu katında ise Şekil 7.7’da gösterildiği gibi BGS’nin çıkışından alınan değer AC Bağlaşma devresinden geçirilmiştir. Bunun sebebi ise salınım yapan sinüs işaretini belli DC değerlere çekilerek ADC tarafından işlenmek üzere sayısal hata çevrilen verinin algılanmasında kolaylık sağlamıştır. Aşağıdaki şekilde yukarıda anlatılan sistemin analog devrelerinin baskı devre şeması verilmiştir. Şekil 7.8. Analog Devrelerin Baskı Devre Şeması 155 8. BÖLÜM: MODÜLLERĐN PROGRAM KODLARI 8.1. Fonksiyonlar Kütüphanesi Bu fonksiyonlar programın değişik yerlerinde kullanıldığından kütüphane haline getirilip “functions.h” olarak her programın başında çağırılmıştır. void Show_MCLK(void); //Debug amaçlı olup, master clock sinyalini P5.4 //pininden dışarı verir. void SetMCLK_4MHz(void); //Master clock sinyalini 4 MHz’e ayarlar.(daha önceden //elle kalibrasyon ile bulunmuş saklayıcı değerleri //kullanılır. void SetMCLK_1MHz(void); //Master clock sinyalini 1 MHz’e ayarlar void SetSMCLK_1MHz(void); //SubMaster clock sinyalini 1 MHz’e ayarlar void delay(unsigned int i); //bekleme fonksiyonu void delay2(unsigned int i ,unsigned int j); //daha fazla beklemek için. void TimerA(unsigned int Say); //timerA modülünün Say kadar sayılmasını sağlar. //---------------------------------------------------------------------------void delay(unsigned int i) //---------------------------------------------------------------------------{ do { (i--); __no_operation(); // _NOP(); } while (i != 0); } //---------------------------------------------------------------------------void delay2(unsigned int i ,unsigned int j) //---------------------------------------------------------------------------- { int k; k=i; for(;j!=0;j--) { i=k; do{ (i--); __no_operation(); // _NOP(); }while (i != 0); } } //---------------------------------------------------------------------------void SetSMCLK_1MHz(void) //---------------------------------------------------------------------------{ BCSCTL2 |= DIVS1; //Divider for MCLK 1.bit } //---------------------------------------------------------------------------void SetMCLK_1MHz(void) //---------------------------------------------------------------------------{ DCOCTL |= 0xA0; //DCO = 5 BCSCTL1 |= 0x07; //RSEL = 7 //BCSCTL2 |= DIVM0; //Divider for MCLK 0.bit BCSCTL2 |= DIVM1; //Divider for MCLK 1.bit } //---------------------------------------------------------------------------void SetMCLK_4MHz(void) //---------------------------------------------------------------------------{ 157 DCOCTL |= 0xA0; //DCO = 5 BCSCTL1 |= 0x07; //RSEL = 7 //BCSCTL2 |= DIVM0; //Divider for MCLK 0.bit //BCSCTL2 |= DIVM1; //Divider for MCLK 1.bit } //---------------------------------------------------------------------------void Show_MCLK(void) //Shows MCLK clock on P5.4 / pin48 //---------------------------------------------------------------------------{ P5DIR |= 0x10; P5OUT |= 0x10; P5SEL |= 0x10; } //---------------------------------------------------------------------------void TimerA(unsigned int Say) //timerA sayıcı modunda //---------------------------------------------------------------------------{ TACCR0 = Say; TACTL |= (TASSEL_2 + TAIE + MC0); Divider = 2 / //Clock source = SMCLK, //=> 500KHz } 8.2. ADC Programı Bu fonksiyon ile mikrodenetleyici içindeki sıcaklık sensöründen okunan değer ADC12 modülüne giriş olarak verilmiş ve dijitale dönüştürülmüştür. Dönüştürülen değer ADCMEM0’dan okunabilir. #include <msp430x16x.h> 158 #include "functions.h" #define TRUE 1 #define FALSE 0 void Init_Sys(void); unsigned int temp; unsigned int IntDegC; int main( void ) { Init_Sys(); SetMCLK_1MHz(); SetSMCLK_1MHz(); BCSCTL2 |= DIVS_3; //Divider for SMCLK = MCLK / 8 = 250KHz ADC12CTL1 |= SHS_1 + SHP; //TA1, samp timer, rpt ADC12MCTL0 |= SREF_1 + INCH_10; //VRef+, A10 temperature diode //selected ADC12IE |= 0x01; ADC12CTL0 |= SHT0_7; //192cycle TACCTL1 |= OUTMOD_3; TACCR1 |= 0x109A; //TOGGLE //17000 us time to need a stabilized reference for adc TACCR0 |= 0xFFF0; //262080 us ölçüm alma periyodu TACTL = TASSEL_2 + MC_1 + TAIE; while(1) { _BIS_SR(LPM0_bits + GIE); IntDegC = (temp - 2692) * 423; IntDegC = IntDegC / 4096; _NOP(); } 159 //SMCLK, up-mode, int enable. } #pragma vector = TIMERA1_VECTOR __interrupt void TIMERA1_ISR (void) { ADC12CTL0 |= REFON + ADC12ON + ENC; TACTL &= ~TAIFG; } #pragma vector = ADC_VECTOR __interrupt void ADC12_ISR (void) { temp = ADC12MEM0; //IFG is cleared, too ADC12CTL0 &= ~ENC; ADC12CTL0 &= ~(REFON + ADC12ON); P1OUT ^= 0x01; _BIC_SR_IRQ(CPUOFF); } 8.3. DCO Programı #include <msp430x16x.h> #include "functions.h" void Init_Sys(void); int main() { Init_Sys(); Show_MCLK(); SetMCLK_1MHz(); unsigned int i; while(1) { P1OUT ^= 0x01; 160 i = 5000; while (i--) ; } } 8.4. Donanımsal Çarpıcı Programı #include <msp430x16x.h> #include "functions.h" /*3 MCLK sonucunda sonucu RESLO (16-bit) RESHI (16bit) ve SUMEXT (extention) olarak verir*/ /*#define COMP_ (0x3000) DEFW(COMP ,COMP_)*/ unsigned long int comp; unsigned long int comp2; int main() { SetMCLK_4MHz(); unsigned int a = 0xFFFF, b = 0xFFFF; _DINT(); //Çarpma sırasındaki interrupt tanımsız kalıyor bunun için çarpmalar //sonunda iptal ediyoruz.. MPY = a; OP2 = b; while(1) ; _EINT(); return 0; } 161 8.5. UART Programı #include <msp430x16x.h> #define TRUE 1 #define FALSE 0 void Init_Sys(void); //setup void Init_uart0(void); //setup UART unsigned int RxBuff; int main(void) { _BIS_SR(GIE); Init_Sys(); Init_uart0(); while (TRUE) { unsigned int i = 5000; long j; P1OUT ^= 0x01; while (i--) ; if (TXEPT && 0x01) // TXBUFF emtpy? if (P1OUT & 0x01) U0TXBUF = 'd'; else U0TXBUF = 'a'; // IFG1 |= URXIFG0; if(RxBuff == 'd' || RxBuff == 'a') { i = 2; while (i--) { 162 j = 100000; while (j--) { P1OUT ^= 0x01; } } } } } void Init_uart0() { _BIC_SR(GIE); //Global interrupts disable P3SEL |= 0x30; // P3.4,5 = USART0 TXD/RXD ME1 |= 0xC0; // Module TX/RX enable U0CTL = 0x19; // (8N1), No parity, 1 Stop Bit, 8Bit Char, listen enabled,UART, //Held Reset U0TCTL = 0x10; U0BR0 = 0x03; // SSEL = 01 = ACLK // baud rate control is set by userguide U0BR1 = 0x00; U0MCTL = 0x4A; IE1 |= URXIE0; U0CTL |= SWRST; _BIS_SR(GIE); // Modlation Control is set by userguide // RX interrupts enabled/TX Disabled // swrst = 0 usart enabled //Global interrupts enable } #pragma vector = USART0TX_VECTOR __interrupt void USART0TXISR(void) { } 163 #pragma vector = USART0RX_VECTOR __interrupt void USART0RXISR(void) { RxBuff = U0RXBUF; } 164 9. SONUÇLAR ve ÖNERĐLER Yapılmış olan uygulama çerçevesinde, sistem ölçmüş olduğu değerleri kablosuz iletim tekniği ile diğer tarafta bulunan LCD panele ilgili veriler iletilmiştir. Sistem ileriki uygulamalarda ihtiyaca bağlı olarak vücut sıcaklığı, kanın oksijen miktarı, vb. gibi parametreler sisteme entegre edilebilir. Smart sensörlerin ileriki uygulamaları olarak birden çok modül kullanılarak sensör ağları oluşturulabilir. Böylece insanların bu gibi değerleri sürekli olarak belli bir yerde kayıt altına alınarak hasta takip sistemi olarak kullanılabilir. 165 KAYNAKLAR [1] Dr. Takoi K. Hamrita, Kurt L. Wolfe, Nivedita P. Kaluskar, “Advances in Smart Sensor Technology” [2] www.ieee.org [3] E. Yazgan, M. Korurek, "Tıp Elektroniği", ĐTÜ Yayınları 1966, ISBN 975-561073-1 [4] How to measure the blood pressure http://www.drbloodpressure.com/05-mesurer8.shtml [5] Davıd Prutchı, Mıchael Norrıs, “Desıgn And Development Of Medıcal Electronıc Instrumentatıon”, ISBN 0-471-67623-3 [6] CC1020 CHIPCON Application Notes ve Datasheets [7] MSP430F169 Texas Instruments Application Notes [8] www.iar.com (MSP430XX Derleyicisi Đçin) [9] www.freescale.com ( MPX2200 datasheet, applications ) [10] Ramon Pallas-Areny and John G. Webster, Sensors and Signal Conditioning, John Wiley, New York, 1991. [11] Harry L. Trietley, Transducers in Mechanical and Electronic Design, Marcel Dekker, Inc., 1986. [12] Dan Sheingold, Analog-Digital Conversion Handbook, Third Edition, Prentice-Hall, 1986. [13] P. Malcovati, C. Azeredo Leme, P. O’Leary, F. Maloberti, and H. Baltes ”Smart Sensor Interface with A/D Conversion and Programmable Calibration”, Ieee Journal Of Solid-State Circuits, Vol. 29, No. 8, August 1994 [14] M. Mozek, D. Vrtacnik, D. Resnik, U. Aljancic, M. Cvar, S. Amon “Calibration and Error Correction Algorithms for Smart Pressure Sensors”, IEEE MELECON 2002, May 7-9,2002, Cairo, EGYPT [15] W. Sansen, A. Claes, D. De Wachter, L. Callewaert, and M. Lambrechts “A Smart Sensor For Biomedical Applications 166