Monday, 24 September 2007

G Programming with LabVIEW - (2)

LabVIEW Installation လုပ္တဲ့အခါမွာ လိုအပ္တဲ့ Setting ေလးေတြအေၾကာင္းပါ။

တစ္ခုကေတာ့ ၾကံဳေတြ႕ေနက်ျဖစ္တဲ့ Activation ကိစၥပါ။ LabVIEW မွာ Crack ဆိုတဲ့ Folder ထဲမွာ Key-Gen ဆိုတဲ့ Program ေလးပါပါတယ္။ သူ႕ကိုအရင္ Run ၿပီးေတာ့ Serial Key ယူရပါတယ္။ ၿပီးရင္ License file ပါတစ္ခါတည္းထုတ္ၿပီး save လုပ္ခဲ့ပါ။ LabVIEW Installation လုပ္ၿပီးတဲ့အခါ National Instruments -> NI License Manager ကို run ပါ။ Option Menu ထဲက Install License File ထဲမွာ ခုန file ကို execute လုပ္လုိက္ရင္ ရပါၿပီ။ ဒီလုိမွမလုပ္ရင္ ထံုးစံအတိုင္း Evolution period ၃၀ ရက္ပဲရပါလိမ့္မယ္။


ေနာက္တစ္ခုကေတာ့ Example ေတြကိစၥပါ။ LabVIEW မွာ Example ေတြေတာ္ေတာ္မ်ားမ်ား ပါပါတယ္။ တစ္ခါတစ္ေလမွာ အဲဒီ Example file ေတြကို ဖြင့္လို႔မရတဲ့ ျပႆနာေပၚတတ္ပါတယ္။ အဲဒီအခါမွာ Control Panel -> Administrative Tools -> Services ထဲက NI Service Locator service ကို Stop ၿပီး Start ျပန္လုပ္ေပးလုိက္ပါ။ ၿပီးရင္ LabVIEW ကို Restart လုပ္လုိက္ပါ။



Mandalay Winter

“အားေမ့” ကလည္း တက္ဂ္၊ ကိုယ္တိုင္ကလည္း ေရးခ်င္ေနေတာ့ ေရးရၿပီေပါ့။ ဒီ ပို႔စ္က ကၽြန္ေတာ့ရဲ႕ ပထမဆံုး Personal ပို႔စ္ျဖစ္မွာပါ။ မန္းေလးမွာ ေဆာင္းတြင္းက အရမ္းေပ်ာ္ဖို႔ေကာင္းပါတယ္။ ပြဲေတြလည္းမ်ား။ ေကြးလုိ႔လည္းေကာင္းတာကိုး။ အရင္ကေတာ့ မန္းေလးေတာင္ကို ေဆာင္းတြင္းနံနက္ေတြမွာ သူငယ္ခ်င္းေတြစုၿပီး တက္ၾကတယ္။ လူေတြလည္းအမ်ားႀကီးပဲ။ အရမ္းေပ်ာ္ဖို႔ေကာင္းတယ္။ ပထမဆံုးရက္က ေတာ္ေတာ္ေအးတယ္ဆိုၿပီး အေႏြးထည္၀တ္ခဲ့တာ ေတာင္အလယ္ေလာက္မွာပဲ လႊင့္ပစ္ခ်င္စိတ္ေပါက္ခဲ့တာေပါ့။ ေတာင္တက္ရင္းနဲ႔ ပူလာတာကိုး။ အဲဒီကျပန္ရင္ တစ္ခုခု၀င္စား။ အလုပ္သြားဖို႔ အခ်ိန္လိုေသးတယ္ဆိုရင္ ကၽြန္ေတာ္ကေတာ့ ျပန္အိပ္တာပဲ။ ေနာက္ က်ံဳးေဘးမွာဆို မနက္ေကာ ညေကာ လူအရမ္းစည္တာပဲ။ New Year Night ဆိုရင္က်ံဳးေဘးမွာ သၾကၤန္က်သလုိကို စည္တာ။ အင္း ... မန္းေလးမွာဆိုရင္ ဘယ္အခ်ိန္မဆို ေပ်ာ္ေနတာပါပဲေလ .....။

The Most Favourite FIVE posts

