Page 49 - ArduinoและPOP-BOT
P. 49
49
ตั วอย างที่ 4-27
int ledPin = 13;
เทคนิ คสํ าหรั บการเขี ยนโปรแกรม
เมื่ อตั วแปรมี ค ามากกว าค าสู งสุ ดที่ เก็ บได จะเกิ ดการ “ล นกลั บ” (roll over) ไปยั งค าตํ่ าสุ ดที่ เก็ บได และ
เมื่ อมี ค าน อยกว าค าตํ่ าสุ ดที่ เก็ บได จะล นกลั บไปยั งค าสู งสุ ด ดั งตั วอย างต อไปนี้
ตั วอย างที่ 4-28
int x
x = -32,768;
x = x - 1; // x now contains 32,767 - rolls over in neg. direction
x = 32,767;
x = x + 1; // x now contains -32,768 - rolls over
4.8.4 unsigned int : ตั วแปรประเภทเลขจํ านวนเต็ มไม คิ ดเครื่ องหมาย
ตั วแปรประเภทนี้ คล ายกั บตั วแปร int ตรงที่ ใช หน วยความจํ า 2 ไบต แต จะเก็ บเลขจํ านวนเต็ มบวกเท านั้ น โดย
เก็ บค า 0 ถึ ง 65,535 (2 -1)
16
รู ปแบบคํ าสั่ ง
unsigned int var = val;
พารามิ เตอร
var คื อชื่ อของตั วแปร int ที่ ต องการ
val คื อค าที่ ต องการกํ าหนดให กั บตั วแปร
ตั วอย างที่ 4-29
unsigned int ledPin = 13;
เทคนิ คสํ าหรั บการเขี ยนโปรแกรม
เมื่ อตั วแปรมี ค ามากกว าค าสู งสุ ดจะล นกลั บไปค าตํ่ าสุ ด และเมื่ อมี ค าน อยกว าค าตํ่ าสุ ดจะล นกลั บเป นค า
สู งสุ ด ดั งตั วอย าง
ตั วอย างที่ 4-30
unsigned int x
x = 0;
x = x - 1; // x now contains 65535 - rolls over in neg direction
x = x + 1; // x now contains 0 - rolls over