Monday, June 27, 2011

මෙන්න කේෂාන්ට තියන ප්‍රශ්ණ....



  • අර ගොඩක් ලොකු IC එකකට ඇයි අපි Micro Controller කියන්නෙ...
  • මගේ කිසිම සම්බන්ධයක් නැති DBMS එකකට ඈයි මම MySQL කියන්නෙ....
  • ඉංගිරිසි හෝඩියෙ මෙච්චර අකුරු තියාගෙන ඇයි C අකුරම වෙනස් කර කර Languages වලට නම් දාන්නෙ....
  • අපි Scroll Bar එක පහලට අදිනකොට පිටුව උඩට යන්නෙ ඈයි?
  • කෝච්චියටක් බස් එකේ වගේ කොන්දොස්තර කෙනෙක් දාන්න බැරි ඇයි?
  • ත්‍රීවීල් වල සින්දු ලියන්නෙ ඈයි?

තව ගොඩක් තිබුන දැන් ඒ ප්‍රශ්ණ මතක නෑ නේ.....

Tuesday, June 21, 2011

PHP හැදින්වීම - දෙවන කොටස


වැඩ ටිකක් තිබුන නිසා PHP ගැන ලියන්න පටන්ගත්තට ඒක ලියන්න බැරි වුනා. ඔන්න අද ඒ ලිපි පෙලේ දෙවනි ලිපිය ලියන්න තමයි හදන්නෙ. පළමු ලිපිය කියවන්න බැරි වුනානම් මෙතනින් ගිහින් කියවල බලන්නකො. අද මට හිතුන PHP Variables ගැන ටිකක් කථාකරන්න.

සාමාන්‍යයෙන් ඔනෑම පරිගනක භාෂාවක් භාවිතා කරල program එකක් ලියනකොට අපි මේ Variables යොදාගන්නව. මොකටද මේ variables භාවිතා කරන්නෙ. සරලවම කියනව නම් අපේ Program එක තුල භාවිතා වෙන Data සහ information තාවකාලිකව ගබඩාකරගන්න තමයි මේ Variables කියන දේ යොදාගන්නෙ. එ කියන්නෙ User ගෙන් ගත්ත input එකක් තාවකාලිකව තබාගන්න වගේම, අපි calculate කරල ගත්ත අවසන් උත්තරයක් Output කරනකන් තියාගන්නත් මේ Variable යොදාගන්නව. ඈත්තටම මේ Variable එකක් කියන්නෙ Memory Location එකක් Allocate කිරීමක්. අපි variable එකක් හැදුවාම අපේ ram එකෙන් කොටසක් ඒ සදහා වෙන්වෙනව.දැන් බලමු මොනවද මේ Variable එකක තියන දේවල් කියල. Variable එකක ප්‍රධාන properties 3ක් තියනව.

  • Variable Name - එ කියන්නෙ අපේ Variable එක හදුන්වන නම
  • Variable Type - අපේ Variable එකේ තියාගන්න පුළුවන් මොන විදියෙ Dataද කියන එක. (Integer, Read, Boolean, Char ...)
  • Value - ඒ කියන්නෙ අපේ variable එකේ අගය.

උදාහරණයක් විදියට අපි හිතමු int age = 23; කියන statement එක. මෙතන කියන්නෙ age කියන නමින් variable එකක් හදන්න. ඒකෙ type එක Integers ඒ කියන්නෙ පූර්ණ සංඛ්‍යා විතරයි එයාට දාන්න පුළුවන්. ආරම්භක අගය 23යි. හැබැයි PHP Variables මේ සම්මත තත්වයෙන් ටිකක් වෙනස් වෙලා තියනව. PHP is a Loosely Typed Language ඒ කියන්නෙ අපි Variable එ

කක් භාවිතා කරන්න කලින් ඒක හදන්න ඕනෙම නෑ. ඒ වගේමයි අපි variable එකේ type එකක් සදහන් කරන්න ඕනෙත් නෑ. නියමයි නේද??? උදාහරණයක් විදියට $age = 23; කියන satement එකේන වෙන්නෙ age කියන ඩ්රස්ඉකැ එකට 23 ආදේෂ වෙන එක. බලන්න මෙතන අපි කියල නෑ age කියන variable එක මොන type එකේද කියල. අපි දෙන අගය අනුව PHP වලට පුළුවන් Automatically මේ variable එකේ data type එක මාරුකරගන්න. හරිම ලේසියි නේද???

