[ บทความ : ถาม ตอบ #1 ]

From: "วรวุฒิ ฉันทขจรกิจ" [ wut9@thaimail.com ]

Subject: คำสั่ง output input

Q : ผมซื้อหนังสือ micro c มาอ่านไม่เข้าใจคำสั่งที่ออก บิต output เช่น P1=0*ff หมายถึงอะไรครับ

A : น่าจะเป็นคำสั่งว่า

	P1 = 0xff;
ใช่ไหมครับ ความหมายของมันก็คือว่า
P1 คือ พอร์ตหมายเลข 1 ของ MCS-51
0xff คือ FF ฐานสิบหก

Q : ช่วยยกตัวอย่างการส่งค่าให้บิต output จาก P1.0 ถึง P1.7 ด้วยครับ

A : P1 ประกอบด้วย 8 บิต คือ P.0 ถึง P1.7 ใช่ไหมครับ แล้ว C เนี่ย มันเข้าถึงขั้นต่ำแบบเป็น Byte ดังนั้น เวลาใช้งานพอร์ต อย่าง P1 ก็หมายถึง P1.0 - P1.7 เช่น

เราสั่ง P1 = 0x01 ก็หมายความว่า

	P1.0 = 1, P1.1 = 0, P1.2 = 0, ... P1.7 = 0 

ถ้าสั่งว่า P1 = 0x10 ก็หมายความว่า

	P1.0 = 0, .. P1.3 = 0, P1.4 = 1, P1.5 = 0, ... P1.7 = 0

พอเข้าใจมากขึ้นไหมครับ ลองอ่านรายละเอียดจากบทแรกๆ ประกอบนะครับ เพราะถ้าคุณเริ่มเขียนโปรแกรม โดยข้ามบทแรกๆ ไป จะทำให้เกิดปัญหาเรื่อง มีการตกหล่นในรายละเอียด .... ถ้ามีอะไรสงสัยอีกก็ e-mail มาอีกนะครับ

Q : ขอบคุณครับ

A : ขอบคุณเช่นกันครับ ถ้ามีอะไรสงสัย ก็ถามมาได้อีกนะครับ

ศุภชัย บุศราทิจ
คณะคอมพิวเตอร์และเทคโนโลยีชั้นสูง
สถาบันราชภัฎเพชรบุรี


เขียนโดย : ศุภชัย บุศราทิจ
Author : Supachai Budsaratij
วันที่ทำการปรับปรุง : ๑๙ ส.ค. ๒๕๔๔