پاسخ : LCD N96 رنگی و AVR و بسکام
خب میخوام شرح برنامه رو بگم.
در خط اول فایل هدر مربوط به میکرو کنترلر Atmega128 رو به کامپایلر دادیم.
در خط دوم فرکانس کاری میکرو که قرار شد 16 مگاهرتز راه اندازی بشه رو مشخص کردیم.درصورت استفاده از دستورات تاخیری نوشتن این دستور الزامی خواهد بود.
در خط سوم تا پنجم پورتهای I/O میکرو رو به عنوان خروجی Output تعریف کردیم.
همونطوری که گفتم دو پورت هشت بیتی از میکرو بعنوان یک پورت 16 بیتی برای السیدی عمل خواهند کرد.
برای اینکه بدونیم کدوم پورت کم ارزش تر از دیگری هست برای هرکدومشون یک اسم تخصیص میدیم.
مثلا PORTA بعنوان پورت با ارزش انتخاب شده و با نام Color_lcd_msb_port نام گذاری شده.
همچنین PORTC بعنوان پورت کم ارزش تر و با نام Color_lcd_lsb_port نام گذاری شده.
اما برای راحتی کار ما پایه های Rs,cs,wr,rd,rst رو هم نامگذاری کردیم.
خط ششم تا خط دهم بیانگر همین نامگذاری هستش.
اما در دو خط بعدی دو عدد سابروتین به نامهای ذکر شده برای نوشتن دستورالعمل و دیتا تعریف کردیم.میدونید که توی زبان بیسیک باید اول سابروتین هارو تعریف کنید تابشه ازشون استفاده کرد.پس ما هم اول تعریف میکنیم و بعد از دستور End بدنه سابروتین رو مینویسیم.
البته برای راحتی فهم سابروتین ها از درج آرگومان در آنها خودداری کردم.اونچیزی که شما خواهید آموخت بسیار مقدماتی تر از اون چیزی خواهد بود که من خودم نوشتم.
بعد از اون متغیر Color_lcd_Index برای مقدار دهی برای دستور العمل وColor_lcd_Data برای مقدار دهی بعنوان دیتا تعریف شدن.اولی بایت یا 8 بیتی و دومی وورد یا 16 بیتی هستش.
خب دستور Set برای 1 کردن یکی از پایه های میکرو و دستور Reset برای 0 کردن کاربرد داره.
حالا در این قسمت توضیح اینکه این دو عدد سابروتین چیکار میکنن رو قبلا دادم و دوباره نمیگم.فقط یکمی همت میخواد تا هنر آموز عزیز خودش یه نگاهی به کدها و به توضیحات من بندازه تا متوجه بشه من چی گفتم.
خب تا اینجا تونستیم سابروتین های نوشتن دستور العمل و دیتا رو تعریف کنیم.
جلسه بعد و جلسات بعدی نوشتن در رجیستر های متعدد LCD و همچنین کار با LCD رو با همین دوتا سابروتین تعریف شده توضیح خواهم داد.
درواقع این دو سابروتین چار فرانسه های کار ما با این LCD هستند.پس بهتره اولا بفهمین کارکردشون چطوریه دوما یه جایی برای خودتون داشته باشیدش.البته اگر برای آموزش ارزش قائل هستید و دوست دارید یه روزی با این LCD پروژه ای بسازین.
خسته نباشید
خب میخوام شرح برنامه رو بگم.
در خط اول فایل هدر مربوط به میکرو کنترلر Atmega128 رو به کامپایلر دادیم.
در خط دوم فرکانس کاری میکرو که قرار شد 16 مگاهرتز راه اندازی بشه رو مشخص کردیم.درصورت استفاده از دستورات تاخیری نوشتن این دستور الزامی خواهد بود.
در خط سوم تا پنجم پورتهای I/O میکرو رو به عنوان خروجی Output تعریف کردیم.
همونطوری که گفتم دو پورت هشت بیتی از میکرو بعنوان یک پورت 16 بیتی برای السیدی عمل خواهند کرد.
برای اینکه بدونیم کدوم پورت کم ارزش تر از دیگری هست برای هرکدومشون یک اسم تخصیص میدیم.
مثلا PORTA بعنوان پورت با ارزش انتخاب شده و با نام Color_lcd_msb_port نام گذاری شده.
همچنین PORTC بعنوان پورت کم ارزش تر و با نام Color_lcd_lsb_port نام گذاری شده.
اما برای راحتی کار ما پایه های Rs,cs,wr,rd,rst رو هم نامگذاری کردیم.
خط ششم تا خط دهم بیانگر همین نامگذاری هستش.
اما در دو خط بعدی دو عدد سابروتین به نامهای ذکر شده برای نوشتن دستورالعمل و دیتا تعریف کردیم.میدونید که توی زبان بیسیک باید اول سابروتین هارو تعریف کنید تابشه ازشون استفاده کرد.پس ما هم اول تعریف میکنیم و بعد از دستور End بدنه سابروتین رو مینویسیم.
البته برای راحتی فهم سابروتین ها از درج آرگومان در آنها خودداری کردم.اونچیزی که شما خواهید آموخت بسیار مقدماتی تر از اون چیزی خواهد بود که من خودم نوشتم.
بعد از اون متغیر Color_lcd_Index برای مقدار دهی برای دستور العمل وColor_lcd_Data برای مقدار دهی بعنوان دیتا تعریف شدن.اولی بایت یا 8 بیتی و دومی وورد یا 16 بیتی هستش.
خب دستور Set برای 1 کردن یکی از پایه های میکرو و دستور Reset برای 0 کردن کاربرد داره.
حالا در این قسمت توضیح اینکه این دو عدد سابروتین چیکار میکنن رو قبلا دادم و دوباره نمیگم.فقط یکمی همت میخواد تا هنر آموز عزیز خودش یه نگاهی به کدها و به توضیحات من بندازه تا متوجه بشه من چی گفتم.
خب تا اینجا تونستیم سابروتین های نوشتن دستور العمل و دیتا رو تعریف کنیم.
جلسه بعد و جلسات بعدی نوشتن در رجیستر های متعدد LCD و همچنین کار با LCD رو با همین دوتا سابروتین تعریف شده توضیح خواهم داد.
درواقع این دو سابروتین چار فرانسه های کار ما با این LCD هستند.پس بهتره اولا بفهمین کارکردشون چطوریه دوما یه جایی برای خودتون داشته باشیدش.البته اگر برای آموزش ارزش قائل هستید و دوست دارید یه روزی با این LCD پروژه ای بسازین.
خسته نباشید






:surprised: :sad:

دیدگاه