තවත් වැදගත් දෙයක් තමයි PHP variable එකක් අනිවාර්යයෙන්ව පටන් ගන්න ඔනේ $ සලකුනෙන්. ඒට පස්සෙ මුලින්ම තියෙන්න ඔනෙ අකුරක් හෝ _ (Underscore) එකක්. variable එකේ නමට spaces යොදාගන්නත් බෑ. අපිට space එකක් යොදාගන්න ඔනෙ නම් ඒ වෙනුවට _ එක භාවිතා කරන්න පුළුවන්. ඒ කියන්නෙ $my name = "Keshan"; කියල ලිවුවොත් වැරදියි. ඒක $my_name = "Keshan"; හෝ $myName = "Keshan"; කියල නිවරදි වෙන්න ඔනේ.

ඔය කිවුවෙ PHP Variable හදනකොට තියන නීති ටික. මීට අමතරව ඔනෑම Programing Language එකකින් Variable එකක් හදනකොට අපි අනුගමනය කරන රීති ටිකක් තියනව. ඒවට අපි රීති කියන්නෙ ඒව අනුගමනය කරේ නැති වුනත් අපේ Program එක වැඩ කරනව. ඒත් මේ රීති අනුගමනය කරාම අපේ Program එකේ Quality එක වැඩි වෙනව. මෙන්න මේව තමයි ඒ රීති.

  • Variable එකේ නම විදියට ඒකෙන් කෙරෙන දේ විස්තර වෙන නමක් දෙන්න (උදා $userName ) එත කොට මේ Program එක බලන කෙනාට තේරෙනව මේ variable එක මොකටද තියෙන්​නෙ කියල
  • Variable එකේ නම ගොඩක් දිග එකක් දෙන්න එපා
  • Variable එකේ නම විදියට පුළුවන් හැම වෙලාවකම නාම පදයක් යොදා ගන්න.
  • Variable එකේ නම වචන කිහිපයක එකක් නම් camelCase එක ගොදායන්න. ඒ කියන්නෙ මුල් වචනෙ මුල් අකුර Simple ඊට පස්සෙ හම්බවෙන හැම වචනකෙම මුල අකුර Capital (උදා $imageLocation )
  • Variable එක boolean type එකක් නම් ඒකියන්නෙ True or False එකක් නම් 'is' කියන prefix එකෙන් variable එක පටන් ගන්න (උදා $isMale; $isError)

හරි ඊලගට PHP Operators ගැන කියන්නම්. ඈත්තම කිවුවොත් ඒ ගැන එච්චර කියන්න දෙයක් නෑ. මොකද අනිත් හැම භාෂාවකම තියන ඒවම තමයි මේකෙත් තියෙන්නෙ.

හැමෝම දන්නවනෙ + - * / % ++ -- කියන ප්රධාන Operators ටික PHP වලත් තියනව. මේවයින් කරන දේවල් දන්නව කියල මම හිතනම. + එකතු කිරීම, - අඩු කිරීම, * වැඩි කිරීම, / බෙදීම, % මේක Modulo Operator එක. මේකෙන් වෙන්න අපි දෙන අගය අනිත් අගයෙ

න් බෙදුවාම ඉතුරු වෙන අගය දෙනව. ++ -- කියන දෙකෙන් වෙන්නෙ අපි දෙන Variable එකේ අගය එකකින් වැඩි වෙන එක හා අඩුවෙන එක්. මේ උදාහරන ටික බලන්නකො.

$numberOne = 10;

$numberTwo = 3;

$add = $numberOne + $numberTwo;

$sub = $numberOne - $numberTwo;

$mul = $numberOne * $numberTwo;

$div = $numberOne / $numberTwo;

$rem = $numberOne % $numberTwo;

මීට අමතරව Assignment Operators කියල කිහිපයක් තියනව. ඒවත් අනිත් Language වල යොදාගන්න විදියම තමයි. මේ තියෙන්නෙ ටික.

  • x = x + y; කියන statement එක X += y කියල ලියන්න පුළුවන්
  • x = x - y; කියන statement එක X -= y කියල ලියන්න පුළුවන්
  • x = x * y; කියන statement එක X *= y කියල ලියන්න පුළුවන්
  • x = x / y; කියන statement එක X /= y කියල ලියන්න පුළුවන්
  • x = x % y; කියන statement එක X %= y කියල ලියන්න පුළුවන්