“ႏွစ္ကူး” ကေတာ့ Tag ထားတာၾကာပါၿပီ။ မအားလို႔ မေရးျဖစ္တာပါ။ အႀကိဳက္ဆံုး ၅ ခုကေတာ့ . . .
၁။ LabVIEW ဒါက အခုလတ္တေလာမွာ ကၽြန္ေတာ္ေလ့လာေနတဲ့ Programming Language အသစ္ပါ။ ဆက္ၿပီးေလ့လာရင္းနဲ႔ သိသမွ်ေလးေတြတင္သြားဦးမွာပါ။
၂။ Kailed Image Converter ကေတာ့ DOS Platform/ Non DOS Platform မွာ ပံုေလးေတြတင္လုိ႔ရလို႔ပါ။ ကၽြန္ေတာ္တို႔ Pascal/ C နဲ႔ Program ေတြစေရးတုန္းက အဲဒီလုိ ပံုေလးေတြထည့္ခ်င္ခဲ့တယ္ေလ။ ဒါေပမယ့္ ဘယ္လုိလုပ္ရမလဲ မသိခဲ့တာပါ။
၃။ ေနာက္တစ္ခုက RAID ပါ။ ကၽြန္ေတာ္ ဘာမွမသိပဲ စာအုပ္ဖတ္ၿပီး ရမ္းလုပ္တာ ရသြားလို႔ပါ။ အမွတ္တရေပါ့။
၄။ RS232 Posts ေတြကေတာ့ အျမဲတမ္းသံုးေနရတယ္ေလ။ ဒါေၾကာင့္ ဘယ္ေတာ့မွ မေမ့ဘူး။
၅။ ေနာက္ဆံုးတစ္ခုက OrCAD ကၽြန္ေတာ္ဆက္မေလ့လာျဖစ္ေသးတဲ့ Designing Software ပါ။ Electronics Major ေက်ာင္းသားတုိင္း ေလ့လာထားသင့္တဲ့ Software မို႔ပါ။

Monday, 17 September 2007

Microcontroller & Peripheral Devices

Microcontroller ေတြမွာ အျခားေသာ peripheral device ေတြနဲ႔ခ်ိတ္ဆက္တဲ့အခါ Protocol ေတြသံုးရပါတယ္။ UART, SPI, I2C, FIFO ဆိုၿပီး Protocol အမ်ိဳးမ်ိဳးရွိပါတယ္။ အဲဒီထဲမွာ အသံုးအမ်ားဆံုးက SPI ပါ။ ဘာလို႔သံုးရသလဲဆိုေတာ့ communicate လုပ္ရတာလြယ္လုိ႔ပါ။ standard လည္းနည္းလို႔ပါ။ Peripheral Device ေတြကေတာ့ ...
- Converters (ADC, DAC)
- Memories (EEPROM, Flash)
- Real Time Clock (RTC)
- Sensors (Temperature, Pressure)
- Others (Signalmixer, Potentiometer, UART, CAN controller, USB devices, Amplifier)
.... ေတြပါပဲ။
SPI ဆိုတာ Serial Peripheral Interface သူ႕မွာ Master နဲ႔ Slave ဆိုၿပီးရွိပါတယ္။ Microprocessor ကအျမဲတမ္း Master ျဖစ္ၿပီး peripheral ေတြက Slave ပါ။ 4 Channels သံုးရပါတယ္။ SCLK (Slave Clock), MOSI (Master Out Slave In), MISO (Master In Slave Out), SS (Slave Select) ေတြပါ။ ေအာက္ကပံုက Master & Slaves ခ်ိတ္ဆက္တဲ့ပံုပါ။ Slave က တစ္ခုတည္းလည္းရွိႏိုင္ပါတယ္။

Mode မွာ ၄ ခုရွိပါတယ္။ Mode 0, 1, 2, 3 ေတြပါ။ CPOL (Clock Polarity) နဲ႔ CPHA (Clock Phase) ေပၚမွာမူတည္ၿပီး Mode ကြဲျပားပါတယ္။ Operation အစမွာ Clock က Low ဆိုရင္ CPOL=0 ပါ။ High ဆိုရင္ CPOL=1 ပါ။ ေနာက္ၿပီး Data bit က Clock ရဲ႕ Falling Edge မွာ Sampling လုပ္တယ္ဆိုရင္ CPHA=0 ျဖစ္ၿပီး Raising Edge မွာ Sampling လုပ္တယ္ဆိုရင္ CPHA=1 ပါ။ ေအာက္မွာ Mode ေတြျခားနားပံုကိုျပထားပါတယ္။

အခုလို အတိုေကာက္ ခြဲမွတ္လို႔ရပါတယ္။
SPI Mode CPOL CPHA

