başlıktan bişi anlamıcaksınız biliyorum.şimdi 10 adet led lamba.1. yanıcak. 1 ile beraber 2 yanıcak.1-2 ile beraber 3. yanıcak en son 10 kadar gidicek ve 10. leddee hepsi sanıyor olucak.sonra 1. sonücek peşine 2. sönücek peşine 3-4 derken 10. led'e kadar böle dewam edicek.böyle bişi yapabilirmiyiz.asıl amacım bunu pic'de kendim yazıp isis'de denemek.mümkünmüdür sizde.kod yazmasını biliyormusun derseniz bilmiyorum.ama dersleri internette bulup indirdim.ordan bakıp yapmaya çalışıcam.
mümkün yapabilirsin, birden fazla yöntemi var. senin için rahat olanı bir sonsuz (while) döngüsü içinde portları kontrol etmek ve aradaki bekleme süresini belirlemek olcaktır.misal. ------------------------ CCS-C ICIN
micro c'de derleyemezsin. PIC C kullanmalısın. ben örnek bir çalışma oldugundan direkt 16F877A için hazırladım. istersen derleyip yollayayım.
ben kod yazmayı öğrenmek istiyorum.yani sizin bana yazdıklarınızı :)).aklıma böle bi fikir geldi acaba olurmu diye yazdım.sizden başka bişi istesem olurmu ??
ilk önce hangi derleyiciyi kullanıcaksın onu belirle. Genel HiTech,PIC-C vs önerirler. Ben PIC-C kullanıyorum. C dilinde ögrenmen senin için daha basit olur. Bir kaynak edin kendine. Eger PIC-C kullanıcaksan Serdar ÇİCEK'in kitabı olan " CCS-C ile PIC Programlama" kitabını alabilirsin. HiTech kullanıcaksan PDF şeklinde internette bir kaynak olacaktı onu indirebilirsin. Sonra ufak ufak uygulamalara bakarak konulara calışarak başla. Takıldıgında yerde yardımcı olacak arkadaşlar cıkar konu vs acarsın.
ilk önce hangi derleyiciyi kullanıcaksın onu belirle. Genel HiTech,PIC-C vs önerirler. Ben PIC-C kullanıyorum. C dilinde ögrenmen senin için daha basit olur. Bir kaynak edin kendine. Eger PIC-C kullanıcaksan Serdar ÇİCEK'in kitabı olan " CCS-C ile PIC Programlama" kitabını alabilirsin. HiTech kullanıcaksan PDF şeklinde internette bir kaynak olacaktı onu indirebilirsin. Sonra ufak ufak uygulamalara bakarak konulara calışarak başla. Takıldıgında yerde yardımcı olacak arkadaşlar cıkar konu vs acarsın.
teşekkür ederim ilgine.takıldığım yerde mutlaka tekrar görüşücez
pic ile böyle animasyonlar yapmak gerçekten çok zevkli oluyor.
öğren meniz gereken komutlar:
set_tris_b(0x00);//b portu çıkış olarak ayarlanıyor yani pice vereceğimiz +5v b portundan çıkacak output_b(0x00);//b portunu temizledik
while(1) // sonsuz döngü oluşturduk
{ output_high(pin_b0);//b0 pininden +5v çıkıyor yani buraya bağlı olan led yanıyor. delay_ms(50);//led 50 milisaniye yanmaya devam ediyor. output_low(pin_b0);//b0 pinindeki enerji kesiliyor yani led sönüyor. delay_ms(50);// 50 milisaniye led sönük kalıyor output_high(pin_b1);//b1 pinindeki led yanıyor delay_ms(50); output_low(pin_b1);//b1 pinindeki enerji kesiliyor.
// while döngüsü sayesinde bu iş sonsuza kadar devam ediyor. // animasyon yapmak için yukarıdaki komutlar işin temeli. // bu komutları kullanarak bir çok animasyon yapa bilirsin. }
örnek olarak kendi yazdığı 1-2 animasyonu vereyim.
------------------------
CCS-C ICIN
------------------------
#include <16f877a.h>
#fuses XT,NOWDT,NOLVP,NOMCLR,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOCPD
#use delay (clock=4000000)
#use fast_io(d)
#use fast_io(b)
#define led1 pin_d0
#define led2 pin_d1
#define led3 pin_b0
#define led4 pin_b1
#define led5 pin_b2
#define led6 pin_b3
#define led7 pin_b4
#define led8 pin_b5
#define led9 pin_b6
#define led10 pin_b7
void main()
{
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_CCP1(CCP_OFF);
setup_CCP2(CCP_OFF);
setup_adc_ports(NO_ANALOGS);
setup_ADC(ADC_OFF);
set_tris_d(0x00);
set_tris_b(0x00);
while(1)
{
output_high(led1);
delay_ms(500);
output_high(led2);
delay_ms(500);
output_high(led3);
delay_ms(500);
output_high(led4);
delay_ms(500);
output_high(led5);
delay_ms(500);
output_high(led6);
delay_ms(500);
output_high(led7);
delay_ms(500);
output_high(led8);
delay_ms(500);
output_high(led9);
delay_ms(500);
output_high(led10);
delay_ms(500);
output_low(led10);
delay_ms(500);
output_low(led9);
delay_ms(500);
output_low(led8);
delay_ms(500);
output_low(led7);
delay_ms(500);
output_low(led6);
delay_ms(500);
output_low(led5);
delay_ms(500);
output_low(led4);
delay_ms(500);
output_low(led3);
delay_ms(500);
output_low(led2);
delay_ms(500);
output_low(led1);
delay_ms(500);
}
}
-------------------------------------
< Bu mesaj bu kişi tarafından değiştirildi slayer_ank -- 9 Şubat 2013; 23:01:01 >
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
ben yazarken siz yazmışsınız.arada saniye farkı var göremedim o yüzden.teşekkür ederim deniyeçeğim ve sonuçu size söliyeçeğim.
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
ben kod yazmayı öğrenmek istiyorum.yani sizin bana yazdıklarınızı :)).aklıma böle bi fikir geldi acaba olurmu diye yazdım.sizden başka bişi istesem olurmu ??
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
kod yazmayı nasıl öğrenebilirim :)) derslerden pek bişi anlamadım açıkcası.ne yapmam gerekir nerden ve nasıl başlamam gerekir?
Bu mesaja 2 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
teşekkür ederim ilgine.takıldığım yerde mutlaka tekrar görüşücez
Bu mesaja 1 cevap geldi. Cevapları Gizle
öğren meniz gereken komutlar:
set_tris_b(0x00);//b portu çıkış olarak ayarlanıyor yani pice vereceğimiz +5v b portundan çıkacak
output_b(0x00);//b portunu temizledik
while(1) // sonsuz döngü oluşturduk
{
output_high(pin_b0);//b0 pininden +5v çıkıyor yani buraya bağlı olan led yanıyor.
delay_ms(50);//led 50 milisaniye yanmaya devam ediyor.
output_low(pin_b0);//b0 pinindeki enerji kesiliyor yani led sönüyor.
delay_ms(50);// 50 milisaniye led sönük kalıyor
output_high(pin_b1);//b1 pinindeki led yanıyor
delay_ms(50);
output_low(pin_b1);//b1 pinindeki enerji kesiliyor.
// while döngüsü sayesinde bu iş sonsuza kadar devam ediyor.
// animasyon yapmak için yukarıdaki komutlar işin temeli.
// bu komutları kullanarak bir çok animasyon yapa bilirsin.
}
örnek olarak kendi yazdığı 1-2 animasyonu vereyim.
output_high(pin_b0);
delay_ms(20);
output_high(pin_b1);
delay_ms(20);
output_high(pin_b2);
delay_ms(20);
output_high(pin_b3);
delay_ms(20);
output_high(pin_b4);
delay_ms(20);
output_high(pin_b5);
delay_ms(20);
output_high(pin_b6);
delay_ms(20);
output_high(pin_b7);
delay_ms(20);
output_low(pin_b0);
delay_ms(20);
output_low(pin_b1);
delay_ms(20);
output_low(pin_b2);
delay_ms(20);
output_low(pin_b3);
delay_ms(20);
output_low(pin_b4);
delay_ms(20);
output_low(pin_b5);
delay_ms(20);
output_low(pin_b6);
delay_ms(20);
output_low(pin_b7);
delay_ms(20);
output_high(pin_b7);
delay_ms(20);
output_high(pin_b6);
delay_ms(20);
output_high(pin_b5);
delay_ms(20);
output_high(pin_b4);
delay_ms(20);
output_high(pin_b3);
delay_ms(20);
output_high(pin_b2);
delay_ms(20);
output_high(pin_b1);
delay_ms(20);
output_high(pin_b0);
delay_ms(20);
output_low(pin_b7);
delay_ms(20);
output_low(pin_b6);
delay_ms(20);
output_low(pin_b5);
delay_ms(20);
output_low(pin_b4);
delay_ms(20);
output_low(pin_b3);
delay_ms(20);
output_low(pin_b2);
delay_ms(20);
output_low(pin_b1);
delay_ms(20);
output_low(pin_b0);
delay_ms(20);
dolarak gidip gelen led animasyonu
--------------------------------------------------------------
kara şimşek
output_high(pin_b0);
delay_ms(20);
output_low(pin_b0);
output_high(pin_b1);
delay_ms(20);
output_low(pin_b1);
output_high(pin_b2);
delay_ms(20);
output_low(pin_b2);
output_high(pin_b3);
delay_ms(20);
output_low(pin_b3);
output_high(pin_b4);
delay_ms(20);
output_low(pin_b4);
output_high(pin_b5);
delay_ms(20);
output_low(pin_b5);
output_high(pin_b6);
delay_ms(20);
output_low(pin_b6);
output_high(pin_b7);
delay_ms(20);
output_low(pin_b7);
output_high(pin_b7);
delay_ms(20);
output_low(pin_b7);
output_high(pin_b6);
delay_ms(20);
output_low(pin_b6);
output_high(pin_b5);
delay_ms(20);
output_low(pin_b5);
output_high(pin_b4);
delay_ms(20);
output_low(pin_b4);
output_high(pin_b3);
delay_ms(20);
output_low(pin_b3);
output_high(pin_b2);
delay_ms(20);
output_low(pin_b2);
output_high(pin_b1);
delay_ms(20);
output_low(pin_b1);
output_high(pin_b0);
delay_ms(20);
output_low(pin_b0);
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu mesaja 1 cevap geldi. Cevapları Gizle
anlamadım :D
Bu mesaja 1 cevap geldi. Cevapları Gizle
Tşkr ederim manasında
Bu mesaja 1 cevap geldi. Cevapları Gizle
rica ederim iyi çalışmalar
< Bu ileti mobil sürüm kullanılarak atıldı > Bu mesaja 1 cevap geldi. Cevapları Gizle