Şimdi Ara

PSoC için yardım !

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
18
Cevap
0
Favori
1.095
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Selam Arkadaşlar,

    PSoC ile bilgisayar arasında seri iletişim kurmak istiyorum ancak konuyla ilgili hiçbir döküman bulamadım ve PSoC ile daha önce hiçbir proje gerçekleştirmedim.
    Şu ana kadar PIC serisi ile çok fazla çalışmış olmama rağmen PSoC'a geçişimde biraz afalladım
    Eğer elinizde uart iletişim için bir döküman veya örnek proje varsa çok işime yarayacaktır.
    PSoC 5.0 ile CY8C29466 çipi ile çalışıyorum ancak PSoC 4.4'e uygun bir döküman veya projede işimi görecektir.

    PSoC konusunda bilgisi olanlar lütfen yardım etsin.



  • CY8C27443 için bir uart örneği
    http://rapid_share.com/files/151339714/R2.rar.html
    _ yi kaldırın!

    unutmadan PC tarafındaki haberleşme, RS232 biliyorsun. PSoC ise sadece protokolu çözebilir yani uart haberleşmesini. bu yüzden PC ile PSoC arasına bir dönüştürücü şart.

    ufak bir not: PSoC uart modülü clock frekansını 8 e bölersen baud rate i bulabilirsin.

    unutmadan örnek uart interrupt ı ile yapılmış...
    kolay gelsin...



    < Bu mesaj bu kişi tarafından değiştirildi r2d2droids -- 6 Ekim 2008; 9:19:14 >
  • cevap için çok sağol.

    birşeyler yaptım ama çalıştıramadım bi türlü.

    yaptıkça yazmaya devam edeceğm. arkadaşlarda faydalanır.
  • istersen proje dosyasını upload ediver. bir göz atalım...
  • http://rapidshare.com/files/153394199/UART_28Pin_PSoCDeveloper_Confugiration_.rar.html

    dosyada çalıştırmak istediğim full proje var.
    çipin 2_0 portu tx 2_1 portu rx kabul ederek bir rs232 level converter devresi ile çalıştımaya uğraşıyorum.
    yanlışım varsa düzeltin ama ilk enerjş aldığında bana welcome ekranını vermesi gerekiyor.
    welcome ekranını sürekli tekrarlaması için while döngüsü içine alarakta denemiştim gerçi.

    ancak gelen giden hiçbirşey yok.
  • http://rapidshare.com/files/153501292/UART_28Pin_PSoCDeveloper_Confugiration_.rar.html
    modifiye ettim denermisin?
    http://rapidshare.com/files/153501432/PSoCEVAL1_Schem.pdf.html
    bahsettiği 3210 eval boardun şematiği de yukarıdaki linkte rs232 bağlantı şeklinide görebilirsin.
    yanlız hyperterminal parametrelerinin
    Bits per second= 19200
    Data bits= 8
    Parity= None
    Stop Bits= 1
    Flow Control= None

    olduğundan emin olmak lazım.
    kolay gelsin...




  • Teşekkürler yardımın için, bu akşam deneyeceğim.
    Çok merak ettim neyi modifiye ettin ?
    Nerede hata yapmışım ?
  • welcome screen c kodlarında tanımlıydı bende C kodlarını aktif ettim. başka bişey yapmadım...
  • kodlarda farklılık göremiyorum.

    nerden yaptın acaba ?
  • header klasörü altında language.inc adlı bir dosya mevcut. C_LANG değişkenini 1 yaparsan program C kodları üzerinden derlenir aksi halde asm kodları geçerlidir...
  • evet, denedim.
    gönderdiğim komutu geri alıyorum.
    yardımın için sağol.

    ama ilk enerji aldığında welcome ekranı bozuk karakterlerle geliyor. sanki baudrate uyuşmuyor gibi ama gönderdiğim komutları almada sıkıntı yaşamıyorum.
  • baudrate den kaynaklanan bir sıkıntı olduğunu düşünüyorsan, buna yol açabilecek nedenlerden biri olan osilatörün kararlı hale gelmesi beklemen lazım. mesala bunun için M8C_EnableGInt ; ifadesinden önce bir gecikme koyabilirsin.
    bunun dışında karakterlerin düzgün gitmesini engelleyecek bir neden aklıma gelmiyor, şimdilik...:(
  • welcome screen'e while döngüsüne verdim ve sürekli bozuk karakter alıyorum.
    sanırım iyi haber değil.
  • peki hangi karakterler bozuk görünüyor???
  • Hepsi

    //----------------------------------------------------------------------------
    // C main line
    //----------------------------------------------------------------------------

    #include <m8c.h> // part specific constants and macros
    #include "PSoCAPI.h" // PSoC API definitions for all User Modules

    void welcomeScreen(void);

    void mainc()
    {
    // Parameter pointer
    char *strPtr;

    // Initialize receiver/cmd buffer
    UART_CmdReset();

    //Enable RX interrupts
    UART_IntCntl(UART_ENABLE_RX_INT);
    //set parity as zero and start the UART
    UART_Start(UART_PARITY_NONE);

    //Turn on interrupts
    M8C_EnableGInt ;

    //Clear the screen in Hyper terminal window
    UART_PutChar(12);
    welcomeScreen();

    while(1) {
    if (UART_bCmdCheck()) { // Wait for command
    if(strPtr = UART_szGetParam()) { // More than delimiter?
    UART_CPutString("\n\rFound valid command\r\nCommand =>");
    UART_PutString(strPtr); // Print out command
    UART_CPutString("<\r\nParamaters:\r\n");

    while(strPtr = UART_szGetParam()) { // loop on each parameter
    UART_CPutString(" <");
    UART_PutString(strPtr); // Print each parameter
    UART_CPutString(">\r\n");
    }
    }
    UART_CmdReset();
    welcomeScreen();
    }
    welcomeScreen();
    }
    }

    void welcomeScreen(void)
    {
    UART_CPutString("\n\rWelcome to PSoC UART test program. V1.0");
    UART_CPutString("\n\rEnter a command and some parameters (delimited by space) and press <ENTER>");
    UART_CPutString("\n\r Eg: foobar aa bbb cc (MAX : 32 chars)");
    UART_CPutString("\n\r");





  • yok canım daha neler.
    parametrelere bakın. com port parametreleri
    Bits per second= 19200
    Data bits= 8
    Parity= None
    Stop Bits= 1
    Flow Control= None
    şeklinde olmalı...
  • evet, haklıymışsın

    max232nin 5vu olmazsa yapar tabi boyle seyler.
  • bu iyi haber. sizden bir kaç soru daha gelir tahminimce çünki PSoC içerisinde daha onlarca boş blok var :)
    kolay gelsin...
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.