Merhabalar arkadaşlar,
Üzerinde çalıştığım projede digital output veren MEMSIC mxd2125g model accelerometer dan aldığım outputun duty cycle high/period oranını ölçerek 2 axis accelerometerin hareketini yorumlamam gerekiyor.Hareketi yorumlayıp ona göre her hareket için berlileyeceğim bir frekansta pwm output verip onu sinüs dalgasına çevirdikten sonra dizayn ettigim 200Mhz de çalışan transmitter ile aracın üstündeki bir diger pice göndericem. Araçtaki pice gelen sinyalin frekansına göre de araç harekete geçicek. PIC16f877 kullanıcam. Fakat önceden pic ile ilgili bir deneyimim yok. Picin registerlarının istenilen sekilde ayarlanıp duty cycle oranını ölçebileceğim örnek kodlarınız veya buna yardımcı olcak kodlarınızı benimle paylaşırsanız sevinirim. Compiler olarak ccs c düşündüm high level programlama assembly e göre daha kolay oldugu için. Daha önce M68HC11 de assembly kullanarak projeler yapmıştım. Sonuca ulaşabilmem için her fikre ve tavsiyeye açığım, şimdiden fikirleriniz için teşekkür ederim.
Daha önce bir projede yazdığım PWM oluşturma ve analog veri okuma fonksiyonları. Umarım işine yarar.
Kullanılan compiler : Hi-tech C compiler
mikrokontrolör : pic16f877
Aşağıdaki fonksiyonlarda yazılan terimler (PR2, CCPR1L vs..) registerlar olup datasheetten bu registerların ne işe yaradığına bakarak bazı ayarları değiştirebilirsin.
aşağıdaki fonksiyonlar duty cycle'ı yüzde olarak gönderdiğin bir PWM fonksiyonu ve pindeki analog veriyi 0-5 V arasında ölçen 10 bit çözünürlükte(0 1023 arasında) değerler alan, değerini 0-5 arasında float olarak döndüren bir ADC fonksiyonudur.