Arduino එක්ක LED Bar Graph එක්ක වැඩ කරමු (Lesson 05)

Arduino එක්ක LED Bar Graph එක්ක වැඩ කරමු (Lesson 05)

සුභ දවසක්. අද අපි කතා කරන්න යන්නේ LED BAR GRAPH සමග වැඩ කරගන්නා විදියයි.

මුලින්ම අපට මේ සදහා ඕන දේවල් බලමු.
1. Uno board එකක්.
2. LED BAR GRAPH එකක්.
3. Jumper Wires.
4. Resistors 220 Ohm 10ක්.

10 SEGMENT LED BAR GRAPH

LED BAR GRAPH යනු LED 10කින් හෝ සමන්විත තනි ඒකකයකි. එහි පැත්තක PIN 10 බැගින් PIN 20ක් ඇත. එම නිසා මෙය ක්‍රියාත්මක කිරීම සදහා අපි Arrays භාවිතා කරනවා. Array variable එකක් තුල values කිහිපයක් ගබඩා කර තැබිය හැකිය. මෙහි අපි ගබඩා කිරීමට යන්නේ Arduino board එකේ අපට අවශ්‍ය PIN අගයන් වේ.

ආඩුඊනෝ තුල Arrays සාදාගන්නේ මෙහෙමයි.

මුලින්ම අදාල variable type එක අපි සදහන් කර යුතු වන අතර ඉන් පසු Array එකෙහි නම සදහන් කරයි. ඉන්පසු එම නම ලගින් [] සදහන් කරනු ලැබේ.

int arrayName[];
string arrayName[];


Array වෙත values ආදේශ කිරීමේදී පහත ආකාරයට ආදේශ කරනු ලැබේ.

int LedPin[] = {3,4,5,6,7,8,9,10,11,12}

මෙහෙදී අපි values ලෙස යොදාගෙන ඇත්තේ arduino uno board එකේ සම්බන්ධ කර ඇති PIN අංක ටිකයි.

දැන් අපි මෙම LED BAR GRAPH එක දල්වමු.

Circuit

මුලින්ම අපි ඒ අදාල සියලු PIN ටික setup කරගත යුතුයි. ඒ සදහා void setup() තුල අපි for loop එකක් ආධාරයෙන් මෙසේ setup කරගන්නවා.

for (int i=0;i<10; i++)
{
    pinMode(LedPin[i], OUTPUT);
}

මෙහිදී int i හි මුල් අගය 0ට සමාන කර තිබෙන්නේ Array එකක මුල්ම value එකට අදාල index අගය 0 වන නිසාවෙනි. for loop එකෙහි මැද i<10 යනු i වල ඇති අගය 10ට අඩු වන තෙක් එසේ නැතිනම් අපගේ array එකෙහි ඇති PIN ගණනට එය ක්‍රියාත්මක කරවීමටයි. එහි අන්තිමට i++ එකෙන් වනුයේ i නැමැති variable එකේ ඇති අගය 1 කින් වැඩි කිරීමයි (i=i+1).

pinMode() එකේ ඇතුලත අපි සදහන් කරනුයේ අදාල PIN එක සහ එම PIN එක INPUTද OUTPUT ද යන වගයි. මෙහිදී අපි PIN සියල්ල Array එකක් භාවිතයෙන් ලබා දී ඇති නිසා එය අපි LedPin[i] ලෙස සදහන් කරනවා. එහිදී කොටු වහරන් ඇතුලතට i ලෙස සදහන් වීමෙන් for loop එක ක්‍රියාත්මක වන තෙක් i හි අගය වෙනස් වෙවී මෙම pinMode එකට ලැබෙනවා. එමගින් array එකේ ඇති සියලුම PIN අංක OUTPUT PIN බවට පත්වේ.

මෙහිදී පිලිවෙලින් i හි අගය සහ එම array එකෙන් එලියට එන value එක මේ ආදී වශයෙන් වෙනස් වෙයි.

LedPin[0]; = 3
LedPin[1]; = 4
LedPin[2]; = 5
LedPin[3]; = 6
LedPin[4]; = 7
LedPin[5]; = 8
LedPin[6]; = 9
LedPin[7]; = 10
LedPin[8]; = 11
LedPin[9]; = 12

