PIC Microcontroller দ্বারা LCD Display নিয়ন্ত্রণ

0
540
PIC Microcontroller LCD Control

PIC কি?

PIC (Peripheral Interface Controller) হল Microchip Technology দ্বারা নির্মিত এবং General Instrument এর পৃষ্ঠপোষকতায় তৈরি এক শ্রেণীর হল processor core, memory, এবং programmable input/output যন্ত্রাংশের সমন্বয়ে একক Chip এ তৈরি একটি ক্ষুদ্র Computer।

এই Tutorial এ PIC এর উপর basic একটি থাকবে। তার আগে প্রথমেই কিছু Irrelevant কিন্তু Inevitable বিষয় তুলে ধরছি। বর্তমানে Hobbyist দের মধ্যে Arduino এর ব্যাপক জনপ্রিয়তা লক্ষ্য করা যাচ্ছে। একেবারে গোড়া থেকে শুরু করার সময় সকলেই একটি দোদুল্যমান অবস্থার সম্মুখীন হয় যে- কোন Platform থেকে কাজ শুরু করবে। এখানে দুটো ব্যাপার আসে।

এক: একটি Platform নির্বাচন করে এ হাত দেওয়া;

দুই: একটি নির্বাচন করে তারপর Platform ঠিক করা।

Hobbyist রা সাধারণত প্রথমটিই করে থাকে। কিন্তু সহজ কথায়, আমাদের দুইটা বিষয় লক্ষ্য রাখতে হবে।

প্রথমত: দেয়াল ভাংতে ঘুষি মারা চলবে না;

দ্বিতীয়ত: মশা মারতে কামান দাগা যাবে না।

Development Board (e.g. Arduino, BasicATOM, BasicX, POB Technology, Pololu, Parallax etc.) বনাম MCU / Unit (e.g PIC, Atmel AVR, ARM, Intel etc.):

এই Tutorial এ আমি এর গভীরে যাব না। সংক্ষেপে; Arduino এর মত বিভিন্ন Development Board এর Programming Syntax খুবই সহজ এবং অত্যন্ত জটিল করার উপযোগী। এগুলতে সহজেই বিভিন্ন External Device যোগ করা যায়। অপরদিকে বিভিন্ন Entry Level এর করার জন্য উপযোগী। কিন্তু MCU এর Programming Syntax কিছুটা দুরূহ এবং Configure করা অপেক্ষাকৃত কঠিন।

এবার আমরা PIC দিয়ে LCD নিয়ন্ত্রণ করার Tutorial এর মূল পর্বে আসছি।

PIC নিয়ে কাজ করার জন্য তিনটি জনপ্রিয় IDE আছে।

  • (i) MikroC Pro,
  • (ii) Hi Tech C এবং
  • (iii) MPLAB XC8

আমরা এই Tutorial এ MikroC Pro ব্যবহার করব।

উপকরণ সমূহঃ

  • PIC (PIC16F877A)
  • 16×2 LCD (LM016L)
  • XTAL Crystal 8MHz
  • Capacitor 22pF
  • Variable Resister / Potentiometer 10KΩ

প্রথমেই আমাদেরকে MCU এর Pin গুলো কে LCD এর জন্য Configure করতে হবে।

MCU এর মোট ৪০ টি Pin এবং LCD এর মোট ১৬ টি Pin। নিচে বিস্তারিত Pinout দেওয়া হল।

Pinout of PIC16F877A MCU
Pinout of PIC16F877A MCU
Pinout of LCD Display (LM016L)
Pinout of LCD (LM016L)
Pinout of LCD display (LM016L)
Pinout of LCD (LM016L)

Output হিসেবে MCU এর RC2, RC3, RC4, RC5, RC6 ও RC7 Pin কে ব্যবহার করা হবে।

LCD এর ৬ টি Pin: RS, EN, DB4, DB5, DB6 ও DB7 এর জন্য MCU কে Configure করতে হবে।

প্রথম অংশঃ
…………………..
sbit LCD_D5 at RC5_bit;
…………………..

এখানে বলা হচ্ছে যে LCD এর DB5 Pin MCU এর RC5 Pin এ সংযুক্ত হবে।

দ্বিতীয় অংশঃ
………………………………
sbit LCD_D5_Direction at TRISC5_bit;
………………………………
এখানে বলা হচ্ছে যে RC5 Pin Output হিসেবে কাজ করবে DB5 Pin এর জন্য।

এরপর Program এর মূল অংশ

” Lcd_Init();” দ্বারা LCD Initialize করা হল।

এরপর LCD কে দুইটি Command দেওয়া হয়েছে। কি Command তা Code দেখেই বুঝতে পারছেন। LCD এর আরও কিছু Command নিচে দেওয়া হল।

_LCD_TURN_ON – Turns ON the LCD .
_LCD_TURN_OFF – Turns OFF the LCD .
_LCD_FIRST_ROW – Moves the cursor to the first row.
_LCD_SECOND_ROW – Moves the cursor to the the second row.
_LCD_THIRD_ROW – Moves the cursor to the third row.
_LCD_FOURTH_ROW – Moves the cursor to the fourth row.
_LCD_CLEAR – Clears the LCD .
_LCD_CURSOR_OFF – Turns ON the cursor.
_LCD_UNDERLINE_ON – Turns ON the cursor underline.
_LCD_BLINK_CURSOR_ON – Turns ON the cursor blink.
_LCD_MOVE_CURSOR_LEFT – Moves cursor LEFT without changing the data.
_LCD_MOVE_CURSOR_RIGHT – Moves cursor RIGHT without changing the data.
_LCD_SHIFT_LEFT – Shifts the left without changing the data in the RAM.
_LCD_SHIFT_RIGHT – Shifts the display right without changing the data in the display RAM.
_LCD_RETURN_HOME – Returns the cursor and shifted display to Home position.

“Lcd_Out(1,1,” Hello, AE!”);” এখানে LCD তে String Print করা হল। “1, 1” দ্বারা  প্রথম Row, প্রথম Column এ Output নির্দেশ করা হয়েছে।

এবার Circuit এর সম্পূর্ণ Schematic নিচে দেখি-
(বি. দ্র: Diagram এ Vss এবং Vdd Pin গুলো দেখান হয়নি।)

Circuit Schematic
PIC Circuit Schematic

এখানে Source Code এবং Programmable HEX File অন্তর্ভুক্ত করা আছে।

Source Code and HEX File

Password: 16F877A

Credits:
Idea and Code: electrosome.com
MCU Pinout: Microchip
LCD Pinout: engineersgarage.com
Software: MikroElektronika, Labcenter Electronics

ঘুরে আসুন আমাদের ইলেকট্রনিক্স শপ থেকেঃ
ঘুরে আসুন আমাদের ইলেকট্রনিক্স শপ থেকেঃ
ঘুরে আসুন আমাদের ইলেকট্রনিক্স শপ থেকেঃ
ঘুরে আসুন আমাদের ইলেকট্রনিক্স শপ থেকেঃ

কমেন্ট প্রদান

Please enter your comment!
Please enter your name here