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)
.... ေတြပါပဲ။- 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 က တစ္ခုတည္းလည္းရွိႏိုင္ပါတယ္။


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
ကိုမိုး .. http://engineersformyanmar.blogspot.com မွာ ၀င္ေရးေစခ်င္ပါတယ္ ။
ReplyDeleteအီးေမးလ္အက္ ေပးပါ ။ က်မ အင္ဗိုက္ လုပ္လိုက္ပါမယ္ ။
တခုသတိထားမိတာ.. ကိုမိုးေရးထားတာေတြက နုတ္စ္သေဘာအေနနဲ့ အေပၚယံနည္း၂ဆန္ေနပါတယ္ ။ ဒီ့ထက္ ေတာ့ပစ္တခုကို အတြင္းပိုင္းထိ ေရးျပနိုင္မယ္ဆို ၊ ပိုထိေရာက္မယ္ ထင္ပါတယ္ ။
ခုလိုေရးထားတာေတြလညး္ ေကာင္းလွပါျပီ ။ က်မကေတာ့ အီလက္ထရြန္းနစ္ပိုင္း လုပ္ေနေပမယ့္ ၊ ဗမာလိုျပန္ေရးဖို့ မျဖစ္နိုင္ေသးလို့ း) ။ အေတြ ့အၾကံဳေတြ ေနာက္ပိုင္း ဖလွယ္ၾကတာေပါ့ ။