දැන් අපි void loop එක තුලින් මේ LED BAR GRAPH එක දල්වමු. ඒ සදහා අපි for loop එකක් යොදාගන්නවා. මේ මගින් කරනුයේ අපි ඉහත සාදාගත් Array එකේ ඇති සියලුම values වලට අදාල සියලු port හෝ කිහිපයක් දල්වා ගැනීමයි. පහත ආකාරයට අපි එය සදාගන්නවා.

මුලින් අපි වරකට එක බැගින් සියලු LED දල්වමු.

for (int i= 0;i<10; i++)
{
   digitalWrite(LedPin[i], HIGH);
   delay(1000);
}

මෙහිදී Uno board එකේ තිබෙන 3වෙනි Port එකේ සිට 12 වෙනි Port එක දක්වා තිබෙන සෑම PIN එකක්ම තත්පරයකට සැරයක් දැල්වේ.

දැන් අපි එක් එක් LED එක වෙන වෙනම දල්වමු.

for (int i= 0;i<10; i++)
{
   digitalWrite(LedPin[i], HIGH);
   delay(1000);
   digitalWrite(LedPin[i], LOW);
}

මෙහිදී අප පලමුවෙන් තිබෙන PIN එක HIGH කරමින් එය දල්වයි. නැවත delay එකකින් පසු එය නිවා දමයි. මෙය for loop එකක් මගින් කරන නිසා i හි එකකින් අගය වැඩිවෙයි. නැවත ඊලග PIN එකට අදාල LED එක දැල්වෙයි. නැවත delay එකකින් පසු එය නිවෙයි.

Code

මේ ආකාරයට අපට කැමති කැමති ලෙස මෙය වෙනස් කරමින් දැල්වීමට සහ නිවීමට පුලුවනි.

code file https://github.com/realrajapaksha/Arduino

එහෙනම් යාලුවනේ අදට අපි සමුගන්නවා. තවත් මේ වගේ ආටිකල් එකක් අරගෙන ආයෙත් එන්නම්. ඔයාලගේ අදහස් යෝජනා සහ අඩුපාඩු comment කරන්නත් අමතක කරන්න එපා. සුභ දවසක්.

Read more

Gemini 1.5 Pro දැන් රටවල් 180කටත් වැඩි ප්‍රමාණයකට

Gemini 1.5 Pro දැන් රටවල් 180කටත් වැඩි ප්‍රමාණයකට

Google ආයතනය මීට මාස දෙකකට පමණ කලින් Gemini 1.5 Model එක Google AI Studio එක හරහා පරීක්ශා කිරීමේ පහසුකම developers ලට ලබා දී තිබුනා. 2024/04/09 එනම් ඊයේ දින රටවල් 180ට වඩා වැඩි ප්‍රමා

By Chanaka Prasanna
Apple සමාගම විසින් ඔවුන්ගේ Vintage සහ Obsolete නිෂ්පාදන ලැයිස්තුව යාවත්කාලීන කරයි

Apple සමාගම විසින් ඔවුන්ගේ Vintage සහ Obsolete නිෂ්පාදන ලැයිස්තුව යාවත්කාලීන කරයි

Apple සමාගම විසින් පසුගිය පළමු වැනිදා ඔවුන්ගේ vintage products සහ obsolete products ලැයිස්තුව යාවත්කාලීන් කර තිබෙනවා. මොනවද මේ vintage products සහ obsolete products කියන්නේ ? Apple සමාගම වි

By Bhasura Nuwan Kularathna
Incognito Mode එක හරහා එකතු කර ගබඩා කර ගත් පරිශීලක දත්ත විනාශ කිරීමට Google සමාගම එකඟ ​වේ

Incognito Mode එක හරහා එකතු කර ගබඩා කර ගත් පරිශීලක දත්ත විනාශ කිරීමට Google සමාගම එකඟ ​වේ

2020 වසරේ දී Google සමාගමට විරුද්ධව පරිශීලකයන් පිරිසක් නඩුවක් ගොනු කළ අතර ඒ තුලින් ඔවුන් එම සමාගමට චෝදනා කලේ Google හි ඇති “Incognito mode” මගින් පරිශීලකයන්ගේ දත්ත රැස් කරන

By Anjana Dineth