මම හිතනව ගොඩක් අයට මේ දේවල්නම් අළුත් දේවල් නෙමේ කියල. Variable ගැන දැනගන්න තියන මූලික දේවල් ටික ඔච්චරයි. දැන් අපි බලමු PHP වල තියන වැදගත්ම හා විශාල විදියට යොදාගන්නා දෙයක් ගැන. තමයි echo සහ print. ඇත්තටම මේ දෙකම යොදාගන්නෙ අපිට ඔන කරන දෙයක් Screen එකේ Print කරගන්න.

print "Hello World! ";

echo "Hello World!";

ඔය දෙකෙන්ම වෙන්නෙ Hello World! කියන එක print වෙන එක. PHP වල තියන ලස්සනම දෙයත් තමයි අපිට print හෝ echo ඈතුලෙ HTML Tag ලියන්න පුළුවන්. එතකොට Tag එක print වෙන්නෙ නෑ. වෙනුවට tag එකට අදාල දේ පෙන්නනව. ඒකත් ටිකක් උත්සහ කරල බලන්නකො...

හරි ඊලගට ගොඩක් අය හිතනව මේ command දෙකම එක හා සමානයි කියල. ඇත්තටම මේ දෙකම එකම දේ කරාට දෙන්නගෙ පොඩි පොඩි වෙනස්කම් තියනව.

පළවෙනි දේ තමයි echo වලට පුළුවන් argument කිහිපයක් ලභා ගන්න. ඒත් print වලට පුළුවන් එක argument එකක් විතරයි.

echo "Hello" , "world";

print "Hello" . "World";

දෙවනි කාරනය තමයි print function එක execute වෙලා ඉවර උනාම ඒක value එකක් return කරනව. නමුත් echo වල විදිය දෙයක් නෑ.

$retValue = print "Hello World!\n";

මේ Print Statement එක නිවරදිව execute වුනොත් $retValue කියන variable එකේ අගය 1ක් වෙනව. අපිට අගයෙන් පුළුවන් print statement එක හරියටම වැඩ කරාද කියල බලාගන්න. නමුත් echo වල විදිය පහසු කමක් නෑ. අනිත් කාරනය තමයි මෙන්න මේ return value case එක නිසා print command එක echo command එකට වඩැ ටිකක් විතර slow වැඩ කරන්නනෙ. හැබැයි ඒක අපිට දැන තරමි slow වීමක් නම් නෙමෙයි.

අපිට print command එක යොදාගෙන අගයන් කිහිපයක් display කරන්න ඕනෙ නම් අපිට .(dot) Operator එක යොදාගන්න පුළුවන්.

ඔන්න මම අද දවසෙ කියපු දේවල් ටික එකතු කරල පොඩි PHP Page එකක් හැදුව. ඔයාලත් ඒක try කරල බලන්න.

Download Code

අදට ඉවරයි... ඊලග ලිපියෙන් මම if-else switch and loops ගැන

කථාකරන්න බලා පොරෝත්තු වෙනව. මොකද මට ඔනේ මේ මූලික දේවල් ඉක්මනය ඉවර කරන්න. මේව ගොඩක් අය දන්නව. එතකොට අපිට පුළුවන් Data Base ගැන ටිකක් වැඩිපුර කතා කරන්න. ඔබගේ අදහස් වගේම මේ ලිපියෙ මොනව හරි වැරැද්දක් තියනවනම් ඒවත් පහලින් ලියලම යන්න.....

Sunday, June 12, 2011

PHP හැදින්වීම - පලමු කොටස