0 0 0
1 0 1
2 1 0
3 1 1

Default Mode က 0 ပါ။ ဒါမွမဟုတ္ သက္ဆိုင္တဲ့ Device က သတ္မွတ္ထားတဲ့ Mode ရွိေနမွာပါ။ Software မွာ Mode ကုိ ထည့္သြင္းစဥ္းစားစရာ မလိုပါဘူး။

MSB = Most Significant Bit ေရွ႕ဆံုး Data bit
LSB = Last Significant Bit ေနာက္ဆံုး Data bit

Tuesday, 11 September 2007

ADC (Analog to Digital Converter)

Software ကေန Volt/ Current Values ေတြကို တိုက္႐ုိက္ဖတ္လို႔မရႏိုင္ပါဘူး။ ဘာလို႔လဲဆိုေတာ့ Volt/ Current က Analog Signal ျဖစ္ၿပီးေတာ့ Microprocessor ေတြက Digital ျဖစ္ေနလုိ႔ပါ။ အဲဒီအေျခအေနမွာ ADC (Analog to Digital Converter) ကိုသံုးရပါတယ္။ သူ႕ရဲ႕အလုပ္လုပ္ပံုက ရွင္းပါတယ္။ Analog Signal ေတြကို Digital Signal ေျပာင္းေပးတာပါပဲ။ Data ေတြထုတ္တဲ့အခါ Binary နဲ႔ Two Compliment's Binary ဆိုၿပီး Data ပံုစံ ၂ မ်ိဳးနဲ႔ထုတ္လို႔ရပါတယ္။ ေအာက္ကပံုကေတာ့ ADC Chip ရဲ႕ပံုပါ။

Testing Serial Communication with Hyper Terminal

Computer နဲ႔ တျခား Electronics Machine ေတြနဲ႔ဆက္သြယ္တဲ့ ေနရာမွာ အဓိကအသံုးျပဳတဲ့ Port က COM port ပါ။ ေနာက္ပိုင္းမွာေတာ့ USB port ေတြကို သံုးလာၾကပါတယ္။ ဒါေပမယ့္ COM မွာ UART ဆိုတဲ့ ကိုယ္ပိုင္ Protocol တစ္ခုရွိတဲ့အတြက္ သူ႕ကိုအသံုးမ်ားတာပါ။ အဲဒီ Ports နဲ႔ Computer ကို အဆက္အသြယ္ရ၊ မရ ကေတာ့ Hyper Terminal ဆိုတဲ့ Windows မွာပါတဲ့ Build-in Software နဲ႔ စစ္ေဆးလို႔ရပါတယ္။ အဆင့္ဆင့္ကိုေတာ့ ေအာက္မွာေဖၚျပထားပါတယ္။ Hyper Terminal က ASCII Code ေတြပဲ ပို႔/ လက္ခံလုိ႔ရတဲ့အတြက္ Extended Commands ေတြပဲ Test လုပ္လုိ႔ရပါတယ္။ ၿပီးေတာ့ Byte-by-Byte ပဲ ပို႔လုိ႔ရပါတယ္။ တစ္ခ်ိဳ႕ Device ေတြက Short Command ေတြသံုးတဲ့အခါမွာ ျပႆနာရွိလာပါတယ္။ အဲဒီအခါမွာ တစ္ျခား Tester Software တစ္ခုကိုအသံုးျပဳရမွာပါ။ လတ္တေလာ ကၽြန္ေတာ္သံုးေနတာကေတာ့ COMPORT ဆိုတဲ့ Software ေလးပါ။ Internet ကေန Download လုပ္လုိ႔ရပါတယ္။ တစ္ျခား Software ေတြလည္းအမ်ားႀကီးပါ။ အဲဒီ Tester ေလးေတြက size အရမ္းေသးေပမယ့္ အလြန္အသံုး၀င္တဲ့ Software ေလးေတြပါ။ Test လုပ္တဲ့အခါမွာ သက္ဆုိင္ရာ Device ရဲ႕ Firmware Manual မွာပါတဲ့ Command ေတြကိုအရင္ေလ့လာၿပီးမွ စမ္းသပ္ပါ။ CLI ပဲရတာပါ။

1. ပထမဆံုး Start -> Programs -> Accessories -> Communications -> "Hyper Terminal" ကိုဖြင့္ပါ။

2. Connection Description dialog box ထဲမွာ Name တစ္ခုေပးၿပီး OK button ကိုႏွိပ္ပါ။

