PIC18F4550 Usb HID Lcd & Led Uygulaması (CCS C)

Konu Sah

tmcone

Üye
Katılım
27 Nis 2008
Mesajlar
7
Puanları
1
Microchip USB Bootloader'ı kullanabilirsin. Microchip USB kütüphanesinde örnekler de var.
 

vivaas

Üye
Katılım
28 Eyl 2009
Mesajlar
7
Puanları
1
Yaş
35
yalnız hocam direk usb ile usb kablosu olucak dönüştürücü falan olmucak kabloda..öyle oluyor deil mi:)
 

mxmurat

Üye
Katılım
15 Kas 2009
Mesajlar
4
Puanları
1
PC tarafinda ne yapiyoruz, ben bunu bilemedim.
kodu islemciye yukleyip devreyi usb kablo ile pcye baglayinca
is bitiyor mu?

tesekkurler
 

mxmurat

Üye
Katılım
15 Kas 2009
Mesajlar
4
Puanları
1
ayrica DSN dosyalar hangi versiyonla cizildi?
 

cyberengr

Üye
Katılım
6 Kas 2008
Mesajlar
11
Puanları
1
Yaş
38
arkadaşlar bütün interneti aradım ama artık istediğimi bulamadığım için pes ettim yalvarırım yardım edin.
kullandığım pic dili: ccs c
kullandığım pc dili: c#
bu iki dili kullanarak usb ile pic 18f4550 ile bilgisayar arasında veri aktarımı yapmak istiyorum işin ccs c kısmı zaten var program örnek kodlar veriyo ama işin c# yönünü bir türlü yapamadım yada bulamadım bulsam bile bağlayamadım.
lütfen bu konuda yardım eder misiniz.
 

emir28

Üye
Katılım
30 Eyl 2010
Mesajlar
9
Puanları
1
Yaş
35
Benim tezimdede zaten pici ilk programlarken programlayıcıyla yazılımı atıcam(1 defaya mahsus) sonrasında ise,pici devreden çıkarmadan picin içindeki yazılımı istediğim zaman değiştirebilmek.Tabi bunuda yaparken usb veri iletişimini kullanıcaz.örnek bu projede olduğu gibi..
Bu projenin denendiğini söyledi arkadaş ama işte benim sıkıntım ise pici yeniden programlamak..

senin bahsettiğin devre ......'da vardı ama ben bulamadım biraz araştırırsan bulacağına eminim fakat........ta olan yanılmıyorsam usb li değil di ama yinde de denemeye değer ;) kolay gelsin
 
Moderatör tarafında düzenlendi:

alpayelmas

Üye
Katılım
21 Ağu 2010
Mesajlar
5
Puanları
1
Yaş
41
merhaba usbhid ile ilgili easyhid konulu bırseyler anlatabılecek bırılerı yokmu?
ben rf olarak sadece 255 sayısına kadar gonderebılıyorum dırek 18f4550 ıle yada 2550 ıle rf olarak 16 bir yazı harf sayı gıbı verılerı gonderıp karsı tarafta bır rf alıcı vasıtası ıle işlemek ıstıyorum yardımcı olurmusunuz role acıp kapanmaktan usandım artık...
 

alpayelmas

Üye
Katılım
21 Ağu 2010
Mesajlar
5
Puanları
1
Yaş
41
ben kötü olmuş demedim ellerinize sağlık sadece detaylı bir easyhid anlatan kaynak bulamadım onun sitemini yaptım sadece
 

dnz_1905

Üye
Katılım
24 Haz 2009
Mesajlar
1
Puanları
1
Yaş
33
Tmcone hocam, öncelikle eline sağlık. Bitirme projemin haberleşme kısmını USB ile yapacağım. USB'yi anlamak ve basit bir giriş yapmak için ledlerle bir uygulama yaptım.

Kırmızı Led yanarken, USB kablosu takılı değil
Sarı Led yanarken, USB kablosu takılı fakat bilgisayar tanımıyor(!enumerated)
Yeşil Led ise USB takılı ve cihaz bilgisayar tarafından tanındı.

Proteusta yazdığım kod çalışıyor ancak devreyi kurduğum zaman bir türlü çalıştıramadım. VUSB bacağına 470nF bağladım, 20Mhz osilatör ve 15pf kapasitör kullandım. Ancak nedense kabloyu bilgisayara taktığımda, bilgisayardan hiçbir tepki gelmedi. Sebebi ne olabilir?

Yazdığım kod:
Kod:
#include <18F4550.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,NOPBADEN
#use delay (clock=48000000)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
#DEFINE USB_HID_DEVICE  true

#define USB_EP1_TX_ENABLE  USB_ENABLE_INTERRUPT   //turn on EP1 for IN bulk/interrupt transfers
#define USB_EP1_TX_SIZE    8  //allocate 8 bytes in the hardware for transmission

//the following defines needed for the CCS USB PIC driver to enable the RX endpoint 1
// and allocate buffer space on the peripheral
#define USB_EP1_RX_ENABLE  USB_ENABLE_INTERRUPT   //turn on EP1 for OUT bulk/interrupt transfers
#define USB_EP1_RX_SIZE    8  //allocate 8 bytes in the hardware for reception

#include <pic18_usb.h>
#include <USB.H>
#include <usb_desc_hid.h>
#include <usb.c>
#define USB_CON_SENSE_PIN PIN_B2
#define usb_attached() input(USB_CON_SENSE_PIN)


#use fast_io(d)
int8 x;


void main()
{

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(SPI_SS_DISABLED);
   setup_wdt(WDT_OFF);
   setup_timer_0(RTCC_INTERNAL);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);
//Setup_Oscillator parameter not selected from Intr Oscillotar Config tab

   // TODO: USER CODE!!
   set_tris_d(0x00);
   output_d(0x00);
   usb_init();
   x=0;
     
   while(1)
   {
    
     usb_task();  
    
      if(usb_attached() && usb_enumerated())
     {
        output_d(0x01); 
        
     }
            
     else if(usb_attached() && !usb_enumerated())
     {
        output_d(0x04);
        
     }
     else if(!usb_attached())
     {
        output_d(0x02);   
     
     }  
         
   
   }
   
   
   
   

}


Yardımcı olursanız sevinirim.:)
 

Forum istatistikleri

Konular
122,961
Mesajlar
868,191
Kullanıcılar
440,386
Son üye
moskowitz

Yeni konular

Çevrimiçi üyeler

Üst