Haberler:

[move]Türkiye'nin Elektronik ve Metal Dedektörlerini Buluşturan İlk Sitesi Teknoloji Ekibi'ne Hoş Geldiniz.[/move]

Ana Menü

basit osilaskop

Başlatan Gedo, 12 Eylül 2010, 17:27:20

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Gedo

isis ve microC ile mantığı kavranması açısından.
sinüs dalgası örneği

RC0 zamanlamayı artırır
RC1 zamanlamayı azaltır
Linkback: basit osilaskop

Gedo

dosyayı kayet demeden önce ".doc" kısmını silin

Karadağ

insanlar sizi eskisi gibi kullanmadıklarında değiştiğinizi söylerler...

Eğer bir aptala laf anlatmaya çalışırsan dışarıdan bakanlar iki aptalın sohbet ettiğini sanırlar.

Kamburlar ülkesinde sırtı düze sakat denir.

Gedo


pro-TR

gedo ustam ya ben isisi çalıştıramadım. hex dosyası olarak ne yüklemek lazım. ve yazılım dili nedir?
Güzeli güzel yapan EDEBTİR,
Edeb güzeli sevmeye SEBEBTİR...

"Rufailer giyer pembe kırmızı
Tacının üstünde nurdan yıldızı
Evlatları tutar şişi ateşi, közü
Bülbül güle hayran ben de şeyhime"

Gedo

Alıntı yapılan: pro-TR - 12 Eylül 2010, 22:33:03
gedo ustam ya ben isisi çalıştıramadım. hex dosyası olarak ne yüklemek lazım. ve yazılım dili nedir?
hex dosyasını eklememişim. MicroC pro 3.8
ekledim uzantısını HEX olarak kaydedin

xd15

gedo arkadaşım paylaşım için çok saol.Ama dosyayı indiremiyorum bir türlü doc u silin demişsin siliyorum yine olmuyor.Nasıl indirebiliriz.

xd15

Gedo indirdim paylaşımın için saol.Bu programı c dilinde değilde picbasicte nasıl yazabiliriz bir fikrin var mı?

Gedo

elimde picbasic yok ama satır satır komutları koysan yerine çalışır sanırım ya da işlemleri anlatayım sana. sen kendin yaz.

lcd adc tanımlamalarını geçiyorum.

adc okuma işlemini donguye sokuyorsun. okuduğun adc değerini lcd nin çözünürlüğüne göre ayarlaması * 64 dikey pixel için , 10 bitlik veriyi 1023 bolunce.
0-5volt arasını 0-64 pixel arasına dağıtmış oluruz.
döngüde i++ değişkeni de 0 dan itibaren yataydaki pixel kadar yani her okumayı bir sonraki pixele yazması için
adc den alınan veri y coordinatına gelecek şekilde çizdiriyor.

(i,adc),,,,, (i+n,adc) bu şekilde

dalgayı sabitlemek için de gecikme yapması için döngü var orda o döngünün tekrar sayısı buttonlarla ayarlanıyor. elimden geldiği kadar basit yapmaya çalıştım.

pic basikte daha kolaydır bu sanırım yani satır sayısı daha azdır.

olmazsa sen pic basicte yaz codları burda yayınla  düzeltmeleri beraber yaparız.



bir de not adc den alınan veri max 0-5 volt aralığında olur.

Gedo

#9

char GLCD_DataPort at PORTD;
unsigned int temp_res[128];
int i;

sbit GLCD_CS1 at RB0_bit;
sbit GLCD_CS2 at RB1_bit;
sbit GLCD_RS  at RB5_bit;
sbit GLCD_RW  at RB3_bit;
sbit GLCD_EN  at RB4_bit;
sbit GLCD_RST at RB2_bit;

sbit GLCD_CS1_Direction at TRISB0_bit;
sbit GLCD_CS2_Direction at TRISB1_bit;
sbit GLCD_RS_Direction  at TRISB5_bit;
sbit GLCD_RW_Direction  at TRISB3_bit;
sbit GLCD_EN_Direction  at TRISB4_bit;
sbit GLCD_RST_Direction at TRISB2_bit;
//
void main() {
TRISA  = 0xFF; // PORTA is input

 Glcd_Init();
 Glcd_Fill(0x00);
 Delay_ms(500);

 do {
   for(i=0;i<128;i++){temp_res[i] = ADC_Read(2);}
   for(i=0;i<128;i++){
      Glcd_Dot(i,temp_res[i]* 64 / 1023,1);
      }
   delay_ms(1000);
   Glcd_Fill(0);
 } while(1);
}


Codları biraz değiştirip sadeleştirdim .
amaç ADC yi hızlandırmak bu haliyle 1500 Hz he kadar fena değil


Paylaş whatsappPaylaş facebookPaylaş linkedinPaylaş twitterPaylaş myspacePaylaş redditPaylaş diggPaylaş stumblePaylaş technoratiPaylaş delicious