วันเสาร์ที่ 8 เมษายน พ.ศ. 2560

ARDUINO ตอน30 if AND COMPARISON OPERATORSเครื่องหมายเปรียบเทียบ



ARDUINO ตอน30 if AND COMPARISON OPERATORSเครื่องหมายเปรียบเทียบ
8/4/2560 SONGCHAI PRAPATRUNGSEE
ARDUINO ตอน30 if AND COMPARISON OPERATORSเครื่องหมายเปรียบเทียบ

เครื่องหมายเปรียบเทียบ
4/7/2557 SONGCHAI PRAPATRUNGSEE
เครื่องหมายเปรียบเทียบ
ว่าเป็นจริง(TRUE) หรือ เท็จ(FALSE)

ถ้าเป็นจริง ทำงานในฟังชันนั้น
ถ้าเป็นเท็จ ไม่ทำงานในฟังชัน ให้กระโดดข้ามไป

ตัวอย่าง สมมุติให้ a=10 และ b=5
< 
น้อยกว่า
a<b
แบบนี้เป็นเท็จไม่ทำงาน
<=
น้อยกว่าหรือเท่ากับ

a<=b
แบบนี้เป็นเท็จไม่ทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง
> 
มากกว่า
a>b
แบบนี้เป็นจริงทำงาน
>=
มากกว่าหรือเท่ากับ

a>=b
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง
==
เท่ากับ
a==b
แบบนี้เป็นเท็จไม่ทำงาน
!=
ไม่เท่ากับ
a!=b
แบบนี้เป็นจริงทำงาน
&&
และ(AND AND)

a==10&&b==5
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นเท็จก็จะเป็นเท็จ

||
หรือ(OR OR)
a==10||b==0
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง

#include <REGX51.H>

unsigned char a=10,b=5;

void main(){
        P1=0;
        while(1){
                if(a!=b){
                P1=~P1;
         }
        }
}
//////////////////////////////////////////
อธิบายโปรแกรม

#include <REGX51.H>
คือการนำเอารีจิสเตอร์ของAT89S51เข้ามาร่วม

unsigned char a=10,b=5;
เป็นการประกาศตัวแปรแบบโกลบอล
กำหนดตัวแปรa=10และb=5

void main(){ }
คือฟังชันหลัก

P1=0;
กำหนดPORT1=0 หมายถึงPORT1เป็นกราวด์ทั้งหมด

while(1){ }
เป็นคำสั่งวนลูปไม่รู้จบ

if(a!=b){ }
เป็นคำสั่งตรวจสอบเงื่อนไข
ถ้า aไม่เท่ากับb ก็แสดงว่าเป็นจริง(TRUE)
เข้าไปทำงานในลูป
ถ้า aเท่ากับb ก็แสดงว่าเป็นเท็จ(FALSE)
ก็จะไม่ทำงานและโดดข้ามลูปนี้ไป

P1=~P1;
~ หมายถึง NOTหรือCOMPLEMENT
หรือกลับด้านแบบสมบูรณ์

PORT1กลับด้านจากกราวด์เป็นไฟทั้งPORT
และเมื่อกลับมาอีกครั้งก็จะกลับไฟเป็นกราวด์ทั้งPORT


ไม่มีความคิดเห็น: