Saturday, May 27, 2017

Arduino ဆိုတာ ဘာလဲ??

Arduino ဆိုတာဘာလဲ??

Arduino ဆိုတာ တကယ္ေတာ့ ေကာ္ဖီဆိုင္ပါတဲ့ 😃
ဆရာနဲ႕ေက်ာင္းသားေတြ စုၿပီး Atmel က AVR ic ေတြနဲ႕ အလြယ္တကူစမ္းသပ္ဖို႔ developer board ေလးလုပ္ရာကေနျဖစ္လာတဲ့ opensource product ေလးပါ။ သူ႕ကို နံမည္ေပးတဲ့အခါ စုၿပီးထိုင္ေဆြးေႏြးေလ့ရွိတဲ့ ေကာ္ဖီဆိုင္နံမည္ေလးသုံးၿပီး ေပးခဲ့ရာက Arduino ဆိုၿပီးျဖစ္လာတာပါ။ဟုတ္မဟုတ္ေတာ့လိုက္ဖတ္ၾကည့္ေပါ့ဗ်ာ 😃

Arduino မွာ board အမ်ိဳးမ်ိဳးရွိပါတယ္။ အသုံးမ်ားတာကေတာ့ UNO ပါ။ Arduino မွာအဓိကက်တာက Atmega 328 နဲ႕ Atmega 168 ပါ။ အဲ့ဒီ IC ႏွစ္လုံးကို ရင္းႏွီးေနရင္ ေတာ္႐ုံ arduino ကို လြယ္သြားပါလိမ့္မယ္။
ကြၽန္ေတာ္တို႔ Arduino ထဲမွာ သုံးတဲ့ atmega 328 တို႔ ကို AVR လို႔ေခၚပါတယ္။ PIC လိုမ်ိဳး microcontroller ပဲျဖစ္ပါတယ္။
Microcontroller ဆိုတာဘာလဲ။ Microcontroller ဆိုတာ ကြန္ျပဴတာအေသးေလးတစ္ခုကို IC တစ္ခုထဲထည့္ထားတာလို႔ အလြယ္မွတ္နိုင္ပါတယ္။
ကြန္ျပဴတာမွာ CPU ပါတယ္ RAM ပါတယ္ ROM ပါတယ္ Harddisk ပါတယ္။ Microcontroller ကေတာ့ cpu ပါတယ္ ram ပါတယ္ data memory ပါတယ္ eeprom ပါတယ္။ စသည္ျဖင့္ နဲနဲဆင္တူေပမဲ့ အလုပ္လုပ္နိုင္ပုံခ်င္းကေတာ့ ေတာ္ေတာ္ကြာပါတယ္။ ဒါေၾကာင့္အမ်ားစုကို control လုပ္တဲ့ေနရာမွာ microprocessor အစားသုံးရာကေန microcontroller လို႔ေခၚလာၾကတာျဖစ္ပါတယ္။ ေနာက္ပိုင္း microcontroller ေတြကေတာ့ေတာ္ေတာ္စြမ္းအားျမင့္လာၾကပါတယ္။
ကြၽန္ေတာ္တို႔ UNO board ကို နဲနဲ အထဲဝင္ေလ့လာၾကည့္ရေအာင္။ UNO board ကို main IC ျဖစ္တဲ့ Atmega 328 ရယ္ ကြန္ျပဴတာနဲ႕ခ်ိတ္ဆက္ဖို႔ CH340 IC ရယ္(တခ်ိဳ႕က atmega16 လား သုံးၾကတယ္) power ic lm1117 ရယ္ဆိုလား အိုင္စီ သုံးခုနဲ႕အဓိကတည္ေဆာက္ထားပါတယ္။ ေနာက္ပိုင္းမွာ အိုင္စီတစ္ခုခ်င္းစီကိုထပ္ေျပာေပးပါမယ္။
Arduino ကို ကြန္ျပဴတာနဲ႕ဆက္သြယ္ၿပီး အလုပ္လုပ္ခိုင္းတဲ့အခါ ကြန္ျပဴတာမွာ software တစ္ခုလိုပါတယ္။ အဲ့တာကေတာ့ Arduino IDE ဆိုတာပဲျဖစ္ပါတယ္။ Arduino ပဲေျပာရင္ ေရာကုန္မွာမို႔ software ကို arduino IDE လို႔ေျပာၿပီး circuit board ကို UNO စသည္နဲ႕ေျပာရင္ အဆင္ေျပပါမယ္။
UNO ကို ၾကည့္ရင္ computer နဲ႕ခ်ိတ္ဖို႔ USB အေပါက္တစ္ခုပါပါတယ္။ power ေပးဖို႔ DC အေပါက္တစ္ခုပါပါတယ္။ USB ခ်ိတ္ထားရင္ DC ေပါက္မသုံးလို႔ရပါတယ္။ ေနာက္ၿပီး analog အေပါက္ေတြပါပါမယ္။ A0, A1စသည္ျဖင့္ ေရးထားပါတယ္။ ေနာက္တစ္မ်ိဳးကေတာ့ digital pin ေပါက္ေတြပါ။ 0 ကေန 13 အထိ ေရးထားတာေတြ႕ပါမယ္။ အဲ့အထဲမွာမွ PWM pin အျဖစ္သုံးလို႔ရတာဆိုရင္ အေရွ႕မွာ ~ ဆိုတဲ့ လွိုင္းတြန႔္ေလးေတြ႕ပါမယ္။
ISP pinေတြ TX RX pin ေတြ I2C pin ေတြ Analog reference pin ေတြ 5V 3.3V pin ေတြ Ground pin ေတြ နဲ႕
အျပင္ကေန သပ္သပ္ power ေပးတဲ့ Vin pin ေတြ ေတြ႕ရပါမယ္။
Arduino IDE ကေန UNO ထဲ program ေတြ ဘယ္လိုသြားလဲ။
ဒီအပိုင္းမွာ IC အပိုင္းကစေျပာရင္ သူ႕မွာ Address နဲ႕ Data ဆိုၿပီးရွိပါတယ္။ ၿပီး ေတာ့ clock ဆိုတာေပါ့။ နဲနဲအၾကမ္းဖ်င္းေျပာျပပါမယ္။
သူအလုပ္လုပ္ပုံက Alarm ေပးတာနဲ႕တူပါတယ္။ စကၠန႔္တံေလးက ပုံမွန္သြားေနပါမယ္။ အဲ့တာကို clock လို႔ ျမင္ထားပါ။ မနက္၆နာရီဆိုတာက Address ပါ။ Alarm သီခ်င္း ဘာဆိုၿပီးေ႐ြးထားတာက Data ေပါ့။
clock ဟာ အဲ့ address ေရာက္ရင္ အဲ့ data ကို အလုပ္လုပ္ပါတယ္။ မနက္၆နာရီ သီခ်င္းစလာသလိုပါပဲ။
program ေရးတယ္ဆိုတာကေတာ့ alarm ဘယ္လိုေပးမလဲ ႀကိဳစီစဥ္တာပါ။ အဲ့မွာ နာရီတိုက္ရတာရွိပါတယ္။ အစကိုျပန္စခိုင္းတာေပါ့။ အဲ့လိုအစကျပန္စခိုင္းတာကိုေတာ့ reset လို႔ေခၚပါတယ္။ 555 မွာပါတဲ့ reset လိုပါပဲ။ အကုန္အစကေနျပန္လုပ္ေစတာပါ။ အဲ့လို အစ ဆုံး Address ကို 0000 နဲ႕ ေပးထားေလ့ရွိပါတယ္။
IC မွာ address နဲ႕ data ေတြ ေနရာခ်ဖိဳ႕ electrical လွ်ပ္စစ္နည္းနဲ႕ ထည့္ေပးတဲ့အရာကို hardware programmer လို႔ေခၚပါတယ္။ UNO board ထဲမွာ hardware programmer က တခါထည္းထည့္ထားၿပီးသားပါ။ PIC မွာက hardware programmer သပ္သပ္လိုပါတယ္။ AVR နဲ႕ PIC ကြာတာက PIC က 13.5V သုံးမွ program ေရးလို႔အဆင္ေျပပါတယ္။ AVR စသည္နဲ 5V နဲ႕ တင္ အဆင္ေျပပါတယ္။ IC ထဲကိုထည့္တဲ့ code ကို machine code လို႔ေခၚပါတယ္။ 1 နဲ႕ 0 ပဲပါပါတယ္။ 1 ေတြ႕ရင္ 5V ထုတ္ေပးၿပီး 0 ေတြ႕ရင္ 0V ထုတ္ေပးပါတယ္။ 1 နဲ႕ 0 ႏွစ္မ်ိဳးပဲရွိလို႔ အဲ့ code ေတြကို binary file လို႔ေခၚၾကပါတယ္။ ေနာက္ဆုံးမွာ .bin နဲ႕ဆုံးပါတယ္။ ဒါေပမဲ့ ဖတ္တဲ့အခါၾကေတာ့ 1 နဲ႕ 0 ပဲဆို ၾကည့္ရတာမူးလို႔ .hex အျဖစ္ ေျပာင္းၿပီး မွတ္ၾကသိမ္းၾကပါတယ္။ hex မွာလည္း intel hex ဘာညာနဲ႕ အမ်ိဳးကြဲေတြရွိေပမဲ့အေျခခံကေတာ့ အတူတူပဲျဖစ္ပါတယ္။
အဲ့လို IC ထဲထည့္ဖို႔ hex file ရေအာင္ တိုက္ရိုက္ေရးဖို႔ မလြယ္ပါဘူး အဲ့ေတာ့ လူေတြေရးဖို႔လြယ္ေအာင္ programming language ေတြထြက္လာပါတယ္။ English like language လို႔ေခည္ပါတယ္။ High level language လို႔လည္းေခၚပါတယ္။ မနက္6နာရီမွာဗိုလ္ေအာင္ဒင္ဖြင့္ပါဆိုၿပီးေရးတာမ်ိဳးေပါ့။
စက္ထဲမွာက မနက္၆နာရီကို address nuber 06 လို႔မွတ္ထားမယ္ play လုပ္တာကို 0x05 လို႔မွတ္ထားမယ္ ဗိုလ္ေအာင္ဒင္သီခ်င္းကို address 0206 ကေန 0905 အထိ ဆိုၿပီးမွတ္ထားရင္ 06 05 0206...0905 စတာေတြပဲ ေတြ႕ရလိမ့္မယ္။ အဲ့ေတာ့ စက္နားလည္ေအာင္ ၾကားမွာ ဘာသာျပန္ေပးရမဲ့ဟာေတြလိုလာတယ္။ Assembly နဲ႕ေရးရင္ Assembler ဆိုတာလိုတယ္။ C နဲ႕ေရးရင္ C complier လိုတယ္။ အဲ့လိုဘာသာျပန္ေပးတာကို complier လို႔ေခၚတယ္။ AVR မွာၾကေတာ့ avrdude ဆိုတာရွိတယ္။ ေနာက္တစ္ခုၾကေတာ့ programming language တစ္ခုကေန အျခားတစ္ခုကို ေျပာင္းေပးတာ converter လို႔လည္းေခၚၾကတယ္။ တိုက္ရိုက္ run လို႔မရတာကို ၾကားကေနဘာသာျပန္ေပးတဲ့ interprater ဆိုတာလည္းရွိတယ္။ DOS မွာ common.com ရွာမေတြ႕လို႔ interprater not found ဆိုတာျပတာေတြ႕ဖူးတယ္။
အဲ့ေတာ့ လူနားလည္ေအာင္ Arduino C language နဲ႕ ေရးၾကတယ္။ Arduino C ဟာ ရိုးရိုး C နဲ႕မတူပါဘူး။ ၿပီးေတာ့ ေရးၿပီးသားကို avrdude နဲ႕ UNO တို႔ေတြထဲထည့္ပါတယ္။ ဒါဆို အထဲမွာ မျမင္ရဘဲ အလုပ္လုပ္တာ ကို နဲနဲ တီးမိေခါက္မိရွိလာၿပီယူဆပါတယ္။
Basic programming နဲ႕ PIC Basic နဲ႕ မတူသလိုပါပဲ ဒါေပမဲ့ ဆင္ၾကပါတယ္။ Arduino ဆိုတာလည္းဒီလိုပါပဲ။ Arduino မွာ program ေရးတဲ့ေနရာကို sketch အၾကမ္းျခစ္တဲ့ ဟာလို႔ နံမည္ေပးထားပါတယ္။ အထဲမွာျပင္လိုက္ေရးလိုက္နဲ႕အၾကမ္းျခစ္တာနဲ႕တူလို႔ေပးထားတာနဲ႕တူပါတယ္။ sketch file ကို နံမည္ေပးၿပီး save ထားရင္ ေနာက္က. ino နဲ႕ဆုံးပါတယ္။ အမ်ားစုက my document ေအာက္က Arduino folder ထဲမွာရွိၾကပါတယ္။ sketch ပဲလားဆိုေတာ့ library file ေတြလည္းရွိပါတယ္ example file ေတြလည္းရွိပါတယ္။ ထားပါေတာ့ အျမင္လွေအာင္ ေနာက္ခံကာလာဘာညာေျပာင္းခ်င္ရင္ေတာ့ ေနရာေတြမွတ္ထားတာေကာင္းပါတယ္။ ေနာင္ႀကဳံသလိုရွင္းျပသြားပါမယ္။ Sketch ထဲမွာ ေနရာ အဓိက အေနနဲ႕ ႏွစ္ခုရွိပါတယ္။ အဲ့တာကို အနိမ့္ဆုံးလိုအပ္ခ်က္လို႔ေခၚပါတယ္။ VHDL မွာ အဲ့ပုံစံမ်ိဳးကိုသုံးပါတယ္။ အဲ့တာေတြကေတာ့ void setup နဲ႕ void loop ပါ။
တစစီျဖဳတ္ထားတဲ့ ေသနတ္ကို void setup လို႔ေခၚျပ်ိး က်ည္ဆံ ကို void loop လို႔ တြဲျမင္ေပးပါ။ ေသနတ္ျဖစ္ဖို႔ တစ္ခါပဲဆင္စရာလိုၿပီး က်ည္ပစ္ဖို႔ကေတာ့ ခဏခဏ လိုပါတယ္။ အဲ့လိုပဲ void setup ဆိုတာ လိုတာေတြကို တခါထည္းေၾကညာၿပီး ေနာက္ပိုင္း void loop ထဲကမွာပဲ ထပ္ခါထပ္ခါ အလုပ္လုပ္ေနမွာပါ။
ဥပမာ Character LCD မွာ စာေပၚဖို႔
Instruction mode ေျပာင္း၊ 8 bit 4 bit ေ႐ြး၊ cursor on၊ Display on၊ Home ကိုသြား စတာေတြ စစျခင္းလုပ္ေပးဖို႔လိုပါတယ္။ ၿပီးမွ AB CD စတဲ့စာေတြေရးတာလုပ္တာပါ။
အဲ့ေတာ့ lcd.begin() ဆိုတာကို အေပၚ က ဟာေတြ စုထည့္ထားၿပီး void setup ထဲ ထည့္ထားရင္ တစ္ခါ run ႐ုံနဲ႕ အဆင္ေျပသြားၿပီေပါ့။ ေနာက္မွ void loop ထဲ A B C D ေရးလိုက္ ဘယ္သြားညာသြားလုပ္လိုက္နဲ႕ ခဏခဏ ေရးတဲ့ဟာေတြ lcd.print("Desire_Maker"); ဘာညာ ေရးေပါ့။
အခုေလာက္ဆို sketch မွာ setup နဲ႕ loop ကို နဲနဲသေဘာေပါက္မယ္ယူဆပါတယ္။ တစ္ခုထပ္ေျပာဖို႔လိုတာက loop ထဲမွာေရးထားတဲ့တစ္ခုခုကို အျပင္ကေနယူသုံးလို႔မရပါဘူး။ ဒါေပမဲ့အျပင္ကေနသုံးတဲ့ဟာကို loop က ယူသုံးလို႔ရပါတယ္။ အဲ့ေနရာကို {} နဲ႕ life အေၾကာင္းေျပာတဲ့အခါ ရွင္းပါမယ္။ life ဆိုတာက { int num=0;} ဆိုၿပီးေရးထားခဲ့ရင္ {} အျပင္မွာ num ကို မသိေတာ့ပါဘူး။ ဆိုလိုတာက ကြင္းထဲမွာပဲ အသက္ရွိတယ္ အလုပ္လုပ္တယ္လို႔ဆိုလိုတာပါ။
code ေတြကို ဘယ္လိုေရးရမယ္မသိရင္ အရင္ဆုံး example ေတြကေနေလ့လာရပါမယ္။ အလြယ္ဆုံး example ကေတာ့ Bareminimum ဆိုတဲ့ example ပါ။ new ေတာင္းရင္ ေပၚလာတာနဲ႕တူပါတယ္။ ဘာမွ function ေတြ မထည့္ထားဘဲ form ပုံစံေလးတစ္ခုပဲပါတဲ့ example ေလးပါ။ အထဲမွာ
void setup(){
// put your code to run once
}