මගේ විනෝදාංශය PIC ගැන ලියපු ලිපියට බලාපොරොත්තු උනාටත් වඩා ලොකු ප්‍රතිචාර ලැබුන. ඒ හැමෝටම ස්තූතියි. ඒ නිසාම මට හිතුන ඒ ගැන දිගටම ලියන්න. ඒ වගේම අපේ batch එකේ කීප දෙනෙක්ගෙ ඉල්ලීම මත PHP ගැනත් ලියන්න බලාපොරොත්තු වෙනව. ඒක නිසා අද PHP ගැන ටිකක් ලියන්න හිතුන.PHP කියන දේ මම ඉගන ගත්තෙ මීට අවුරුද්දකට කලින් අපේ Project එක කරනකොට. මම තාමත් PHP වලට අළුත්. මට වඩා හොදින් මේ විශය දන්න අය ගොඩක් ඉන්නව. ඒ නිසා මේක කියවන අයගෙන් ඉල්ලා සිටිනව මගෙන් වැරැද්දක් හෝ අඩුපාඩුවක් වෙලා තියනව නම් ඒක නිවරදි කරන්න කියල.

ඈත්තටම මොකක්ද මේ PHP කියන්නෙ. ගොඩක් දෙනෙක් දන්නව PHP පාවිච්චි කරන්නෙ මොකටද කියලත්. සරලවම කියනවනම් මේක Server Side Programing Language එකක්. මුලින්ම අපි බලමු මේ Client side and Server Side කියන්නෙ මොකක්ද කියල. උදාහරනයක් විදියට හිතන්නකො Website එකක් තියනව ඉස්කෝලෙක ලමයි register කරගන්න. එතකොට ඒකෙ Interface එකක් තියනව Web browser එකක් හරහා ඒක භාවිතා කරන්න පුළුවන්. දැන් මෙන්න මේ Interface එක යොදාගෙන කෙනෙක්ට පුළුවන් තමන්ගෙ ලමයගෙ විස්තර ඈතුලත් කරල website එකේ register වෙන්න. ඔන්න ඔය Web Browser එක තුලින් User පේන ටික තමයි Clint Side එක කියන්නෙ. පොඩ්ඩක් හිතන්න බලන්න මේ Client Side එක හදන්න යොදාගන්න භාෂා මොනවද කියල. මූලිකම දේ තමයි HTML. ඒ වගේම formatting කරන්න CSS. JavaScript අයිති වෙන්නෙත් මේ ගොඩටම තමයි. ඒ ඈයි කියල මම තව ටිකකින් කියන්නම්.

දැන් බලමු මේ Server Side එක කියන්නෙ මොකක්ද කියල. කලින් උදාහරණයම ගත්තොත් User Registration Details Web Form එකේ දුන්නාම ඒව DataBase එකක save වෙන්න ඕනෙ. එහෙමත් නැත්නම් User කවුරු හරි ලමයෙක් ගැන විස්තර ඈහුවාම ඒව Database එකෙන් අරගෙන userට පෙන්න්න ඕනෙ. ඔන්න ඔතනදි වෙන්න ඕන දේවල් වෙන්නෙ Server Side එකේදි තමයි. අපි ඒ දේවල් ලියන්න ඕනෙ Server Side Script එකක. ඔන්න ඕකට තමයි PHP පාචිච්චි කරන්නෙ. ඊට අමතරව ASPත් යොදාගන්නව. මේ User පෙන්නෙ නැති පැත්ත (නමුත් වැදගත්ම වැඩ කොටස වෙන්නෙ මෙතන තමයි නේද??) අපි හදුන්වන්නෙ Server Side එක, එහෙමත් නැත්නම් Back End එක කියල.

දැන් ආපහු එමු JavaScrip වලට. අපි javaScript යොදාගන්නෙ Web Page එක Dynamic කරන්න. උදාහරනයක් විදියට අපි හිතමු user ID number එක විදියට අංක 10ට අඩු නම්බර් එකක් දුන්නොත් අපිට පුළුවන් JavaScrip එකකින් ඒක check කරල පොඩි Error Message එකක් දෙන්න. ඒ දේ කරන්න Request එක Server Side එකට යනකන් ඉන්න ඕනෙ නෑ නේද? අන්න ඒක නිසයි මම කිවුවෙ JavaScript කියන්නෙ Client Side භාෂාවක් කියල. මුලින්ම අපිට පුළුවන් වෙන්න ඕනෙ අපි ලියන Web Page එකේ Client Side Action මොනවද Server Side Action මොනවද කියල වෙන්කරල හදුන ගන්න. මොකද Server Side එකේ කරන්න ඔන ඒව Client Side එකේ වත්... Client Side එකේ කරන්න ඔන ඒව Server Side ඒකෙවත් කවදාවත්ම කරන්න එපා. (ඈත්තම කිවුවොත් මම අපේ 2nd Year Project එකේදිනම් මේක හොදට පටලව ගත්ත. මගේ වාසනාවට හෝ අවාසනාවට - මම හිතන්නෙ අවාසනාවට අපේ Lecturesල කාටවත් ඒකක අහුවුනේ නෑ). ඒ කියන්නෙ කවදාවත්ම JavaScript වලින් කරන්න ඕන දේ PHP වලින් කරන්න යන්න එපා.. ( හි හි එත් මමනම් කරා.. ස් ස් ස් කාටවත් කියන්න එපා හොදේ..)

