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

Monday, 6 August 2007

LabVIEW (G Programming)

အခုကၽြန္ေတာ္ေလ့လာေနတဲ့ Programming Language တစ္ခုအေၾကာင္းေျပာမလို႔ပါ။ ကၽြန္ေတာ္လည္း ခ်ာခ်ာလည္ေနေတာ့ အျမည္းသေဘာေလာက္ပဲ ေျပာျပႏိုင္မွာပါ။ G Programming လို႔ေခၚပါတယ္။ အရွည္ကေတာ့ Graphical Programming ပါ။ Symbol, Ports, Instruments ေတြကိုအသံုးျပဳၿပီးေတာ့ Program တည္ေဆာက္ရပါတယ္။ Logics, Flow Diagrams, Variables, .... အစရွိတဲ့ ရဲ႕ဆက္စပ္ကိရိယာေတြပါပါတယ္။ အားလံုး Symbol ေလးေတြနဲ႔ပါ။ အသံုးျပဳရတဲ့ Software နာမည္ကေတာ့ LabVIEW လုိ႔ေခၚပါတယ္။ NI (National Instruments) ဆိုတဲ့ Company ကထုတ္လုပ္ပါတယ္။ NIMax လုိ႔လည္းေခၚပါတယ္။ ပထမဆံုး VI (Virtual Instruments) diagram တည္ေဆာက္ရပါတယ္။ Visual Basic မွာဆိုရင္ေတာ့ Form ေပါ႔။ ေနာက္ Block Diagram ထဲမွာ program logic ေတြထည့္ရပါတယ္။ Visual Basic မွာဆိုရင္ေတာ့ Code ေပါ့။ ၿပီးရင္ေတာ့ထံုးစံအတိုင္း Program ကို Run ရပါတယ္။ Reference Manual ပါထည့္ေပးလုိက္ပါတယ္။ ေလ့လာၾကည့္ပါ။ အဓိကအသံုးျပဳတဲ့ ေနရာေတြကေတာ့ Automation , Measurements, Robotics Applications ေတြမွာပါ။

Download : G Programming Reference Manual (for LabVIEW)