3. Connect to dialog ထဲမွာ Connect Using မွာ COM1, COM2, ... ကိုေရြးပါ။ တပ္ထားတဲ့ port ကိုေရြးေပးပါ။ OK button ကိုႏွိပ္ပါ။

4. COM1 properties မွာေတာ့ Bit per second (Baud rate), Data bits, Parity, Stop bit, Flow Control ေတြကို ေရြးေပးပါ။ အခုျပထားတာက default setting ပါ။ baud rate ကအေရးႀကီးပါတယ္။ အဲဒါမတူရင္ အလုပ္မလုပ္ပါဘူး။ OK button ကိုႏွိပ္ပါ။

5. test1 Hyper Terminal window ေပၚလာရင္ command ေတြ႐ိုက္လို႔ရၿပီး response ေတြၾကည့္လုိ႔ရပါၿပီ။

6. တကယ္လို႔ response ေတြမေပၚရင္ disconnect အရင္လုပ္ File -> properties ထဲက Settings ထဲမွာ ASCII properties ကို၀င္ echo characters ကို check လုပ္ေပးလုိက္ပါ။

Monday, 10 September 2007

Application Software with GameBoy

Electronics မွာ Software ကို အပိုင္း၂ ပိုင္းခြဲထားပါတယ္။ Embedded SW နဲ႕ Application SW ဆိုၿပီးခြဲတာပါ။ အရွင္းဆံုးေျပာရမယ္ဆိုရင္ေတာ့ Embedded က Microprocessor ရဲ႕ Software ပိုင္းျဖစ္ၿပီးေတာ့ Application က user interface ပုိင္း ျဖစ္ပါတယ္။ GUI (Graphical User Interface) ကိုသံုးၿပီးေရးရပါတယ္။ CLI (Command Line Interface) ကိုသံုးၿပီးေတာ့ ေရးတာကိုေတာ့ Embedded SW လုိ႔ပဲ ေျပာေလ့ရွိၾကပါတယ္။ GameBoy က GUI ကိုသံုးၿပီးေရးရတာ ျဖစ္တဲ့အတြက္ Application လို႔ေျပာၾကပါတယ္။ ကၽြန္ေတာ္လုပ္ခဲ့တဲ့ Project က GameBoy ကိုအေျခခံၿပီး Microprocessor ကေနတဆင့္ Data communication နဲ႔ လုပ္ၿပီးေတာ့ GameBoy မွာ Data storage နဲ႔ Display လုပ္ရတဲ့ program ေတြကို ေရးရတာပါ။ ေအာက္မွာျပထားတာက GameBoy ရဲ႕ diaplay ကို Emulator SW နဲ႔ ေဖၚျပထားတာပါ။ Emulator SW က GameBoy အစား software နဲ႔ GameBoy application ကိုစစ္ေဆးတဲ့ Software ေလးပါ။ Download ကိုေတာ့ ေအာက္မွာေပးထားတဲ့ Link ကေနလုပ္ယူလုိ႔ရပါတယ္။

Download Emulator Software

Nitendo GameBoy က ေနရာတကာမွာ ၀ယ္လို႔ရတဲ့အတြက္ ကိုယ္တိုင္လည္း Software ကိုတကယ္ စမ္းသပ္ ေရးၾကည့္လုိ႔ ရပါတယ္။

Sunday, 2 September 2007

Kaleid_1-2-3 Image Converter for DOS Programs

DOS Platform Programs (C++, Pascal, ...) မွာ ကုိယ္ႀကိဳက္တဲ့ Picture, Image ေတြကိုထည့္ခ်င္တဲ့အခါမွာ သံုးတဲ့ Software ေလးတစ္ခုပါ။ သူ႕ရဲ႕လုပ္ငန္းကေတာ့ .BMP file ကို C Source codes အျဖစ္ေျပာင္းလဲပစ္လုိက္တာပါပဲ။ DOS program ေတြမွာ Graphics mode (GUI) ကိုအသံုးျပဳတဲ့အခါ Pixel နဲ႔ Color ဆိုၿပီးခြဲေရးရပါတယ္။ Pixel က အစက္ (point) ေလးေတြနဲ႔ ေနရာခ်ၿပီး Image ကိုဖန္တီးတာပါ။ Color က လုိခ်င္တဲ့အေရာင္ေတြ Hexadecimal Code ေတြနဲ႔ သတ္မွတ္တာပါ။ ၂၅၆ အေရာင္အထိပဲ အမ်ားဆံုးရႏိုင္ပါတယ္။ Image size ကေတာ့ Display device ေပၚမူတည္ၿပီး Limitation ရွိပါတယ္။ တြက္ခ်က္ၿပီး ဖန္တီးမယ္ဆိုရင္ အလြန္ခက္ခဲတဲ့အတြက္ ဒီ Software ေလးကိုသံုးၾကတာပါ။ ကၽြန္ေတာ္ကေတာ့ GameBoy ရဲ႕ Display မွာ ပံုေတြထဲ့ခ်င္တဲ့အခါမွာ သံုးပါတယ္။