මම හිතනව මේක කියවන හැමොම වගේ HTML ටිකක් හරි දන්නව ඈකි කියල. අඩුම තරමින් එකම එක HTML File එකක්වත් ලියල ඈති තියල. ඒක ලියන්න මොනවද ඕන වුනු දේවල්. පොඩ්ඩක් හිතන්න.... text editor එකක් විතරයි නේද? Web Browser එකේ HTML file එකට අදාල output එක නිකන්ම පෙන්නුව නේද? එතකොට CSS එකත් එහෙම නේද? JavaScript එකත් එහෙම තමයි. අපිට ඔන කරන්නෙ Web Browser එකක් විතරයි. ඈයි ඒ.... මොකද ඒ ඔක්කොම Client Side නිසා. Web Browser එක තමයි Clint Side එකේ තියෙන්නෙ. එතකොට PHP ලියන්න Web Browser එක විතරක් මදිද???

උත්තරය ඔව් web browser එක විතරක් මදි.. PHP Server Side නෙ. එහෙනම් අපිට Server එකක් තියෙන්​න ඕනෙ. අපි PHP ලියල run කරන්නෙ මේ server එක ඈතුලෙ. හෝවු හොවු පොඩ්ඩක් ඉන්න.. ඔය දුවන්න හදන්නෙ server එකක් හොයන්නද??

එකට විසදුම තමයි Virtual Server එකක් Use කරන එක. ඒ කියන්නෙ අපේ Computer එක ඈතුලෙම server එකක් හැදෙනව. මේකට යොදාගන්න පුළුවන් Servers ගොඩක් තියනව. පහසුම හා මම යොදගන්නෙ WAMP Server එක. W - Windows A - Apache M - MySQL P - PHP . මේ කෙන් අපේ Computer එකේ අපාචි සර්වර් එකක් වගේම MySQL server එකකුත් හදනව. ඒක නිසා data base එක්ක වැඩ කරන්න උනත් හරිම ලේසියි. මෙන්න මෙතනින් ඒක අරගෙන Install කරගන්නකො.. මොකද මම ඉස්සරහට ලිපි වලදි යොදාගන්න ඉන්නෙ මේක තමයි. මේක Install කරන්නත් හරිම ලේසියි. install කරන්න කලින් කියන්න වැදගත් දෙයක් තියනව. ඔයාලගෙ PC එකේ දැනටමත් MySQL තියනවනම් ඒක Uninstall කරල ඉවර වෙලා WAMP install කරන්න. මොකද නැත්නම් WAMP වල MySQL එක්ක ඔයාගෙ දැනටම තියන MySQL රන්ඩු වෙන්න පුළුවන් (පුළුවන් නෙමේ රන්ඩු වෙනව!!)

දැන් start WAMP Server හරහා මේක run කරන්න. task bar එකේ එන WAMP icon කොල පාට වෙනකන් ටිකක් ඉන්න. ඒක කොල පාට උනාම එක Click කරල එන මෙනු එකේ උඩම තියන LocalHost කියන එක click කරන්න. එතකොට පහල තියන විදියෙ window එකක් ඔයාලගෙ Web Browser එකේ Open වේවි.
ඉහල Address bar එකේ http://localhost/ කියල තියෙන්නෙ අපේ server එක තියන තැන තමයි. දැන් බලමු අපි PHP File එකක් Web Browser එකේ run කරල බලන්නෙ කොහොමද කියල. මුලින්ම මෙන්න මේ PHP Script එක Text editor එකක Type කරල ( මම නම් Use කරන්නෙ Notepad++) welcome.php කියල save කරන්න.


