| Thaimicrotron.com : Home | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
การใช้งาน
SHT1x Sensor Probe วัดอุณหภูมิ ความชื้น |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pin
layout |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2). Command sequence | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2.1). Transmission Start | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ลักษณะเงื่อนไขของสัญญาณมีลักษณะเป็น | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - Data เปลี่ยนจาก
1 เป็น 0 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - Data เปลี่ยนจาก
0 เป็น 1 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2.2). Connection reset sequence | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| -เมื่อขาดการติดต่อกับอุปกรณ์ ให้ส่ง SCK ไปอย่างน้อย 9 ลูก ขณะที่ Data เป็น 1แล้วตามด้วย Transmission Start | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2.3). I/O Characteristics | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Timing
Diagram |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3). List of commands | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SHT1x
list of commands |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| การอ่านข้อมูลจาก Sensor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
การรับส่งข้อมูล |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ชุดคำสั่งประกอบด้วย Transmission Start+Address+Command | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| โดย Address= 000 3 +Command 5 bit | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3.1) Measurement sequence (T and RH) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| การอ่านค่าอุณหภูและความชื้นสัมพัทธ์ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ตัวอย่างเมื่อไมโครฯ ต้องการอ่านค่า Humidity จาก sensor ซึ่งมี address =000 และคำสั่ง=00101 จะมีชุดคำสั่งดังนี้ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ลักษณะสัญญาณในการอ่านข้อมูลจาก
Sensor |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| เมื่อ sensor รับทราบคำสั่งแล้วจะส่ง acknowledge (ACK) ด้วยการดึงขา Data ลงเป็น 0 (เส้นทึบ) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ลักษณะสัญญาณในการอ่านข้อมูลT/H
2 byte จาก Sensor |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| -ข้อมูลของ temperature มีขนาด 14bit และ humidity มีขนาด 12bit (สามารถเปลี่ยนได้เป็น 12 และ 8 bit โดย status register.) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| - เมื่อได้รับ
acknowledge แล้วให้ไมโครฯ รอสักครู่ประมาณ >210 ms เพื่อให้ Sensor พร้อม
แล้วจึงส่งสํญญาณ SCK ต่อไปอีก 2 byte สำหรับรับข้อมูล และ 1 byte สำหรับ ข้อมูล ตรวจสอบ ความผิดพลาด (CRC) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| จากตัวอย่างจะสามารถอ่านข้อมูล
12 bit ของ Humidity (4 bit แรกเป็น 0 เสมอ) ได้เป็น 0000 1001 0011 0001= 2353 (dec)= 75.79%RH |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| เมื่อได้ข้อมูลครบแล้วหากต้องการ CRC ให้ตอบ acknowledge ด้วยการดึงขา Data ลงเป็น 0 หากไม่ต้องการก็ข้ามขั้นตอนนี้ไป | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3.2) การอ่านข้อมูลเพื่อตรวจสอบข้อผิดพลาด (CRC) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ลักษณะสัญญาณในการอ่านข้อมูล
CRC8 1byte จาก Sensor |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ส่งสํญญาณ SCK
ต่อไปอีก 1 byte (8 bit)สำหรับ ข้อมูล CRC หากสิ้นสุดการติดต่อก็ไม่ต้องตอบ acknowledge ปล่อยให้ Data เป็น 1 ไว้ เมื่อผ่าน SCK ลูกที่ 9 หากต้องการอ่านข้อมูลต่อ ให้ตอบ acknowledge ด้วยการดึงขา Data ลงเป็น 0 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ตารางหาค่า
d1,d2 ขนาด 14 bit,12 bit ที่แรงดัน 5 และ 3V |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3.3) การเปลี่ยนข้อมูล digital | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| การเปลี่ยนข้อมูล digital เป็นข้อมูล temperature | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ค่าของข้อมูล temperature มีลักษณะเป็นเชิงเส้นสามารถคำนวนได้โดยใช้สูตร | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| เช่นอ่านข้อมูล digital ขนาด14 bit ได้ SOT =011010 11111111B = 06911 dec | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ที่แรงดัน 5 V เมื่อต้องการอ่านค่าเป็นองศา Celsius จะได้ค่า d1= -40 ,d2 = 0.01 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ผลการคำนวน temperature = 29.11C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| การเปลี่ยนข้อมูล digital เป็นข้อมูล humidity | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ค่าของข้อมูล humidity มีลักษณะไม่เป็นเชิงเส้น สามารถคำนวนได้ตามขั้นตอนดังนี้ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| เช่นอ่านข้อมูล digital ขนาด 12 bit ได้ RH-linear = 0110 11111111B =1791 dec | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ที่แรงดัน 5 V อ่านค่า Tc = 29.11C (จาก 3.3.1) เมื่อต้องการหาค่า humidity จะได้ค่า c1= -4 ,c2 = 0.0405 ,c3 = -0.0000028 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ผลการคำนวนค่า humidity = 60.18% | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ตัวอย่างการใช้งานโปรแกรม | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||