တကယ္ေတာ့ ဒီ Software ကို Embedded Software ေတြကို ေရးတဲ့ Programmer ေတြအမ်ားဆံုးသံုးေလ့ ရွိပါတယ္။ Low/ High level programming language ေတြနဲ႔ DOS platform မွာ Program ေရးတဲ့သူေတြအတြက္ အလြန္ေကာင္းပါတယ္။ Assembly Codes အျဖစ္နဲ႔လည္း ထုတ္လို႔ရပါတယ္။

ဥပမာ - ေရႊတိဂုံဘုရားပံု (အေပၚကပံု) ကို DOS မွာေဖၚျပခ်င္တယ္ဆိုပါေတာ့။ Kaleid နဲ႔ေျပာင္းလုိက္ရင္ ေအာက္မွာေတြ႔ရတဲ့ Code ေတြပါတဲ့ C header file တစ္ခုထြက္လာမွာပါ။ အဲဒီဖိုင္ကုိ ယူသံုးလုိက္႐ံုပါပဲ။ ေရးရတဲ့ Code ေတြကိုအတိအက်သိခ်င္ရင္ေတာ့ ေအာက္က URL မွာ ပါတဲ့ Website မွာေလ့လာႏိုင္ပါတယ္။

Resolution ကေတာ့ DOS Mode မွာဆိုေတာ့ သိတဲ့အတိုင္း ခပ္နန ေလးပဲရမွာပါ။

//256 Color Tile Graphics, Tile Size: 83x60, Tiles Used: 3448
#include
const u16 bagoda_gfx[110336] = {
0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,
.............................................................................................
0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xDADA,0x9ADA,0x9A9A,0xDADA,
0xD9D9,0xD9D9,0xD8D9,0xD8D8,0xD1D1,0xD9D1,0xD8D9,0xD8D8,
};

Codes ေလ့လာခ်င္ရင္
http://www.gbajunkie.co.uk/

Software ေဒါင္းလုပ္ လုပ္ခ်င္ရင္
Download Kaleid_1-2-3

“ေရႊတိဂံု ဘုရား” ပံုေတာ္ကေတာ့ ကၽြန္ေတာ့္ေဘာ္ဒါႀကီး “ေမာင္တုန္” လွဴဒါန္းတာပါ။ ေက်းဇူးပါ ကိုေမာင္လွ။

Saturday, 1 September 2007

Sunx Laser Marker

ပလတ္စတစ္၊ သစ္သား၊ ဖန္ထည္၊ သံ၊ သားေရထည္ အစရွိတဲ့ မ်က္ႏွာျပင္ေတြေပၚမွာ စာလံုးေတြထြင္းခ်င္၊ ေရးခ်င္ တဲ့အခါ၊ သပ္သပ္ရပ္ရပ္နဲ႔ (စာလံုးအရြယ္အစား၊ Line width 12.6 um to 655 nm အထိ) ေရးခ်င္တဲ့အခါ ဒီ Machine ကိုသံုးပါတယ္။ ကၽြန္ေတာ္တို႔ဆီမွာသံုးတာက SunX LP-400 အမ်ိဳးအစားပါ။ Sunx Laser Marker မွာ ၂မ်ိဳးရွိပါတယ္ CO2 နဲ႔ FAYb ပါ။

CO2 Type က ေစ်းသက္သာတယ္။ ဒါေပမယ့္ Non-Impact အမ်ိဳးအစား ျဖစ္ပါတယ္။ ထြင္းလို႔မရဘူးေပါ့။ ပလတ္စတစ္၊ ဖန္၊ သစ္သား၊ သားေရ မ်က္ႏွာျပင္ေတြေပၚမွာ ရပါတယ္။ LP-200, LP-300, LP-400 Models ေတြရွိပါတယ္။ LP-400 ကေတာ့ Coated Metal Substrates ေတြေပၚမွာလည္း ရပါတယ္။