ඊට පස්සෙ ඔයා WAMP install කරපු තැනට ගිහිලිල ( බොහෝ විට C:\WAMP ) එතන තියන WWW කියන folder එකට අර ලියපු welcome.php එක copy කරල paste කරන්න. මේන්න මේ WWW කියල folder එක තමයි අපේ server එකේ script save කරගන්න තැන විදියට ක්‍රියා කරන්නෙ. දැන් Web Browser එක Open කරල Adders Bar එකේ http://localhost/welcome.php කියල type කරන්න. එතකොට බලාගන්න පුළුවන් අපි ලියපු Script එක run වෙලා Output එක print වෙලා තියනව.

එහෙනම් අදට නවතින්නම්. පුළුවන් තරම් ඉක්මනින් මීලග ලිපිය ලියන්න බලා පොරොත්තු වෙනව. ඊට කලින් මේ ගැන ඔයාල හැමෝගෙම අදහස් මට කියන්නකො. නැවත වරක් මතක් කරන්න කැමතියි.. වැරුද්දක් තියනව නම් සමාවෙලා ඒක පෙන්නල දෙන්න. මොකද මම මේ විෂය සම්බන්දව නවකයෙක්. එහෙනම් හැමෝටම බුදු සරණයි.

Thursday, June 9, 2011

PIC එකක් යොදාගෙන අපි හදපු පොඩි අයිටම් එකක්


ඔන්න එහෙනම් හා හා පුරා කියල නැවත පටන් ගත්ත මගේ Blog එකේ පලමු පෝස්ට් එක.... අපේ පැන්ඩගෙ යෝඡනාවකට අනුව මේක ගැනම ලියන එක හොදයි කියල මට හිතුන..

අපිට තියනව Subject එකක් Device Interfacing & Embedded Systems කියල. ඔය PIC programing එහෙම උගන්නන එකක්. මේක Optional Subject එකක්. කැමති අයට කරන්න පුළුවන්. අවුරුද්ද මුලදි මේක කරන්න අපේ 41 දෙනාගෙන් 30ක් විතර හිටිය. ඒත් කියන්නත් දුකයි දැන් ඉන්නෙ 7 දෙනයි. ඒ ගොඩක් අය මේක දාල ගිය හේතුවත් සාධාරණ හේතුවක්. ඒ නිසා අපි කවුරුත් ඒක වැරැද්දක් විදියට දකින්නෙත් නෑ... හරි හරි දැන් කාරණය මේකයි. ඔන්න ඔය Subject එකට අදාලව අපිට පොඩි නිර්මානයක් කරන්න කියල භාර දුන්න. සති දෙකක් ඈතුලත දැනට ඉගන​ගෙන තියන දේවල් යොදාගෙන හොද නිර්මායක් කරන්න තමයි අපිට භාර වුනේ. අපේ කණ්ඩායමේ ඉන්නෙ මමයි දිලයි(දිල්රුවන්... අපේ රෙපා)ග

මේ තියෙන්නෙ අපි දෙන්න එකතු වෙලා නිර්මාණය කරමින් යන උපකරණය. නිර්මාණය කරමින් යන කිවුවෙ මේක තාම ඉවර නෑ.. මේක ගැන පොඩි විස්තරයක් කියන්නම්කො. මේක හරිම සරල දෙයක්. මේකෙන් කරන්නෙ අපිට උඩ නැගල මනින්න අපහසු දෙයක උස බිම ඉදල මනින එකයි. ඒ කියන්නෙ අපි හිතමු ලයිට් කණුවක උස මනින්න වගේ දෙයක්. දැන් ඉතින් අහන්න එපා මොන මගුලකටද බං ලයිට් කණුවෙ උස මනින්නෙ කියල.

