[Resimleri görebilmek için üye olun veya giriş yapın.]Bir deneyimde kullandığım bu devreyi bazı değişikliklerle sizlerin
geliştirmesi için gönderiyorum. Zamanım olmadığı için final bir çalışma
yapamadım.
Devre şeması;[Linkleri görebilmek için üye olun veya giriş yapın.]Prensip olarak anlatmak gerekirse Pic ile
[Linkleri görebilmek için üye olun veya giriş yapın.] edilen analog swiçlerin -5V ile +5V arasında kademeli çıkışlar vermesi
prensibine dayanmaktadır. İleride alalog swiçleri (CD4051) 4 adede
çıkararak daha iyi bir devre için çalışmalar yapacağım.
Bitmiş hali ile göndermek en iyisi olacaktı ama şu an bu çalışma için
zamanım yok. 16F88 kullanılmasının nedeni frekansın ayarlanması
içindir. ADC bulunan başka bir pic kullanılabilir. ADC’ye bağlaacak bir
potasiyometre ile frekans ayarlanabilecektir. Geliştirecek arkadaşlara
yardımcı olmaya çalışırım. Çizim sPlan yazılım ise jal.
Yararlı olması dileğiyle iyi çalışmalar.
Jal yazılımıinclude 16f88_4i
include jlib
port_b_direction = all_output
var byte x
x = 1
procedure sinyal is
port_b = 0b0100_0001 -- 1
delay_10us(x)
port_b = 0b0100_0010 -- 2
delay_10us(x)
port_b = 0b0100_0011
delay_10us(x) -- 3
port_b = 0b0100_0100 -- 4
delay_10us(x)
port_b = 0b0100_0101 -- 5
delay_10us(x)
port_b = 0b0100_0110 -- 6
delay_10us(x)
port_b = 0b0100_0111 -- 7
delay_10us(x)
port_b = 0b0100_0110 -- 8
delay_10us(x)
port_b = 0b0100_0101 -- 9
delay_10us(x)
port_b = 0b0100_0100 -- 10
delay_10us(x)
port_b = 0b0100_0011 -- 11
delay_10us(x)
port_b = 0b0100_0011 -- 12
delay_10us(x)
port_b = 0b0100_0000 -- 13
delay_10us(x)
port_b = 0b0000_1000 -- 14
delay_10us(x)
port_b = 0b0001_0000 -- 15
delay_10us(x)
port_b = 0b0001_1000 -- 16
delay_10us(x)
port_b = 0b0010_0000 -- 17
delay_10us(x)
port_b = 0b0010_1000 -- 18
delay_10us(x)
port_b = 0b0011_0000 -- 19
delay_10us(x)
port_b = 0b0011_1000 -- 20
delay_10us(x)
port_b = 0b0011_0000 -- 21
delay_10us(x)
port_b = 0b0010_1000 -- 22
delay_10us(x)
port_b = 0b0001_1000 -- 23
delay_10us(x)
port_b = 0b0001_0000 -- 24
delay_10us(x)
port_b = 0b0000_1000 -- 25
delay_10us(x)
port_b = 0b0000_0000 -- 26
delay_10us(x)
end procedure
forever loop
sinyal
end loop