CO2 LP-400CO2 LP-200

ေနာက္တစ္မ်ိဳးက FAYb Type ပါ။ သူက အထက္ကမ်က္ႏွာျပင္ေတြ အျပင္ Metal ေတြပါရပါတယ္။ Impact အမ်ိဳးအစားျဖစ္လို႔ ထြင္းလို႔ရပါတယ္။ LP-F10, LP-V10 Models ေတြရွိပါတယ္။ LP-V10 ရဲ႕ Laser Beam က ပိုၿပီး ေကာင္းပါတယ္။

FAYb LP-V10အသံုးျပဳလို႔ရတဲ့ Application ေတြကို ေအာက္မွာေဖာ္ျပထားပါတယ္။

Open/ Short Tester VS Phoe Thant (1)

အဲဒီမွာ ပထမဆံုး (အခုအခ်ိန္အထိလည္း အဲဒီပံုစံတူ ေတြပါပဲ) စေတြ႕တဲ့ Machine ကေတာ့ Open/ Short Tester ပါ။ Circuit ေတြမွာ Test Point ေတြသတ္မွတ္ Point-to-Point Open/ Short ေတြကိုစစ္တာပါ။ Open/ Short ကိုေတာ့ ကၽြန္ေတာ္ Post တစ္ခုအျဖစ္တင္ခဲ့ၿပီးပါၿပီ။ Panasinics Company က Fax Machine ေတြရဲ႕ PCB ေတြကို စစ္ေဆးတဲ့ Machine ပါ။ သူက Hardware ပိုင္းနဲ႔၊ ကၽြန္ေတာ္က Software (Program) ပိုင္းကိုတာ၀န္ယူရပါတယ္။ C Programming Language ပါပဲ။

ပထမတစ္ခုက Modify သက္သက္ပါ။ Project တစ္ခုကို စလုပ္ရတာဆုိေတာ့ ကလည္ကလည္နဲ႔ ဟိုလူ၀င္ကူ၊ ဒီလူ၀င္ကူနဲ႔ ၿပီးသြားတယ္ဆိုပါေတာ့ဗ်ာ။ ေနာက္တစ္ခုက Cavity (PCB) ၂ ခုကိုအၿပိဳင္တည္းစစ္ရတယ္။ Customer ကိုေနာက္တစ္ေန႔မနက္မွာ ေပးရမယ္ဆိုရင္ ဒီေန႔ည ၁၁ နာရီေလာက္မွာ အၿပီးလုပ္လုိက္ရတယ္။ Problem ကေတာ့ သူတို႔လုိခ်င္တဲ့ Time Limit ကို မရလို႔ Speed-upလုပ္ရင္းကေန Capacitor ေတြက Charging Speed ကိုမလိုက္ႏိုင္ေတာ့ Default values ျဖစ္သြားတယ္။ အဲဒီမွာ Error ေတြျဖစ္ၿပီး ၾကာသြားတာေပါ့။ Senior တစ္ေယာက္က ၀င္ကူေပးလုိက္လို႔ အိမ္ျပန္ရတာပါ။ သူလုပ္လုိက္တာက Resistor တစ္ခုကို Parallel ခ်ိတ္ေပးလုိက္တာပါပဲ။ သေဘာက Charging speed ကို ေလွ်ာ့ခ်ပစ္လုိက္တာေပါ့။ Experience က စကားေျပာသြားတယ္ေလ။ ပညာေတာ္ေတာ္ရလိုက္ပါတယ္။

ေနာက္ ၃ ရက္ေလာက္ၾကာေတာ့ အဲဒီစက္ ျပန္ေရာက္လာပါတယ္။ Test Point ေတြ ထပ္တိုးခ်င္လို႔တဲ့။ ေတာ္ေတာ္႐ႈပ္တဲ့ Panasonics (PCM) ပါဗ်ာ။
Panasonics Fax Machine
Test Points and Channels (Just Example)

Shwe Kay & Phoe Thant