මේක හරිම සරල නිර්මාණයක්. මූලික කොටස් දෙකක් තියනව. එකක් තමයි ලී වලින් හදපු තෙපාවක්. සිංහලෙන් ඔය Tripod කියන්නෙ. අන්න එයින් එකක්. ඒකෙ උඩ තියනව කරකවන්න පුළුවන් විදියට සවිකරපු Laser pointer එකක්. ඒ රෝදෙ කැරකැවෙන්නෙ පොළවට ලමිභක තලයක. ඊලගට ඒ රෝදෙට හයි කරපු VR එකක්. ඒ කියන්නෙ Variable Resister එකක් තියනව. (ඔය සාමානයෙන් Radio එකේ එහෙම සද්දෙ අඩු වැඩි කරන්න කරකවන Gadget එක තමයි VR එකක් කියන්නෙ). මේකෙ පින්තූරයක් නම් දාන්න බැරි උනා. සමාවෙන්න ඔනෙ එකට. මොකද ඒක දැනට තියෙන්නෙ දිලාගෙ බෝඩිමේ. දෙවනි එක තමයි ඔය ඉහලින් දාල තියන පාලක පරිපථය. ඒකෙන් තමයි ඔක්කොම වැඩ කෑලි ටික වෙන්නෙ.

මේක වැඩ කරවන්නෙ මෙහෙමයි. මුලින්ම මේ Set එකම light කනුව ලගට අරන් යනව. ගොඩක් ලගට නෙමේ හොදේ!!! දැන් අර Laser Pointer එක ලයිටි කණුවෙ මුලට Target කරල පොඩි Button එකක් ඔබනව. ඊලගට Laser එක කනුවෙ මුදුනට Target කරල තවත් Button එකක් ඔබනව. ඊට අමතරව අපේ Gadjet එකේ ඉදන් ලයිටි කනුවට දුරත් උපකරණයට දෙනව. අන්න එතකොටම අපිට ලයිට කණුවෙ උස Display එකේ මෙන්නනව. (ඒ වෙලාවෙම කිවුවට සුට්ටක් වෙලා යනව හොද්...) අනේ මන්ද තේරුනාද කියල

දැන් කියන්නම්කො මේක වැඩ කරන්නෙ කොහොමද කියල.. අ ලී Item එකේ නම් තියෙන්නෙ VR එකක් විතරයි. අපි Laser Pointer එක කරකවනකොට ඒකෙ ප්‍රතිරෝධය වෙනස් වෙන. මේ ප්‍රතිරෝධ වෙනස අපි Laser එක හරවන කොණයට සමානයි. අපි මුලින්ම ඒක වොල්ටීයතා වෙනසකට පරිවර්ථනය කරගත්ත. ඒක කරේ විභව බෙදුමකින්.

ඊලට අපේ Circuit එකේ තියන දේවල් ටික කියන්නම්කො. ඒකෙ ප්‍රධානිය තමයි 16F877A කියන Micro Controller Unit එක. ඒකෙන් තමයි මේ ඔක්කොම පාලනය වෙන්නෙ. ඊට අමතරව 16X2 LCD Display එකක්, 4X4 KeyPad එකක්, MAX232 IC එකක් එහෙම තියනව.

අර VR එකෙන් දෙන වොල්ටීයතාව PIC එකේ ADC Unit එක ඒ කියන්නෙ Analog to Digital Unit එක භාවිතා කරල Dgital Signal එකක් බවට හරවගන්නව. ඒකෙන් අපිට පුළුවන් කොනය මැන ගන්න. KeyPad එකෙන් Light කනුවට දුරත් Enter කරනව. ඒ දත්ත හා සරල ත්‍රිකෝණමිතිය යොදාගෙන තමයි සියළුගනනයන් සිදුවෙන්නෙ. ඔය LCD එකේ තමයි Result පෙන්නන්නෙ.

ඔන්න ඔහොම තමයි සරළවම කියනව නම් මේකෙ කථාව... PIC එකට Program එක ලිවුවෙ CCS කියන මෘදුකාංගය යොදාගෙන C භාෂාවෙන්.

මේ තියෙන්නෙ අර ලී වලින් හදපු එක හදන්න කලින් මේක Test කරපු විදිය.

මේ තියෙන්නෙ කේෂාන් වැඩ කරන මේසේ.. හරිම පිළිවෙලයි නේද?? හික්ස්

ඔන්න Program එකෙන් ටිකකුත් තියනව ඕනෙන්ම..

එහෙනම් අදට ඈති නේද? අපි යන්නම්. මේක ඉවර වුනු ගමන්ම සම්පූර්ණ උපකරණයෙ රූපයක් දාන්නම්කො. හැමෝටම බුදුසරණයි!!

ටිකක් ඡනප්‍රිය ඒව