Merhaba arkadaşlar bilgisayar mühendisliği öğrencisiyim ve mikroişlemciler labı için verilen bir ödevim var. PIC16F877 ve assembly kullanarak bir proje yapmam isteniyor daha önce assembly ve proteus kullandım ancak hiç reel olarak kullanmadım bu sefer PIC16F877 kullanacağız ve led yakmaysa gerçek bir led yakacağız bu konuda kafam çok karışık bana ne yapacağımı detaylı anlatabilecek olanınız varsa çok sevinirim
Havya, delikli pcb, lehim, pasta, kablo, Pic Programlayıcı
ve çizimini yaptığınız devredeki malzemeleri temin ediniz.
Çizdiğiniz şemaya göre devre elemanlarını kablo ile birleştiriniz.
Ben pcb yi kendim yaparım derseniz; delikli pcb yerine bakırlı
pcb alırsınız. Çizim programında yaptığınız devreyi çıkartırsınız.
Deliklerini deler, malzemeleri yerleştirip lehimlersiniz.
Kolay gelsin...
Pic beslemesinin filtresine özen göstermeniz gerek. 5V bir kaynakla besleyin, devre kartına en azından 330uF gibi bir kondansatör ve pic'in besleme bacaklarına devrenin altından direkt olarak 100nF bir kondansatör kullanmak iyi olur. Reset ucunu 4.7k gibi bir dirençle +5v'a çekmeniz gerek. Ayrıca kristali de xtal pinlerine yakın koymak iyi olur. Besleme ve kristal proteusta simülasyona katılmıyor bu yüzden devre gerçeklendiğinde bu ikisi sorun çıkarabilir.
Alıntı yapılan: mehmet - 24 Aralık 2015, 19:29:55
Havya, delikli pcb, lehim, pasta, kablo, Pic Programlayıcı
ve çizimini yaptığınız devredeki malzemeleri temin ediniz.
Çizdiğiniz şemaya göre devre elemanlarını kablo ile birleştiriniz.
Ben pcb yi kendim yaparım derseniz; delikli pcb yerine bakırlı
pcb alırsınız. Çizim programında yaptığınız devreyi çıkartırsınız.
Deliklerini deler, malzemeleri yerleştirip lehimlersiniz.
Kolay gelsin...
cevabınız için çok teşekkürler. bizim yapacağımız şey biraz daha basit birşey henüz 2 haftadır küçük küçük projeler yapıyoruz projeden kastım mesela örneğin portta bulunan 2. bitdedeki butona basıldığında ilk 4 led çekildiğinde son 4 led yansın. ve sadece kodu yazacakmışız
bu tarz bir projeye ihtiyacım var hazır kod arayışına girdim sizin önerebileceğiniz birşey varmıdır
Merhaba,
Mühendislik okuyan genç bir arkadaşın "hazır kod arayışına girdim" şeklindeki yaklaşımı biraz üzücü,nedenini sorarsanız konuya tam hakim olmadan hazır kodlarla bir yere varmaya imkan yoktur.Zaman ve efor kaybı olmasın diye ŞABLON kodları vereyim.Ama yine de TRIS komutlarını ve BCF BSF lerin neyi ifade ettiğini anlamadan çalışmak oldukça zordur.Hele dil asm de olunca işler karışır.(aslında asm dili bana göre kullanılması ve de uygulaması en kolay yazılım dilidir.) :)
LIST P=16F877
#INCLUDE <P16F877.INC>
_CONFIG_CP_OFF_PWRTE_ON_BODEN_ON_XT_OSC_LVP_OFF_CPD_OFF_DEBUG_OFF
;**************
SAYAC1 EQU H'10'
SAYAC2 EQU H'11'
;**************
BSF STATUS,5
CLRF TRISA
MOVLW B'000000'
MOVWF PORTA
CLRF TRISB
MOVLW B'00000000'
MOVWF PORTB
CLRF TRISC
MOVLW B'00000000'
MOVWF PORTC
CLRF TRISD
MOVLW B'00000000'
MOVWF PORTD
CLRF TRISE
MOVLW B'000'
MOVWF PORTE
BCF STATUS,5
;****************
BASLA
GOTO BASLA
;****************
BEKLE1
MOVLW H'FF'
MOVWF SAYAC1
DONGU1
MOVLW H'FF'
MOVWF SAYAC2
DONGU2
DECFSZ SAYAC2,F
GOTO DONGU2
DECFSZ SAYAC1,F
GOTO DONGU1
RETURN
END
BASLA ve GOTO BASLA arasına yaptırmayı istediğiniz eylemi yazabilirsiniz.
Alıntı yapılan: kudretuzuner - 26 Aralık 2015, 14:26:27
Merhaba,
Mühendislik okuyan genç bir arkadaşın "hazır kod arayışına girdim" şeklindeki yaklaşımı biraz üzücü,nedenini sorarsanız konuya tam hakim olmadan hazır kodlarla bir yere varmaya imkan yoktur.Zaman ve efor kaybı olmasın diye ŞABLON kodları vereyim.Ama yine de TRIS komutlarını ve BCF BSF lerin neyi ifade ettiğini anlamadan çalışmak oldukça zordur.Hele dil asm de olunca işler karışır.(aslında asm dili bana göre kullanılması ve de uygulaması en kolay yazılım dilidir.) :)
LIST P=16F877
#INCLUDE <P16F877.INC>
_CONFIG_CP_OFF_PWRTE_ON_BODEN_ON_XT_OSC_LVP_OFF_CPD_OFF_DEBUG_OFF
;**************
SAYAC1 EQU H'10'
SAYAC2 EQU H'11'
;**************
BSF STATUS,5
CLRF TRISA
MOVLW B'000000'
MOVWF PORTA
CLRF TRISB
MOVLW B'00000000'
MOVWF PORTB
CLRF TRISC
MOVLW B'00000000'
MOVWF PORTC
CLRF TRISD
MOVLW B'00000000'
MOVWF PORTD
CLRF TRISE
MOVLW B'000'
MOVWF PORTE
BCF STATUS,5
;****************
BASLA
GOTO BASLA
;****************
BEKLE1
MOVLW H'FF'
MOVWF SAYAC1
DONGU1
MOVLW H'FF'
MOVWF SAYAC2
DONGU2
DECFSZ SAYAC2,F
GOTO DONGU2
DECFSZ SAYAC1,F
GOTO DONGU1
RETURN
END
BASLA ve GOTO BASLA arasına yaptırmayı istediğiniz eylemi yazabilirsiniz.
haklısınız tabi ancak 2 haftadır assmbly gösteriliyor okulumuz kampüs değiştirdiği için dönem sonuna kadar doğru düzgün ders işlenmedi ve ben pazartesi gününe veri tabanı projesi ve tez yetiştirmeye çalışıyorum bu gece vaktim olursa biraz çalışmayı planlıyorum çok teşekkürler
Kardeşim Selamunaleyküm, bende senin gibi bu tarz şeylerde yeniyim sanırım kendimi biraz geliştirdim bu konularda.
Arkadaşlarında dediği gibi hazır kodlarla bir yere varamazsın,kendini çabuk geliştirmek istiyorsan pıc programlama kitaplarını okuyarak hem pıc'in hemde onu
programlamanın mantığını anlarsın. Sana çok büyük bir tavsiye vermek istiyorum algoritma yapmadan programlamaya başlama şimdiden kendini algoritmaya alıştır. Algoritma yapan (akış diyagramı) ile yapmayan arasında büyük uçurum vardır. Hayırlı çalışmalar...
Alıntı yapılan: mehmetcan129 - 31 Aralık 2015, 20:37:52
Kardeşim Selamunaleyküm, bende senin gibi bu tarz şeylerde yeniyim sanırım kendimi biraz geliştirdim bu konularda.
Arkadaşlarında dediği gibi hazır kodlarla bir yere varamazsın,kendini çabuk geliştirmek istiyorsan pıc programlama kitaplarını okuyarak hem pıc'in hemde onu
programlamanın mantığını anlarsın. Sana çok büyük bir tavsiye vermek istiyorum algoritma yapmadan programlamaya başlama şimdiden kendini algoritmaya alıştır. Algoritma yapan (akış diyagramı) ile yapmayan arasında büyük uçurum vardır. Hayırlı çalışmalar...
aleyküm selam kardeşim. aslında haklsınız yalnız şöyle bir nokta var ödevi veren hoca bu hafta yanına gittiğimde bana internette hazır bir sürü proje var birini getir dedi. kodu pice atıp devreyi yapıp çalıştırıcaz kod üzerinde bu ne bu ne diye soracak. mesela diyecekki clrf napıyo movlw napıyo. bunlarıda zaten biliyorum ancak hazır bir kod bulamadım ne yazıkki bu gece sabahlıycam artık. projemi şu şekilde belirledim sırayla 8 tane ledi yakacak.(pic16f877) nerden çalışmamı önerirsin vede sence kaç saat çalışsam bunu yazabilirim