နည္းပညာနဲ႔မဆိုင္တဲ့ Post တစ္ခုပါ။ ကၽြန္ေတာ္ ဆက္ေရးမယ့္ Post ေတြနဲ႔ ပါတ္သတ္မႈေတြရွိလုိ႔ ဒီလူေတြအေၾကာင္း ထည့္ေရးရမွာပါ။ သူတို႔က လက္ရွိကၽြန္ေတာ္နဲ႔ Company အတူတူလုပ္ေနၾကတဲ့ သူငယ္ခ်င္းေတြပါ။ ပထမတစ္ေယာက္က “ေရႊေကး” ပါ။ နာမည္အရင္းေတာ့ မေရးေတာ့ပါဘူး။ ရခိုင္ေပါ့။ သူက ကၽြန္ေတာ္တို႔ထက္ ၆လ ေလာက္ေစာၿပီး ေရာက္ေနတာေပါ့။ ေနာက္တစ္ေယာက္က “ဖိုးသန္႔”။ သူက မံုရြာဘက္က။ ကၽြန္ေတာ့္ထက္ ၂ ေယာက္လံုး အသက္ငယ္ၾကတယ္။ သူတို႔က Company မွာ Hardware ပိုင္း၊ ကၽြန္ေတာ္က Software ပိုင္းေပါ့။ အဲဒီေတာ့ Senior ေတြက ေတြကို ျမန္မာ ၂ေယာက္ တြဲလုပ္ခုိင္းေလ့ရွိပါတယ္။ အမ်ားစုကေတာ့ ဖိုးသန္႔ နဲ႔ပါ။

Friday, 10 August 2007

GameBoy for User Interface with Machines

Microcontroller Program (Embedded SW) ေတြမွာ User Interface ေတြ Display ေတြအသံုးျပဳခ်င္တဲ့အခါမွာ GameBoy ဆိုတဲ့ Device ေလးကိုအသံုးျပဳပါတယ္။ GameBoy ဆိုတာတကယ္ေတာ့ ကေလးေတြကစားတဲ့ TV Game ေလးပါပဲ။ Memory Card ပါတဲ့အတြက္ Game အသစ္ေတြကို Download လုပ္ၿပီးကစားလို႔ရတာေပါ့။ Testing, Sensor Machine ေတြမွာ သူ႕ကိုအသံုးျပဳရတာက ၀ယ္ရတာလြယ္တယ္၊ ေစ်းသက္သာတယ္၊ RGB Display, GUI (Graphical User Interface) ရတယ္၊ သံုးရတာအဆင္ေျပတယ္၊ Software ေရးရတာအဆင္ေျပတယ္ အဲဒါေတြေၾကာင့္ပါ။ ဘာ Debugger, Compiler အသစ္မွလည္းမလိုပါဘူး။ USB Adaptor ေလးတစ္ခုရွိရင္ရပါတယ္။ မ်ားေသာအားျဖင့္ေတာ့ C language ကိုပဲအသံုးျပဳပါတယ္။ ကၽြန္ေတာ္တို႔သံုးတာကေတာ့ Visual C++ Software ပါ။ စက္ကေတာ့ Netando GameBoy ပါ။ သူ႕မွာ Assign လုပ္စရာ Key ေတြလည္းပါေတာ့ Menu Selection လုပ္ရတာ အဆင္ေျပပါတယ္။ ဒါေပမယ့္ User Interface နဲ႔ Menu Selection သက္သက္ပဲရတာပါ။ တျခား ဘာ Function မွေတာ့ လုပ္မေပးႏိုင္ပါဘူး။ Machine ေတြနဲ႔တြဲသံုးပါတယ္။


Netando Game Boy ေလးေတြရဲ႕ပံုပါ။

Thursday, 9 August 2007

Short Commands (C language)

Short Commands ဆုိတာကေတာ့ C (ANSI* Standard) ေရးတဲ့အခါမွာ Microcontroller chip ေတြဆီကို ေပးတဲ့ Command ပံုစံပါ။ Microcontroller မွာ OS မရွိတဲ့အတြက္ Command ေတြကို တိုက္႐ိုက္ေပးလုိ႔မရႏိုင္ပါဘူး။ ဥပမာ - DIR command ကို Storage drive တစ္ခုဆီကို ေပးခ်င္တယ္ဆိုၾကပါစို႔။ MS-DOS မွာဆိုရင္ C:\>DIR (Enter) ဆိုရင္ရပါၿပီ။ ဒါကို Extended Command လို႔ေခၚပါတယ္။ ဒါေပမယ့္ Microcontroller မွာက်ေတာ့ $01, $0D ဆိုတဲ့ Short Command ကိုသံုးရပါတယ္။ $01 က DIR command ပါ။ $0D က (Enter) ပါ။ Hexadecimal system ကိုသံုးၿပီးတြက္ရပါတယ္။ 01=0000 0001, 0D=0000 1101 ေပါ့။ Monitor Port Commands လုိ႔လည္းေခၚပါတယ္။ သက္ဆုိင္တဲ့ Port ေတြကို သက္ဆိုင္တဲ့ bit ေတြပို႔ရပါတယ္။ ဘာလို႔လဲဆိုေတာ့ Port ေတြက Binary digit ေတြကိုပဲလက္ခံႏိုင္လုိ႔ပါ။ Internet မွာ Short Commands လုိ႔ရွာၿပီးဆက္လက္ေလ့လာႏုိင္ပါတယ္။ ကၽြန္ေတာ္သံုးတာ Vinculum VNC1L Disk Interface Firmware ကိုသံုးၿပီး ပို႔တာပါ။