void loop(){
// put your code to run again and again
}
ဆိုၿပီးေတြ႕ပါမယ္။
// ဆိုတာရဲ႕ အေနာက္မွာရွိတဲ့စာေၾကာင္းတစ္ေၾကာင္းလုံးကို မသိရင္ျပန္ၾကည့္ရေအာင္ေရးတာလို႔ယူဆၿပီး အလုပ္လုပ္တဲ့အခါ ခ်န္ထားခဲ့ပါမယ္။ comment လို႔ေခၚပါတယ္။ ဥပမာ
A သည္ B ကို C သည္ // A ကုလား B ေခြး C တုတ္ျဖင့္ရိုက္

ဒါဆိုရင္ comment ဆိုတာ ျပန္ၾကည့္ရင္ အဆင္ေျပေအာင္ ေရးတဲ့အခါ ရွင္းေအာင္ နားလည္ေအာင္ ထည့္ေရးတဲ့ဟာလို႔ နားလည္မယ္ထင္ပါတယ္။
ကိုနားလည္ေအာင္ေရးခ်င္လည္း // ခံေရးယုံပါပဲ။
void ဆိုတာလည္းနဲနဲေျပာဖို႔လိုမယ္ဗ်။ return ျပန္ဖို႔မလိုရင္ void လို႔သုံးတယ္။ အလြယ္ပဲေျပာရရင္ ေက်ာက္သင္ပုံးေပၚေျမျဖဴနဲ႕ေရးသလိုပဲ။ ေက်ာက္သင္ပုန္းေပၚေျမျဖဴတင္ ညာဘက္ဆြဲေအာက္ဆြဲဘယ္ဘက္ဆြဲအေပၚဆြဲ ဆိုၿပီးလုပ္ၿပီးရင္ ေလးေထာင့္ပုံေလးေက်ာက္သင္ပုန္းေပၚေပၚၿပီးက်န္ေနမယ္။ ဘာမွထပ္လုပ္စရာမလိုတဲ့ကိစၥမ်ိဳး။
void မပါတာက်ေတာ့ တမ်ိဳး ေမာင္ေမာင္ ဘဘ ကို ထမင္းက်က္ၿပီလားေမး မက်က္ေသးရင္ နင္ေရခ်ိဳးထား က်က္ရင္ ထမင္းအရင္ခူး ဆိုတာမ်ိဳး
ေမာင္ေမာင္က ဘဘကို ေမးရမယ္ ရတဲ့အေျဖကို return ျပန္ရတယ္။ ဆိုလိုတာက ျပန္ယူလာရတယ္ေပါ့ ၿပီးမွ ထမင္းက်က္မက်က္ျပန္စစ္ၿပီး ေရခ်ိဳးမလား ထမင္းခူးမလားဆိုတာလုပ္ရတာ။ အဲ့ေတာ့ ကိုေရးတဲ့ function ဟာ return လိုရင္ void မပါဘဲေရးၿပီး return မလိုရင္ void ထည့္ေပးလိုက္ေပါ့။ ေနာင္ program ေရးရင္း နာလည္လာပါမယ္။ Program ေရးတဲ့အခါ data type ေတြသိထားရပါမယ္။
int
float
char
string
စတာေတြကိုနဲနဲရွင္းျပပါမယ္။
int ဆိုတာ integer ကိန္းျပည့္လို႔ေခၚၿပီး 1,2,3,4,5 စတဲ့ ဂဏန္းအတိအက်ေတြကိုေခၚတာျဖစ္ပါတယ္။ အေပါင္းပါသလို အႏွတ္လည္းပါပါတယ္ သုညလည္းပါပါတယ္။
အဲ့ထဲမွာမွ ထပ္ခြဲတာေတာ့ unsigned int ဘာညာေပါ့။ အေသးစိတ္ကိုေတာ့ SatanGod ေရးတဲ့ စာအုပ္ထဲမွာဖတ္ၾကည့္ပါ။ Programming ကို ေလ့လာသူတိုင္း ဖတ္ဖို႔သင့္ေတာ္ပါတယ္။ memory ယူတာကအစ ေသေသခ်ာခ်ာေရးထားလို႔ ၫႊန္းေပးပါတယ္။
ေနာက္တစ္ခုက float ပါ။ သူက 1.012 စတဲ့ ဒသမကိန္းေတြပါ။
char ကေတာ့ a b c d A B C D တစ္လုံးခ်င္းစီပါ
string ၾကေတာ့ Desire_Maker စတဲ့ character အစုအေဝးကို array ပုံစံစုစည္းထားတဲ့ စာေၾကာင္းေတြပါ။
char နဲ႕ string ကို ပိုၿပီးရွင္းေအာင္ေျပာရရင္ တစ္လုံးထဲဆို char ျဖစ္ၿပီး တစ္လုံးထက္ပိုၿပီးစုထားရင္ string လို႔ေခၚပါမယ္။
Data ေတြၿပီးရင္ ေနာက္ထပ္သိရမွာက operator ေတြပါ။ သခ်ၤာနဲ႕ဆင္ပါတယ္ + - အျမႇောက္ * အစား / ေတြပါ။
အေပါင္း အႏႈတ္ အျမႇောက္ နဲ႕ အစားပါ။
အဲ့ေနရာမွာ intenger ခ်င္းေပါင္းတာ float အခ်င္းခ်င္း ေပါင္းတာ ေတြမွာျပသနာမရွိေပမဲ့ မတူတဲ့ type ေတြ ေပါင္းတာဆိုရင္ ဘယ္လိုအလုပ္လုပ္လဲသိဖို႔လိုပါတယ္။
အဲ့အေၾကာင္းကိုေတာ့ programmming အပိုင္းမွာ ဆက္ၿပီးေဆြးေႏြးပါမယ္။ အခု Arduino Intro မွာ ဒါေလးေတြသိထားပါ။ Arduino board အမ်ိဳးအစား အမ်ားႀကီးရွိပါတယ္။ ထပ္ထပ္ၿပီးလဲထြက္လာၾကပါတယ္။ အသုံးမ်ားတာက UNO ျဖစ္ၿပီး ေသးေသးသုံးခ်င္ရင္ nano, pro mini စတာေတြနဲ႕သုံးပါတယ္။ ဘာေတြလုပ္လို႔ရလဲ၊ Arduino Board ေတြသုံးၿပီး automatic ပစၥည္းအမ်ားႀကီးလုပ္လို႔ရပါတယ္။ ေနထြက္လာရင္ မီးမွိတ္ေပးတာ၊ ဘက္ထရီအားျဖည့္တာျပည့္ရင္ရပ္ေပးတာ၊ ဖုန္းနဲ႕ ေရျပည့္မျပည့္ေစာင့္ၾကည့္တာ၊ တအိမ္လုံးဖုန္းနဲ႕ ထိန္းခ်ဳပ္တာေတြကို Arduino ကို အေျခခံ ၿပီး တည္ေဆာက္လို႔ရပါတယ္။ တခ်ိဳ႕စက္႐ုံေတြမွာ auto ေရျဖည့္တာ၊ ပလစ္စတစ္အပူေပးတာ၊ ေရသန႔္အဖုံးပိတ္တာ၊ သံရည္ႀကိဳၿပီး စက္နဲ႕ထုတာ ေတြ မွာ အစားထိုးသုံးနိုင္သလို
စိတ္ကူးဉာဏ္႐ွိသေလာက္ ဆားေရသံုးၿပီး lcd display ေလးနဲ႔ weather station ကို battery တစ္ခါထည့္ၿပီး ေျခာက္လတစ္ႏွစ္ ခံေအာင္ သံုးလို႔လည္းရပါတယ္ (low power library ကိုသံုးၿပီး deep sleep forever လုပ္ပါ)။
CNC machine ေတြ 3D printer ေတြ Bluetooth ေတြ Wifi ေတြ Internet ေတြ အစံု တြဲစပ္အသံုးျပဳလို႔ရပါတယ္။
ကဲ ဒီေလာက္ဆို Arduino ကို နဲနဲ သေဘာက်လာၿပီထင္ပါတယ္။ ဒီေန႔ေတာ့ ဒီေလာက္နဲ႔ပဲ မိတ္ဆက္ေပးလိုက္ပါၿပီဗ်ာ။




Credit :Ko Soe thu Aung
Share:

0 comments:

Post a Comment

Comments system

[blogger][disqus][facebook]

Disqus Shortname

sigma2

Recent News

PageNavi Results No.

Recent Post

Checker

Download link http://www.mediafire.com/file/254twn5cxsp9d38/Checker.apk

Search This Blog

Contact Form

Name

Email *

Message *