Generate unique id on esp8266

Generate id on esp8266

หัวข้อบทคววาม

ESP8266 คืออะไร 

คือ โมดูล WiFi จาก จีน ที่ มี ความ พิเศษ ตรง ที่ ตัว มัน สามารถ โปรแกรม ลง ไป ได้

ทำ ให้ สามารถ นำ ไป ใช้งาน แทน ไมโคร คอนโทรลเลอร์ ได้เลย และ มี พื้น ที่ โปรแกรม ที่ มากถึง 4MB

ทำ ให้ มี พื้นที่ เหลือมาก ใน การ เขียนโปรแกรม ลง ไป

ESP8266 เป็น ชื่อ ของ ชิป ไอซี บนบอร์ด ของ โมดูล ซึ่ง ไอซี ESP8266 ไม่มี พื้น ที่ โปรแกรม (flash memory)

ใน ตัว ทำให้ ต้อง ใช้ ไอซี ภายนอก (external flash memory) ใน การ เก็บโปรแกรม

ที่ ใช้ การเชื่อมต่อ ผ่าน โปรโตคอล SPI ซึ่ง สาเหตุ นี้เอง ทำให้ โมดูล ESP8266

มี พื้น ที่ โปรแกรม มากกว่า ไอซี ไมโคร คอนโทรลเลอร์ เบอร์ อื่นๆ

ESP8266 ทำงาน ที่ แรงดัน ไฟฟ้า 3.3V – 3.6V การ นำ ไป ใช้ งาน ร่วมกับ เซ็นเซอร์ อื่น ๆ

ที่ ใช้ แรงดัน 5V ต้อง ใช้ วงจร แบ่ง แรงดัน มาช่วย เพื่อ ไม่ ให้ โมดูล พัง เสียหาย

กระแส ที่ โมดูล ใช้งาน สูงสุด คือ 200mA ความถี่ คริสตอล 40MHz ทำ ให้

เมื่อ นำ ไป ใช้งาน อุปกรณ์ ที่ ทำงาน รวดเร็ว ตาม ความถี่ เช่น LCD

ทำให้ การ แสดงผล ข้อมูล รวดเร็ว กว่า ไมโคร คอน โทรลเลอร์ ยอดนิยม Arduino มาก

Generate id on esp8266 ขาของโมดูล ESP8266 แบ่งได้ดังนี้

  • VCC เป็นขาสำหรับจ่ายไปเข้าเพื่อให้โมดูลทำงานได้ ซึ่งแรงดันที่ใช้งานได้คือ 3.3 – 3.6V
  • GND
  • Reset และ CH_PD (หรือ EN) เป็นขาที่ต้องต่อเข้าไฟ + เพื่อให้โมดูลสามารถทำงานได้ ทั้ง 2 ขานี้สามารถนำมาใช้รีเซ็ตโมดูลได้เหมือนกัน แตกต่างตรงที่ขา Reset สามารถลอยไว้ได้ แต่ขา CH_PD (หรือ EN) จำเป็นต้องต่อเข้าไป + เท่านั้น เมื่อขานี้ไม่ต่อเข้าไฟ + โมดูลจะไม่ทำงานทันที
  • GPIO เป็นขาดิจิตอลอินพุต / เอาต์พุต ทำงานที่แรงดัน 3.3V
  • GPIO15 เป็นขาที่ต้องต่อลง GND เท่านั้น เพื่อให้โมดูลทำงานได้
  • GPIO0 เป็นขาทำหรับการเลือกโหมดทำงาน หากนำขานี้ลง GND จะเข้าโหมดโปรแกรม หากลอยไว้ หรือนำเข้าไฟ + จะเข้าโหมดการทำงานปกติ
  • ADC เป็นขาอนาล็อกอินพุต รับแรงดันได้สูงสุดที่ 1V ขนาด 10 บิต การนำไปใช้งานกับแรงดันที่สูงกว่าต้องใช้วงจรแบ่งแรงดันเข้าช่วย
Generate id on esp8266

ขอบคุณ ที่ มา จาก : ESP8266 ตอนที่ 1 รู้จักกับ ESP และ รุ่น ที่ นิยม ใช้งาน

 

โค้ด นี้ สำหรับ หา serial number ของ แต่ ละ ตัว ของ esp98266 / arduino

Generate id on esp8266

#include <ArduinoUniqueID.h>

void setup()
{
Serial.begin(9600);
UniqueIDdump(Serial);
Serial.print(“Serial Unique ID: “);
for (size_t i = 0; i < UniqueIDsize; i++)
{
if (UniqueID[i] < 0x10)
Serial.print(“0”);
Serial.print(UniqueID[i], HEX);
Serial.print(“ “);
}
}

void loop() {

}

libray สามารถ download ได้ที่ https://github.com/ricaun/ArduinoUniqueID

หมาย เหตุท้าย :
หาก คุณชอบ บทความ นี้ อย่าลืม คลิก❤ ด้าน ล่าง เพื่อ แนะนำ และ ถ้าคุณมีคำถามใด ๆ แสดงความคิดเห็นและฉันจะพยายามอย่างดีที่สุดที่จะตอบ คุณสามารถติดตามฉันบน facebook page (https://www.facebook.com/nextsoftwarehousethailand/) และสามารถส่งอีเมลถึงฉัน

ติดตั้ง Python