*ANSI = American National Standard Institute

Wednesday, 8 August 2007

G Programming with LabVIEW - (1)

LabVIEW (G programming) နဲ႔ Program ေရးတဲ့အခါမွာ Front Panel နဲ႔ Block Diagram ဆိုၿပီး ၂ ေနရာမွာ ေရးရပါတယ္။ Front Panel ဆိုတာက VB မွာ Form (User Interface) လိုျဖစ္ၿပီး Block Diagram က VB မွာ Code (Logic) ပံုစံမ်ိဳးျဖစ္ပါတယ္။ ဒီမွာေတာ့ စာမေရးရပဲ Logic Diagram (Icon), Flow line ေလးေတြနဲ႔ Program တည္ေဆာက္ရပါတယ္။ ေအာက္မွာ ဥပမာေလးတစ္ခုျပထားပါတယ္။ Front Panel မွာ Controls Box က Component ေတြကိုသံုးရၿပီးေတာ့ Block Diagram မွာေတာ့ Functions Box က Component ေတြကိုသံုးရပါတယ္။ Reference Manual နဲ႔တြဲၿပီးေလ့လာပါ။ လြယ္ပါတယ္။

Front Panel


Controls Box


Block Diagram

Functions Box

Run လုိက္ရင္ထြက္လာတဲ့ Screen Design ပါ။

HP 16500A Logic Analysis System

ဒီစက္ကေတာ့ Microcontroller Program ေတြေရးတဲ့အခါမွာ Ports ေတြကေန ကိုလိုခ်င္တဲ့ Singnal, Waveform ေတြထြက္ရဲ႕လားလုိ႔စစ္ေဆးတဲ့ Analysis system စက္ပါ။ ကၽြန္ေတာ္အခုေရးေနတဲ့ Program ကို ပထမဆံုး 2 Channels Analogue Oscilloscope နဲ႔ signal အမွန္ထြက္မထြက္စစ္ၾကည့္ပါတယ္။ ဒါေပမယ့္ ကၽြန္ေတာ့္ program က 4 channels (CLK, SC, DIN, DOUT) ထုတ္ေပးတာဆိုေတာ့ 2 Channels နဲ႔မလံုေလာက္တဲ့အခါ 4 Channel Digital Oscilloscope ကိုသံုးၾကည့္ပါတယ္။ အဆင္ေျပပါတယ္။ ဒါေပမယ့္ လက္က ၂ ဖက္ပဲရွိတာရယ္ Wire ေတြက႐ႈပ္ေနတာရယ္ေၾကာင့္ Waveform ေတြကို Break ၿပီးၾကည့္တဲ့အခါ အဆင္မေျပပါဘူး။ အဲဒီအခါမွာ ကၽြန္ေတာ္ဒီစက္ကုိ ေျပာင္းၿပီးသံုးဖို႔ ႀကိဳးစားရပါတယ္။ ဒီစက္က Channel ေပါင္း ၇၅ ခုကို တၿပိဳင္နက္မွာ Waveform တိုင္းတာလို႔ရပါတယ္။ စက္ကေတာ့ ေခတ္ေနာက္က်ေနပါၿပီ။ ဒါေပမယ့္ အလြန္အသံုးက်ေနပါေသးတယ္။ HP (Hewlett Packard) ကထုတ္ပါတယ္။ 16500A Logic Analysis System ပါ။ Digital Waveform ေတြကိုထုတ္ေပးပါတယ္။ Oscilloscope ေတြထက္ အလြန္တိက်တဲ့ Digital Waveform ေတြထုတ္ေပးပါတယ္။

Tektronix 2/ 4 Channels Digital Storage Oscilloscopes
HP 6500A Logic Analysis System