ındex
giriş 1
mikroişlemci nedir? 1
mikrodenetleyici nedir? 1
neden mikroişlemci değil de mikrodenetleyici kullanılıyor? 2
mikrodenetleyiciler hakkında genel bilgiler 2
neden pıc? 2
neden pıc16f84? 3
pıc programlamak için nelere ihtiyacınız var? 3
ıbm uyumlu bilgisayar 4
metin editörü 4
assembler programı 4
pıc programlayıcı yazılımı 5
programlanmış pıc'i deneme kartı 5
pıc donanım özellikleri 6
pıc çeşitleri 6
pıc'lerın dış görünüşü 6
pıc bellek çeşitleri 7
pıc16f84 8
pıc 16f84’ün pın görünüşü 8
besleme gerilimi 9
clock uçları ve clock osilatörü çeşitleri 9
reset uçları ve reset devresi 11
ı/o portları 12
pıc16f84'ün belleği 13
program belleği 13
ram bellek 14
w register 14
pıc assembly 15
assembler nedir? 15
pıc assembly dili nedir? 15
pıc assembly dili yazım kuralları 15
noktalı virgül (

16
girintiler ve program bölümleri 16
başlık 17
etiketler 17
atama deyimi (equ) 18
sabitler 18
org deyimi 18
sonlandırma bloğu 18
büyük ve küçük harflerin kullanımı 19
pıc assembly komutlarının yazılış biçimi 19
byte-yönlendirmeli komutlar 19
bit-yönlendirmeli komutlar 20
sabit işleyen komutlar 20
kontrol komutları 20
sayı ve karakterlerin yazılış biçimi 20
heksadesimal sayılar 20
binary sayılar 21
desimal sayılar 21
ascıı karakterler 21
pıc assembly komutları 21
pıc programlama 26
ilk programınız 26
bank değiştirme 26
port'ların giriş veya çıkış olarak yönlendiriımesi 27
akış diyagraml sembolleri 28
akış diyagramının çizılmesı 28
assembly program komutlarının yazılması 29
atama (equ) komutu kullanarak program yazmak 29
programların derlenmesi (mpasm) 30
programın pıc'e yazdırılmasl 31
p16pro'nun başlatılması 32
pıc seçme (f3) 32
program dosyasını açma (f1) 32
pıc konfigürasyonunu ayarlama (f2) 32
programı pıc'e yazdırma (f4) 33
programlanmış pıc'in denenmesi 33
breadboard üzerine kurulan devre ile denemek 33
pıc deneme kartı ile denemek 34
mpasm'nln ürettiği diğer dosyalar 35
.lst dosyası 35
.err dosyası 36
ınclude dosyaları 36
ınclude dosyası kullanarak program yazmak 36
konfigürasyon bitlerinin yazılması 38
veri transferi ve karar işlemleri 40
w registerin kullanımı (movlw, movwf komutları) 40
veri transferi 40
sonsuz döngü 41
bit test ederek karar vermek (btfsc, btfss) 42
döngü düzenlemek 45
sayaç kullanarak döngü kullanmak (decfsz) 45
basit bir zaman gecikme döngüsü yapmak 47
karşılaştırma yaparak döngü düzenlemek (sublw, subwf, ıncf, decf komutları) 48
subwf komutu 49
sublw komutu 50
status regıster 51
status register blt'leri 51
zaman geciktirme ve alt programlar 48
zaman geciktirme döngüleri 48
dahili komut saykılı 48
tek döngü ile minimum zaman geciktirme 49
tek döngü ile maksimum zaman geciktirme 49
komut saykıl sayısının bulunması 49
n sayısının bulunması 50
çift döngülü zaman geciktirme 51
n sayısının hesaplanması 51
alt programlar 52
bit kaydırma ve mantıksal işlem komutları 55
sola kaydırma (rlf) 55
sağa kaydırma 56
comf ve swapf komutları 58
mantıksal işlem komutları 59
andlw komutu (istenilen bir ya da birkaç bit'i "0" yapmak) 59
andwf komutu 60
ıorlvv komutu (istenilen bit'in değerini "1" yapmak) 61
ıorwf komutu 61
xorlw komutu (istenilen bir bit'i terslemek) 61
xorwfkomutu 62
bir byte'lık iki veriyi karşılaştırmak (xorlw, xorwf) 62
bir byte'lık veriyi "0" ile karşılaştırmak (ıorlw, ıorwf) 62
aritmetik işlemler 65
aritmetik işlem komutları 65
8 - bıt toplama 65
16- bit toplama 66
8 - bıt çıkarma 68
16- bıtçıkarma 69
çevrim tabloları 71
çevrim tablosu (lookup table) nedir? 71
program counter (sayıcı) 71
retlw komutu 72
step motor kontrolü 74
kesmeler (ınterrupts) 80
kesme (ınterrupt) nedir? 80
ıntcon registeri 81
kesme kaynakları 82
harici kesmeler 82
tmro sayıcı kesmesi 82
portb lojik seviye (rb4-rb7) değişiklik kesmesi 82
kesme alt programlarının düzenlenmesi 83
tüm kesme işlemlerini aktif yapma bayrağı (gıe) 83
kesme esnasında w ve status registeri saklamak 83
kesme alt programları nereye yazılmalı? 84
kesme gecikmesi 85
tek pals üreticinin kullanımı 88
donanım sayıcıları 90
donanım sayıcısı/zamanlayıcısı nedir? 90
tmr0 sayıcı/zamanlayıcısı(tımer/counter) 90
optıon register 90
tmr0 sayıcının özelliklerl 91
frekans bölme sayısının (prescaler) kullanılması 92
tmr0 ve wdt oranı 92
frekans bölme sayısının atanması 94
tmr0'dan wdt'ye prescaler değeri atamak: 94
wdt'den tmr0'a prescaler değeri atamak: 94
tmro sayıcısının kullanılması 94
tmr0 sayıcı kesmesine ait örnekler 98
tmr0 sayıcısını istenilen bir sayıdan başlatmak 100
wdt zamanlayıcısı (watchdog tımer) 101
zaman aşımı süresi 102
sleep komutunun kullanılması 103
d/a ve a/d çevirme işlemleri 105
dijital/analog çevirici 105
ladder(merdiven) direnç devresi kullanmak 105
8 bit d/a konvertör entegresi kullanmak 106
pwm (pulse width modulation) metodu kullanmak 109
pwm metodu 109
iş ve bekleme süresinin tespit etmek 110
analog / dijltal çevirici 114
pıc16f84'ün giriş seviyesinin ölçümü 114
a/d çevrim metodu kullanarak direnç ölçmek 115
http://rapidshare.de/files/34316076/pic_kitap.rar
Başa dön