NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 4081 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 13 از 13

موضوع: mplab c18 یا xc8 مسئله این است!!!

  1. #1
    عضو جدید
    تاریخ عضویت
    Jun 2011
    نوشته ها
    14
    تشکر
    16
    تشکر شده 3 بار در 3 پست

    پیش فرض mplab c18 یا xc8 مسئله این است!!!

    سلام
    سلام
    ميخوام با استفاده از ميکرو کنترلر pic18f452 يک عدد lcd 2*16 رو در فرکانس کاري 4MHz راه اندازي کنم. کد زير رو نوشتم. ولي متاسفانه کار نميکنه! در حالت 4 بتيي و روي پورت b راه اندازي کردم . وقتي دستورات lcd رو حذف ميکنم led روشن ميشه اما وقتي هست نه lcd چيزي نشون ميده و نه led روشن ميشه. ممنون ميشم سريع راهنمايي کنيد. کارم فوريه. ممنون.
    یه سوال دیگه، آیا در حال حاضر مهاجرت به XC8 کار عاقلانه ای است یا خیر؟
    [PHP]#include <xc.h>
    #include <delays.h>
    #include "xlcd/xlcd.h"

    #define _XTAL_FREQ 4000000

    #pragma config OSC=HS
    #pragma config OSCS=OFF
    #pragma config BOR=OFF
    #pragma config PWRT=OFF
    #pragma config WDT=OFF

    void DelayFor18TCY(void)
    {
    _delay(18);
    }

    void DelayPORXLCD()
    {
    _delay(5000);
    _delay(5000);
    _delay(5000);
    }

    void DelayXLCD()
    {
    _delay(5000);
    }

    int main()
    {
    OpenXLCD(FOUR_BIT & LINES_5X7);
    while( BusyXLCD() );
    putrsXLCD("Hello!");
    while( BusyXLCD() );
    _delay(5000);
    while(1)
    {

    TRISDbits.RD0=0;
    PORTDbits.RD0=1;
    __delay_ms(50);
    __delay_ms(50);
    __delay_ms(50);
    PORTDbits.RD0=0;
    __delay_ms(50);
    __delay_ms(50);
    __delay_ms(50);
    }

    }

    [/PHP]
    ویرایش توسط ali_invention : 21-01-2013 در ساعت 20:52

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    دوست عزیز پورت w/R ال سی دی را حتما به میکرو وصل کن درست میشه

  4. #3
    عضو جدید
    تاریخ عضویت
    Jun 2011
    نوشته ها
    14
    تشکر
    16
    تشکر شده 3 بار در 3 پست

    پیش فرض

    نقل قول نوشته اصلی توسط amin1139 نمایش پست ها
    دوست عزیز پورت w/R ال سی دی را حتما به میکرو وصل کن درست میشه
    ممنون از توجهتون پورت R\w به میکرو وصله.

  5. #4
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    پس ال سی دیت خراب هست یا اشتباه وصل کردین پایه هاشو مدارتو بزار تو پروتئوس چکش کن اگه کار نکرد عکسشو بزار تا بهت بگم چیکار کنی
    دوستار شما
    امین

  6. #5
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    پس ال سی دیت خراب هست یا پایه هاشو اشتباه وصل کردین. مدارتو بزار تو پروتئوس چکش کن اگه کار نکرد عکسشو بزار تا بهت بگم چیکار کنی
    دوستار شما
    امین

  7. #6
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    راستی با چه کامپایلری نوشتی؟

  8. #7
    عضو جدید
    تاریخ عضویت
    Jun 2011
    نوشته ها
    14
    تشکر
    16
    تشکر شده 3 بار در 3 پست

    پیش فرض

    نقل قول نوشته اصلی توسط amin1139 نمایش پست ها
    پس ال سی دیت خراب هست یا پایه هاشو اشتباه وصل کردین. مدارتو بزار تو پروتئوس چکش کن اگه کار نکرد عکسشو بزار تا بهت بگم چیکار کنی
    دوستار شما
    امین
    دوست عزیزم من تو پروتئوس دارم شبیه سازی رو انجام میدم. هنوز مدار رو با سخت افزار نبستم. هم با c18 هم با xc8 کامپایل کردم با هیچکدوم جواب نداد.
    با احترام
    ویرایش توسط ali_invention : 22-01-2013 در ساعت 00:42

  9. #8
    عضو جدید
    تاریخ عضویت
    Sep 2012
    نوشته ها
    15
    تشکر
    9
    تشکر شده 29 بار در 11 پست

    پیش فرض

    نقل قول نوشته اصلی توسط ali_invention نمایش پست ها
    دوست عزیزم من تو پروتئوس دارم شبیه سازی رو انجام میدم. هنوز مدار رو با سخت افزار نبستم. هم با c18 هم با xc8 کامپایل کردم با هیچکدوم جواب نداد.
    با احترام
    درود بر شما
    دوست عزیز ال سی دی های کاراکتری ، وقتی در مد ۴ بیتی ازشون استفاده میکنید ، توسط نیبل بالایی خط دیتا ، اطلاعات رو دریافت میکنند ، خطوط دیتا رو به پایه ی دی ۴ تا دی ۷ وصل کنید

  10. کاربران : 3 تشکر کرده اند از شما Edison برای ارسال این پست سودمند:


  11. #9
    عضو جدید
    تاریخ عضویت
    Jun 2011
    نوشته ها
    14
    تشکر
    16
    تشکر شده 3 بار در 3 پست

    پیش فرض

    نقل قول نوشته اصلی توسط Edison نمایش پست ها
    درود بر شما
    دوست عزیز ال سی دی های کاراکتری ، وقتی در مد ۴ بیتی ازشون استفاده میکنید ، توسط نیبل بالایی خط دیتا ، اطلاعات رو دریافت میکنند ، خطوط دیتا رو به پایه ی دی ۴ تا دی ۷ وصل کنید
    والا اینجا دکمه یک ملیون بار تشکر وجود نداره وگرنه براتون استفاده میکردم. خیلی ممنون الان ال سی دی دیتا میگیره ولی از کلمه Hello فقط چرا H رو نشون میده!؟

  12. #10
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    سلام ظاهرا دوستان مشکلو حل کردن ببخشید که من دیر کردم
    برای hello یک بار پنج تا دستور بنویس و هر بار یکی از حرفاشو نمایش بده .
    کامپایلر برای نوشتن hello پس از ارسال هر دستور متاسفانه چک نمیکنه که ال سی دی حاضر برای ارسال هست یا نه شما باید حرف به حرف بفرستی و هر بار با while چک کنی که ال سی دی حاضر شده یا نه
    کد:
     	 	 		 			 				while( BusyXLCD() );
        putrsXLCD("H");
    while( BusyXLCD() );
        putrsXLCD("e");
    while( BusyXLCD() );
        putrsXLCD("l");
    while( BusyXLCD() );
        putrsXLCD("l");
    while( BusyXLCD() );
        putrsXLCD("o");
    ویرایش توسط amin1139 : 23-01-2013 در ساعت 11:10

  13. #11
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    مثلا:

    while( BusyXLCD() );
    putrsXLCD("H");
    while( BusyXLCD() );
    putrsXLCD("e");
    while( BusyXLCD() );
    putrsXLCD("l");
    while( BusyXLCD() );
    putrsXLCD("l");
    while( BusyXLCD() );
    putrsXLCD("o");
    )

  14. تشکرها از این نوشته :


  15. #12
    کاربر فعال
    تاریخ عضویت
    May 2011
    نام
    امین
    نوشته ها
    253
    تشکر
    91
    تشکر شده 123 بار در 101 پست

    پیش فرض

    کد:
    while( BusyXLCD() );
        putrsXLCD("H");
    while( BusyXLCD() );
        putrsXLCD("e");
    while( BusyXLCD() );
        putrsXLCD("l");
    while( BusyXLCD() );
        putrsXLCD("l");
    while( BusyXLCD() );
        putrsXLCD("o");

  16. تشکرها از این نوشته :


  17. #13
    تازه وارد
    تاریخ عضویت
    Feb 2013
    نوشته ها
    2
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض

    ببخشید فکر می کنم adcon1=7کنید درست می شه نیازی به دستورات بالا نیست
    کد:
    g
    
      
    #include <p18f4550.h>
    #include <xlcd.h>
    #include <delays.h>
    #include <usart.h>
    #include <stdio.h>
    #include <stdlib.h>
    #define delay_ms(x) Delay10KTCYx(x)
    void DelayFor18TCY( void )
    {
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    Nop();
    }
    void DelayPORXLCD (void)
    {
    Delay1KTCYx(60); // Delay of 15ms
    // Cycles = (TimeDelay * Fosc) / 4
    // Cycles = (15ms * 16MHz) / 4
    // Cycles = 60,000
    return;
    }
    void DelayXLCD (void)
    {
    Delay1KTCYx(20); // Delay of 5ms
    // Cycles = (TimeDelay * Fosc) / 4
    // Cycles = (5ms * 16MHz) / 4
    // Cycles = 20,000
    return;
    }
    void main( void )
    {
    unsigned int i=500;
    char str[5];
    ADCON1=7;
    OpenXLCD( FOUR_BIT & LINES_5X7 );
    while (1){
    WriteCmdXLCD(1 );
    putrsXLCD("hello");
    delay_ms(10);
    }
    }
    ویرایش توسط saber1010 : 25-02-2013 در ساعت 19:16

موضوعات مشابه

  1. [سوال] فرق mplab IDE با mplab X
    توسط sadeghbakhshi در انجمن PIC
    پاسخ: 1
    آخرين نوشته: 02-03-2014, 07:24
  2. دانلود MPLAB IDE v8.56
    توسط stabesh در انجمن پرسش و پاسخ (نرم افزارهای تخصصی)
    پاسخ: 7
    آخرين نوشته: 07-10-2013, 21:38
  3. Mplab
    توسط lpln852 در انجمن PIC
    پاسخ: 6
    آخرين نوشته: 25-06-2013, 19:57
  4. mplab
    توسط melectronics در انجمن مقالات،آموزش هاوپایان نامه ها
    پاسخ: 0
    آخرين نوشته: 14-08-2007, 13:49

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •