اطلاعیه

Collapse
No announcement yet.

شناسایی کارکتر تعریف شده به LCD

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

    شناسایی کارکتر تعریف شده به LCD

    سلام دوستان
    فرض کنید من یک کار کارکتر جدید درست کردم آدرس اون هم استخراج کردم ( 8 تا عدد هگزا به دست آوردم و به صورت یک آرایه در حافظه قرار دادم )
    حالا این 8 تا عدد رو باید چجوری به LCD بفهمونم؟ باید دستور خاصی به LCD بدم که متوجه بشه دارم براش کارکتر تعریف میکنم؟ یا اینکه به یه روش خاصی به صورت دیتا این 8 تا عدد رو بهش بدم بگم اینا تشکیل کارکتر میده؟
    لطفا دستورات برنامه C و بیسیک رو برام ننویسید چون کاری با اونها ندارم، فقط میخوام بدونم یک LCD چطور تشخیص میده که یک آرایه که از 8 عدد تشکیل شده مربوط به یک کارکتر هست. چطور باید این رو بهش بفهمونم؟.در واقع نحوه شناساندن کارکتر جدید به LCD رو میخوام.
    با تشکر
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید

    #2
    پاسخ : شناسایی کارکتر تعریف شده به LCD

    سلام

    ببین باید اینجوری عمل کنی :

    اول باید فرمان 40 هگز رو به LCD صادر کنی. یعنی با RS صفر
    بعدش باید تک تک بایتهایی رو که برای کارکترت بدست آوردی بعنوان دیتا به LCD بدی. یعنی با RS یک

    برای هر کارکتر باید 8 بایت معرفی کنی و حداکثر 8 تا کارکتر میتونی بسازی .
    پس از آدرس 40 تا 47 میشه مکان کارکتر اول (در حافظه ال سی دی ) ، مکان 48 تا 4F میشه کارکتر دوم و همینجور الی آخر. یعنی تا آدرس 7F

    خوب ، خسته نباشی.
    تا اینجای کار کارکترهات رو توی حافظه LCD نوشتی. حالا میمونه نحوه نمایش اونا.

    اولا که یادت نره بعد از معرفی کارکترهات به LCD ( که در آدرس 40 هگز تا حداکثر 7F قرار دارن ) فرمان 80 هگز رو به LCD بدی تا به حالت عادی برگرده .

    همونطور که خودت میدونی برای نوشتن حروف اسکی روی LCD کد اسکی اونهارو بعنوان دیتا به LCD میدیم .
    حالا هر موقع کخ خواستی مثلا اولین کارکتر ساخته شده رو روی LCD نشون بدی باید عدد صفر رو بعنوان دیتا به LCD بدی. یا اگر خواستی کارکتر دومت رو نوشن بدی ( که در حافظه 48 تا 4F قرار داره ) باید عدد یک رو بعنوان دیتا به LCD بدی الی آخر !

    اگه جایی رو متوجه نشدی بگو تا توضیح بدم.

    اینم یه سورس اسمبلی 8051 که میتونی بخونی.
    http://hamid.r1988.googlepages.com/LCD_4BIT_ASM.zip


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

    دیدگاه


      #3
      پاسخ : شناسایی کارکتر تعریف شده به LCD

      درود بر رفیق اهل دل خودمون
      توضیحاتت کاملا مشخص و روشن بود و دقیقا متوجه فرمایشت شدم نحوه ساخت کارکتر رو بلدم فقط مشکل همین بود که چطور تعریفش کنم که اون هم به لطف شما معلوم شد و حالا میرم روش کار میکنم.
      این حلقه اسمبلی هم برای شما نوشتم

      LDI R16,HIGH(RAMEND)
      OUT SPH,R16
      LDI R16,LOW(RAMEND)
      OUT SPL,R16
      .ORG $20
      TASHAKOR: RJMP TASHAKOR
      از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
      هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
      اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
      اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
      شاد و موفق باشید

      دیدگاه


        #4
        پاسخ : شناسایی کارکتر تعریف شده به LCD

        حلقه قشنگیه .
        ممنون :biggrin:
        چگونه هوشمندانه بپرسیم

        دیدگاه

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