اطلاعیه

Collapse
No announcement yet.

lcd

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    lcd

    با سلام
    من میخوام اسم خودمو با میکروی arm روی lcd کاراکتری نشان بدم ولی بعد از کامپایل کردن برنامه پیغام زیر رو نشون میده مشکل از کجاست؟
    reza.c(2): error: #5: cannot open source input file "lcd.h": No such file or directory
    انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

    #2
    پاسخ : lcd

    نوشته اصلی توسط reza kazemi1368
    با سلام
    من میخوام اسم خودمو با میکروی arm روی lcd کاراکتری نشان بدم ولی بعد از کامپایل کردن برنامه پیغام زیر رو نشون میده مشکل از کجاست؟
    reza.c(2): error: #5: cannot open source input file "lcd.h": No such file or directory
    چند تا تاپیک برای یک موضوع درست کردی :eek:
    جوابشو تو اون یکی دادم


    موفق باشی
    کاری ندارم این وری هستی یا اون وری چپی یا راست
    همیشه ایرانی باش و به ایرانی بودنت افتخار کن
    ایران و هیچ وقت تنها نزار
    اگه خدا رو قبول داری اجرت با خدا

    دیدگاه


      #3
      پاسخ : lcd

      با سلام
      من با include "lcd.h"# زدم نشد دوباره همون پیغامو داد
      انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

      دیدگاه


        #4
        پاسخ : lcd

        سلام
        فایل lcd.h رو تو پوشه inc/philips کپی کن و این فایل رو به پروژه اضافه کن
        موفق باشی
        شما زندگی می کنید من بازی میکنم، زندگی شما را; زندگی بازی خدا و یک عروسکِ گِلی ست

        دیدگاه


          #5
          پاسخ : lcd

          نوشته اصلی توسط reza kazemi1368
          با سلام
          من با include "lcd.h"# زدم نشد دوباره همون پیغامو داد
          سلام
          دوست من فایل lcd رو تو جایی که برنامت قرار داره قرار دادی ؟
          یعنی فایل lcd ی رو تو مسیری که برنامت رو ایجاد کردی قرار بده
          اگر باز درست نشد فایل برنامت رو بزار تا بررسی شه
          اینطوری وقتت گرفته نمی شه

          موفق باشی
          موفق باشی
          کاری ندارم این وری هستی یا اون وری چپی یا راست
          همیشه ایرانی باش و به ایرانی بودنت افتخار کن
          ایران و هیچ وقت تنها نزار
          اگه خدا رو قبول داری اجرت با خدا

          دیدگاه


            #6
            پاسخ : lcd

            نوشته اصلی توسط eMicro
            سلام
            فایل lcd.h رو تو پوشه inc/philips کپی کن و این فایل رو به پروژه اضافه کن
            موفق باشی
            فایل lcd.h رو از کجا بیارم
            انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

            دیدگاه


              #7
              پاسخ : lcd

              نوشته اصلی توسط reza kazemi1368
              فایل lcd.h رو از کجا بیارم
              مگه یک هیدر برای lcd درست نکردی ؟
              منظور همونه


              موفق باشی
              کاری ندارم این وری هستی یا اون وری چپی یا راست
              همیشه ایرانی باش و به ایرانی بودنت افتخار کن
              ایران و هیچ وقت تنها نزار
              اگه خدا رو قبول داری اجرت با خدا

              دیدگاه


                #8
                پاسخ : lcd

                نوشته اصلی توسط MG.
                مگه یک هیدر برای lcd درست نکردی ؟
                منظور همونه


                موفق باشی
                سلام عزیز
                شرمنده اینقد خنگ بازی در میارم مگه فایله هیدر رو باید خودمون درست کنیم ؟ مگه تو برنامه keil این فایل به صورت آماده وجود نداره؟ اگه وجود نداره چطوری درستش کنم ؟ در این رابطه برام توضیح بیشتری بده ممنونم :cry:
                انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

                دیدگاه


                  #9
                  پاسخ : lcd

                  نوشته اصلی توسط reza kazemi1368
                  سلام عزیز
                  شرمنده اینقد خنگ بازی در میارم مگه فایله هیدر رو باید خودمون درست کنیم ؟ مگه تو برنامه keil این فایل به صورت آماده وجود نداره؟ اگه وجود نداره چطوری درستش کنم ؟ در این رابطه برام توضیح بیشتری بده ممنونم :cry:
                  سلام
                  نه دوست من این که کدویژن نیست
                  باید خودت توابع رو بنویسی
                  مگر توابع پایه که هر کامپایلری داره
                  خیلی ساده بگم باید خودت مثل اسمبلی بیای یک تابع برای lcd بنویسی (به صورت هیدر فایل یا اصلا تو برنامه اصلی)
                  فقط فرقش اینه که با c می نویسی

                  این تایپیکم رو نگاه کن شاید راه افتادی
                  http://www.eca.ir/forum2/index.php?topic=55499.0
                  برنامه برای lcd هست اما برای سری lpc23xx

                  موفق باشی
                  کاری ندارم این وری هستی یا اون وری چپی یا راست
                  همیشه ایرانی باش و به ایرانی بودنت افتخار کن
                  ایران و هیچ وقت تنها نزار
                  اگه خدا رو قبول داری اجرت با خدا

                  دیدگاه


                    #10
                    پاسخ : lcd

                    سلام
                    به تاپیک های زیر یه سری بزن

                    http://www.eca.ir/forum2/index.php?topic=59024.0
                    http://www.eca.ir/forum2/index.php?topic=48426.msg250742#msg250742
                    http://www.eca.ir/forum2/index.php?topic=43562.0
                    http://www.iranmicro.ir/forum/showthread.php?t=4631
                    http://www.iranmicro.ir/forum/showthread.php?t=3263
                    http://www.iranmicro.ir/forum/showthread.php?t=5013
                    http://www.iranmicro.ir/forum/showthread.php?t=4633

                    شما زندگی می کنید من بازی میکنم، زندگی شما را; زندگی بازی خدا و یک عروسکِ گِلی ست

                    دیدگاه


                      #11
                      پاسخ : lcd

                      این هدر رو جناب آقایی فر نوشتن من قبلا اینو تست کردم و ازش جواب گرفتم

                      کد:
                      /*Interfacing Lcd in 4bit mode with LPC2138
                      By ; Ali Aghayifar
                      mail : admin@bioemm.com
                      Code:*/
                      #include<lpc21xx.h>
                      #define pin_rs 1<<24 /*lcd rs pin*/
                      #define pin_rw 1<<23 /*lcd rw pin*/
                      #define pin_en 1<<22 /*lcd en pin*/
                      #define pin_ctrl pin_rs|pin_rw|pin_en /*lcd control pins*/
                      #define lcd_d4 1<<10 /*lcd data pins D4,D5,D6,D7*/
                      #define lcd_d5 1<<11
                      #define lcd_d6 1<<12
                      #define lcd_d7 1<<13
                      #define lcd_data lcd_d4|lcd_d5|lcd_d6|lcd_d7
                      #define lcd_rs(x) ((x)?(IOSET1=pin_rs):(IOCLR1=pin_rs)); /*lcd_rs(x) if x=1 will set the lcd_rs pin will clear if x=0*/
                      #define lcd_rw(x) ((x)?(IOSET1=pin_rw):(IOCLR1=pin_rw));
                      #define lcd_en(x) ((x)?(IOSET1=pin_en):(IOCLR1=pin_en));
                      #define data_in ((IOPIN0>>10)&(0x0F)) /*direction of the data pins as input*/
                      #define data_out(x) IOCLR0=lcd_data; IOSET0=(x & 0x0F)<<10; /*direction of the data pins and control pins
                      as output*/
                      #define lcd_all_dir_out IODIR0 |= lcd_data ; IODIR1 |= pin_ctrl; /*setting as output for both data and control pins*/
                      #define lcd_dir_data_out IODIR0 |= lcd_data
                      #define lcd_dir_data_in IODIR0 &= ~(lcd_data)
                      #define delay_2n 4
                      static void delay(int);
                      static unsigned char busy_wait();
                      static void delay(int cnt)
                      {
                      cnt <<= delay_2n;
                      while(cnt--);
                      }
                      static unsigned char busy_wait()
                      {
                      unsigned char status;
                      do
                      {
                      lcd_dir_data_in;
                      delay(10);
                      lcd_rs(0);
                      delay(10);
                      lcd_rw(1);
                      delay(10);
                      lcd_en(1);
                      delay(10);
                      status= (data_in<<4)&(0xF0);
                      lcd_en(0);
                      delay(10);
                      lcd_en(1);
                      delay(10);
                      status |=data_in;
                      lcd_en(0);
                      delay(10);
                      lcd_dir_data_out;
                      delay(10);
                      }while(status & 0x80);
                      return (status);
                      }
                      void lcd_write_4bit(unsigned char c)
                      {
                      lcd_rw(0);
                      delay(10);
                      lcd_en(1);
                      delay(10);
                      data_out(c & 0x0F);
                      delay(10);
                      lcd_en(0);
                      delay(10);
                      }
                      void lcd_cmd_write(unsigned char c)
                      {
                      busy_wait();
                      lcd_rs(0);
                      delay(10);
                      lcd_write_4bit(c>>4);
                      lcd_write_4bit(c);
                      }
                      static void lcd_data_write(unsigned char c)
                      {
                      busy_wait();
                      lcd_rs(1);
                      delay(10);
                      lcd_write_4bit(c>>4);
                      lcd_write_4bit(c);
                      }
                      void lcd_putchar(char c)
                      {
                      lcd_data_write(c);
                      }
                      void lcd_init()
                      {
                      lcd_all_dir_out;
                      delay(10);
                      lcd_rs(0);
                      lcd_write_4bit(0x3);
                      delay(10);
                      lcd_write_4bit(0x3);
                      delay(10);
                      lcd_write_4bit(0x3);
                      lcd_write_4bit(0x2);
                      lcd_cmd_write(0x28);
                      lcd_cmd_write(0x0C);
                      lcd_cmd_write(0x06);
                      }
                      int lcd_gotoxy( unsigned int x, unsigned int y)
                      {
                      int retval = 0;
                      if( (x > 1) && (y > 15) )
                      {
                      retval = -1;
                      } else {
                      if( x == 0 )
                      {
                      lcd_cmd_write( 0x80 + y ); /* command - position cursor at 0x00 (0x80 + 0x00 ) */
                      } else if( x==1 ){
                      lcd_cmd_write( 0xC0 + y ); /* command - position cursor at 0x40 (0x80 + 0x00 ) */
                      }
                      }
                      return retval;
                      }
                      void lcd_clear()
                      {
                      lcd_cmd_write(0x01);
                      lcd_gotoxy(0,0);
                      }
                      void lcd_print(unsigned char const *str)
                      {
                      while(*str)
                      {
                      lcd_putchar(*str++);
                      }
                      }
                      این هم توضیحات آقای آقایی فر برای راه اندازی lcd

                      سلام برای راه اندازی 4 بیتی lcd کارکتری می تونید فایل هدرزیر رو به برنامه تون اضافه کنید .من خودم چون روی خانواده lpc213x و lpc214x که شبیه هم هستن کار می کنم طبق اون ها فایل رو ویرایش کردم .(هیچ مشکلی برای سایر خانواده ها هم نیست من فقط روی میکرو های خودم تست کردم)

                      توابع موجود در کتابخانه ی نوشته شده :
                      lcd_write_4bit : این تابع به منظور نوشتن 4 بیت داده یا دستور استفاده می شود. ورودی این تابع باید از نوع unsigned char باشد. این تابه معمولا به صورت مستقیم استفاده نمی شود و برای توابع دیگر برنامه تعریف شده است.
                      lcd_cmd_write : برای نوشتن یک دستور در جیستر دستور است که به مقدار ورودی آن 8 بیتی است و به صورت دو نیبل 4 بیتی ارسال می شود.ورودی این تابع از نوع unsigned char است.ابتدا نیبل بالایی و سپس نیبل پایینی ارسال می شود.
                      lcd_putchar : برای نوشتن یک کارکتر در رجیستر داده استفاده می شود. ورودی آن از نوع char است.
                      lcd_init : به منظور تنظیمات اولیه استفاده می شود و باید قبل از سایر توابع فراخوانی شود.
                      lcd_gotoxy : مکان نما را به موقعیت x و y می برد .این تابع دو ورودی داد که ورودی اول شماره سطر و ورودی دوم شماره ستون است .( این تابع در نرم افزار ی مثل کد ویژن به این صورت است که ورودی اول آن ستون و ورودی دوم ان سطر است ).
                      lcd_clear : این تابع به منظور پاک کردن صفحه نمایش به کار می رود.
                      lcd_print :به منظور نوشتن یک رشته در نمایشگر استفاده میشود.


                      در حال حاضر امکان تعریف پورت مورد استفاده برای نمایشگر تنها از طریق تغییر سورس فایل کتابخانه مقدور از و این پارامتر به عنوان ورودی تعریف نشده است .پایه های LCD به صورت زیر باید به LPC2138 متصل شود:
                      RS=> P1.24
                      RW=>P1.25
                      E=>P1.26
                      D4=>P0.10
                      D5=>P0.11
                      D6=>P0.12
                      D7=>P0.13

                      توجه کنید در خود این فایل تابع delay تعریف شده اگر شما دوباره تعریف کنید برای خودتون در کامپایل برنامه خطا می گیرید.
                      شما زندگی می کنید من بازی میکنم، زندگی شما را; زندگی بازی خدا و یک عروسکِ گِلی ست

                      دیدگاه


                        #12
                        پاسخ : lcd

                        سلام به همه ی دوستان عزیز
                        من فایل هیدر رو کپی کردم همونطوری که گفتین دیگه خطا نداد ولی تو پروتئوس جواب نمیده حالا خود برنامه و با شبیه سازیش گذاشتم ببینید مشکل از چیه ممنون :angry: :cry2:
                        http://www.4shared.com/rar/nwoWU0C5/reza.html
                        انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

                        دیدگاه


                          #13
                          پاسخ : lcd

                          نوشته اصلی توسط reza kazemi1368
                          سلام به همه ی دوستان عزیز
                          من فایل هیدر رو کپی کردم همونطوری که گفتین دیگه خطا نداد ولی تو پروتئوس جواب نمیده حالا خود برنامه و با شبیه سازیش گذاشتم ببینید مشکل از چیه ممنون :angry: :cry2:
                          http://www.4shared.com/rar/nwoWU0C5/reza.html
                          سلام
                          دوست من با فایل پروتئوس بزار شاید اون مشکل داشته باشه
                          ارور می ده تو پروتئوس؟
                          ته برنامت هم یک وایل باید بزاری که یادت رفته

                          موفق باشی
                          کاری ندارم این وری هستی یا اون وری چپی یا راست
                          همیشه ایرانی باش و به ایرانی بودنت افتخار کن
                          ایران و هیچ وقت تنها نزار
                          اگه خدا رو قبول داری اجرت با خدا

                          دیدگاه


                            #14
                            پاسخ : lcd

                            نوشته اصلی توسط MG.
                            سلام
                            دوست من با فایل پروتئوس بزار شاید اون مشکل داشته باشه
                            ارور می ده تو پروتئوس؟
                            ته برنامت هم یک وایل باید بزاری که یادت رفته

                            موفق باشی
                            سلام
                            تو پروتئوس error نمیده اجرا میشه حلقه ی while رو هم گذاشتم ولی بازم نشد فایل پروتئوس رو هم تو همون فایلا تو پوشه ای به نام reza گذاشتم. : موندم چرا جواب نمیده :angry:
                            انصاف نباشد که من خسته رنجور پروانه او باشم و او شمع جماعت

                            دیدگاه


                              #15
                              پاسخ : lcd

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

                              دیدگاه

                              لطفا صبر کنید...
                              X