SƠ ĐỒ CHÂN Module GSM GPRS Sim800L

Sơ đồ kết nối với arduino uno

—————————–CODE THAM KHẢO—————————-

MỘT SỐ SẢN PHẨM LIÊN QUAN:

https://nshopvn.com/product/arduino-uno-r3-dip-kem-cap/

https://nshopvn.com/product/arduino-uno-r3-smd-chip-dan-kem-cap/

https://nshopvn.com/product/arduino-mega2560-r3-atmega16u2/

Thông tin chi tiết Đánh giá

Module SIM800L Mini GPRS GSM

Bảng thông số kĩ thuật

Module SIM800L GSM / GPRS là một module GSM thu nhỏ, có thể được tích hợp vào các dự án IoT khác nhau. Bạn có thể sử dụng module này để thực hiện hầu hết mọi thứ mà một chiếc điện thoại di động bình thường có thể làm: Tin nhắn văn bản SMS, thực hiện hoặc nhận các cuộc gọi điện thoại, kết nối với internet thông qua GPRS (2G), TCP / IP,… Trên hết, module SIM800L hỗ trợ mạng GSM / GPRS bốn băng tần, có nghĩa là nó hoạt động được ở nhiều loại mạng khác nhau ở các quốc tra khác nhau trên thế giới.

Giá bán module SIM800L hiện nay là rẻ nhiết trong tất cả các dòng module SIMxxx.

Trung tâm của module là chip SIM800L GSM của SimCom. Điện áp hoạt động của chip là từ 3,4V đến 4,4V, tương thích trực tiếp với pin LiPo.

Tất cả các chân tín hiệu chính của GSM SIM800L được nối ra header nên bạn có thể dễ dàng cấp nguồn và điều khiển module thông qua UART. Module hỗ trợ baudrate từ 1200bps đến 115200bps với việc tự động điều chỉnh baudrate phù hợp.

Module cần một ăng-ten ngoài để kết nối với mạng di động. Các module đã đi kèm với một ăng-ten xoắn ốc được kết nối trực tiếp đến chân NET trên PCB. PCB cũng có cổng kết nối U.FL trong trường hợp bạn muốn gắn thêm hoặc thay đổi vị trí ăng-ten.

Có một khe cắm SIM ở mặt sau! Bạn chỉ cần thẻ micro SIM với 2G  đã được kích hoạt. Hướng để lắp thẻ SIM được khắc trên bề mặt của khe cắm SIM. Module chỉ có kích thước rất nhỏ nhưng tích hợp một số tính năng được liệt kê dưới đây:

- Hỗ trợ Quad-band: GSM850, EGSM900, DCS1800 và PCS1900

- Kết nối với tất cả các mạng GSM với bất kỳ loại SIM 2G nào

- Thực hiện và nhận cuộc gọi thoại bằng loa ngoài 8Ω & micrô

- Gửi và nhận tin nhắn SMS

- Gửi và nhận dữ liệu GPRS (TCP / IP, HTTP, v.v.)

- Quét và nhận các đài phát thanh FM

- Công suất thu phát:

+ Class 4 (2W) cho GSM850

+ Class 1 (1W) cho DCS1800

- Bộ lệnh AT dựa trên kết nối UART (Serial)

- Đầu nối FL cho ăng ten di động

- Sử dụng thẻ micro SIM

Bạn có thể xem thêm các thông số khác của SIM800L GSM từ Cellular chip: SIM800L GSM

Có một đèn LED ở phía trên bên phải của module GSM SIM800 L cho biết trạng thái kết nối mạng di động của module. Nó sẽ nhấp nháy ở nhiều mức delay khác nhau để hiển thị trạng thái của module.

Module đang hoạt động

nhưng chưa kết nối với mạng di động

Module đã kết nối thành công với ạng di động

bạn đã có thể gửi/nhận tin nhắn và gọi/nhận điện thoại

Module cần ăng-ten để kết nối với mạng di động để gọi điện, nhắn tin hoặc truyền dữ liệu GPRS. Vì vậy, lựa chọn ăng-ten là điều rất quan trọng. Có hai cách bạn có thể gắn ăng-ten vào mô-đun SIM800L.

Đầu tiên là ăng-ten GSM xoắn ốc thường đi kèm với mô-đun và chỉ cần hàn đến chân NET trên PCB. Ăng-ten này rất hữu ích cho các dự án cần tiết kiệm không gian đặc biệt là các dự án ở trong nhà.

Loại thứ hai là ăng-ten GSM 3dBi cùng với dây chuyển đổi U.FL sang SMA có thể mua tại các cửa hàng bán linh kiện với giá rẻ. Bạn có thể gắn ăng-ten này vào đầu nối u.fl nhỏ nằm ở góc trên cùng bên trái của module. Loại ăng-ten này có hiệu suất tốt hơn và cho phép đặt mô-đun của bạn bên trong vỏ kim loại – miễn là ăng-ten nằm ở bên ngoài.

Một trong những yếu tố quan trọng nhất để module SIM800L hoạt động là cung cấp đủ năng lượng cho nó.

Tùy thuộc vào trạng thái của module SIM800L, mức năng lượng tiêu thụ sẽ khác nhau. Mức tiêu thụ tối đa của module là khoảng 2A trong khi truyền phát. Nó không thường xuyên cần dòng như vậy, nhưng có thể sẽ cần khoảng 216mA trong khi gọi điện thoại hoặc 80mA trong khi truyền dữ liệu qua GPRS. Bảng dữ liệu tóm tắt dưới đây là thông số dòng điện cần cho các hoạt động của module:

Do module SIM800L không đi kèm với bộ điều chỉnh điện áp trên board mạch, nên cần có nguồn điện bên ngoài được điều chỉnh theo điện áp trong khoảng từ 3,4V đến 4,4V (lý tưởng là 4.1V). Nguồn cung cấp có dòng MAX là 2A, nếu không module sẽ liên tục bị reset. Dưới đây là các lựa chọn để cấp nguồn cho module SIM800L

Một trong những điều thú vị về pin Li-Po là điện áp của chúng thường nằm trong khoảng 3,7V – 4.2V, rất hoàn hảo cho module SIM800L. Bất kỳ pin Li-ion / polymer 1200mAh hoặc dung lượng lớn hơn có thể cung cấp điện áp ổn định ngay cả trong trường hợp sử dụng dòng 2A.

Bất kỳ bộ chuyển đổi DC-DC có dòng lớn hơn 2A như LM2596 đều có thể cấp điện cho module SIM800L. LM2596 có hiệu năng tốt hơn nhiều so với LM317 hoặc LM338.

Module SIM800L có tổng cộng 12 chân I/O có vị trí như hình dưới đây:

NET là chân kết nối với Ăng-ten bên ngoài

VCC là chân cấp nguồn cho module SIM 800L có mức điện áp từ 3.4V đến 4.4 volts. Lưu ý: Nếu kết nối với điện áp 5V có thể làm cháy module, nó cũng không thể hoạt động ở điện áp 3.3 V! Nguồn điện từ Pin Li-Po hoặc mạch ổn áp DC-DC có mức điện áp 3.7V và 2A là phù hợp nhất

RST (Reset) là chân dùng để reset. Nối chân reset xuống mức thấp ở 100ms sẽ reset toàn bộ module.

RxD (Receiver) Chân dùng để kết nối UART

TxD (Transmitter) Chân dùng để kết nối UART

GND Chân nối mass, chúng ta cần nối mass chung với Arduino.

RING pin Hoạt động giống như chuông điện thoại. Nó thường dùng để ngắt ngoài (Interrupt) Arduino. Mặc định của nó là mức cao và được kéo xuống mức thấp 120ms khi nhận cuộc gọi. Ngoài ra, bạn có thể điều chỉnh để có thể xuất xung khi nhận tin nhắn SMS.

DTR pin activates/deactivates chế độ sleep. Đặt chân này ở mức CAO sẽ đưa module vào trạng thái ngủ, disable giao tiếp UART. Kéo chân xuống mức THẤP sẽ đánh thức hoạt động của module.

MIC± là 2 kết nối microphone.

SPK± là 2 kết nối của loa.

Chúng ta không thể kết nối trực tiếp chân Rx trên module với chân TX của Arduino vì Arduino Uno sử dụng GPIO 5V trong khi module SIM800L sử dụng logic mức 3,3V và không chịu được mức 5V. Điều này có nghĩa là tín hiệu Tx đến từ Arduino Uno phải được giảm xuống còn 3,3V để không làm hỏng module SIM800L. Có một số cách để làm điều này nhưng cách dễ nhất là sử dụng một bộ chia áp bằng điện trở đơn giản. Một điện trở 10K giữa SIM800L Rx và Arduino D2, và 20K giữa SIM800L Rx và GND.

Dưới đây là 2 lựa chọn cấp nguồn dành cho module SIM800L

Để gửi lệnh AT với module SIM800L, chúng ta sẽ sử dụng “Serial Monitor” trên Arduino IDE. Đoạn code dưới đây sẽ cho phép Arduino giao tiếp với module SIM800L trên serial monitor. Trước khi chúng ta đi sâu vào chi tiết mã, hãy kết nối Arduino của bạn với PC và upload đoạn code bên dưới vào Arduino.

Khi bạn mở serial monitor, hãy đảm bảo rằng cả hai tùy chọn NL & CR, được chọn!

Đoạn code bắt đầu từ việc include Software Serial và khởi tạo chân TX và RX để kết nối module SIM 800L:

Trong hàm setup(), chúng ta sẽ khởi tạo kết nối serial giữa Arduino và SIM800L với baud rate là 9600.

Bây giờ chúng ta đã thiết lập các kết nối cơ bản, chúng ta sẽ giao tiếp với module SIM800L bằng cách gửi các lệnh AT.

Trong đoạn code trên, chúng ta gọi hàm tùy chỉnh được gọi là updateSerial (). Nó sẽ liên tục chờ đợi dữ liệu đầu vào nào từ serial monitor và gửi nó đến module SIM800L thông qua chân D2 (Rx của module). Nó cũng liên tục đọc chân D3 (Tx của module) nếu module SIM800L có bất kỳ phản hồi nào.

Bạn sẽ nhìn thấy điều tương tự như thế này trên serial monitor của bạn:

Bây giờ bạn có thể tự do gửi bất kỳ lệnh nào thông qua serial monitor:

Bạn có thể xem thêm các lệnh AT khác bằng cách tham khảo:

Danh sách tập lệnh AT

Đoạn code chương trình Arduino sau sẽ gửi SMS đến bất kỳ số điện thoại nào bạn muốn. Trước khi nạp code, bạn cần nhập số điện thoại. Tìm kiếm chuỗi +ZZxxxxxxxxxx và thay thế ZZ bằng +84(mã vùng Việt Nam) và xxxxxxxxxx bằng số điện thoại 10 chữ số.

Đoạn code trên gần giống như trước đây ngoại trừ đoạn mã dưới đây:

AT + CMGF = 1 – Chọn định dạng tin nhắn SMS dưới dạng văn bản. Định dạng mặc định là Đơn vị dữ liệu giao thức (PDU)

AT + CMGS = + ZZxxxxxxxxxx – Gửi SMS đến số điện thoại được chỉ định. Tin nhắn văn bản được nhập theo bảng mã ASCII. Và cuối cùng bạn cần ký tự ‘Ctrl+z’ tương ứng với 26 DEC (số 26 theo mã thập phân) (1AHEX) để kết thúc tin nhắn.

Vòng lặp được giữ trống vì chúng ta chỉ muốn gửi SMS một lần. Nếu bạn muốn gửi SMS thêm một lần nữa, chỉ cần nhấn phím RESET trên Arduino của bạn. Dưới đây là ảnh chụp màn hình cho thấy SMS được gửi từ module GSM SIM800L.

Bây giờ chúng ta sẽ viết chương trình Arduino dùng để đọc các tin nhắn SMS đến. Đoạn code này rất hữu ích khi bạn cần kích hoạt một hành động khi nhận được một SMS cụ thể. Ví dụ, khi Arduino nhận được SMS, bạn có thể bật hoặc tắt rơle.

Đoạn code cũng tương tự như trước đây ngoại trừ đoạn mã dưới đây:

AT + CMGF = 1 – Chọn định dạng tin nhắn SMS dưới dạng văn bản. Định dạng mặc định là Đơn vị dữ liệu giao thức (PDU)

AT + CNMI = 1,2,0,0,0 – chỉ định cách xử lý tin nhắn SMS mới đến. Bằng cách này, bạn có thể thông báo cho module SIM800L để chuyển trực tiếp các tin nhắn SMS mới đến PC hoặc lưu chúng trong bộ lưu trữ tin nhắn và sau đó thông báo cho PC về vị trí của chúng trong bộ lưu trữ tin nhắn.

Phản hồi của nó bắt đầu bằng + CMT: Tất cả các trường trong phản hồi được phân tách bằng dấu phẩy với trường đầu tiên là số điện thoại. Trường thứ hai là tên của người gửi SMS. Trường thứ ba là dấu thời gian trong khi trường thứ tư là tin nhắn đến.

Trong trường hợp này chúng ta vẫn giữ hàm loop() vì chúng ta cần nhận trực tiếp tin nhắn điện thoại mỗi khi có tin nhắn mới đến.

Nếu tin nhắn quá dài, bạn có thể sẽ nhận được nó với một số ký tự bị thiếu. Đây không phải là do lỗi của Arduino mà là bộ đệm nhận SoftwareSerial của bạn bị quá tải và Arduino không đọc đủ nhanh từ bộ nhớ đệm.

Giải pháp đơn giản nhất cho vấn đề này là tăng kích thước của bộ nhớ đệm SoftwareSerial từ kích thước mặc định là 64 byte lên 256 byte.

Trên PC Windows, hãy truy cập C:\Program Files (x86) -> Arduino -> hardware -> Arduino -> avr -> libraries -> SoftwareSerial (-> src cho phiên bản mới hơn của Arduino IDE) Mở SoftwareSerial.h và thay đổi dòng:

Sau đó save file và mở Arduino IDE lại.

Đoạn code này rất hữu ích khi bạn muốn Arduino của bạn thực hiện cuộc gọi SOS trong trường hợp khẩn cấp như nhiệt độ bị vượt quá hoặc ai đó đột nhập vào nhà bạn.

Trước khi nạp code, bạn cần nhập số điện thoại. Tìm kiếm chuỗi ZZxxxxxxxxxx và thay thế ZZ bằng mã 84 và xxxxxxxxxx bằng số điện thoại 10 chữ số.

Để thực hiện cuộc gọi theo các lệnh AT đã được sử dụng:

ATD + + ZZxxxxxxxxxx; – Quay số được chỉ định. Dấu chấm phẩy (;) ở cuối phân tách chuỗi quay số thành nhiều lệnh quay số. Tất cả trừ số cuối cùng phải kết thúc bằng dấu chấm phẩy (;).

Hình ảnh dưới đây là cuộc gọi của module SIM800L và điện thoại:

Nhận cuộc gọi không đòi hỏi bất kỳ đoạn code đặc biệt nào; bạn chỉ cần nhận dữ liệu từ module SIM800L. Tuy nhiên, bạn có thể thấy đoạn code này rất hữu ích, khi bạn cần kích hoạt một hành động khi nhận được một cuộc gọi từ số điện thoại cụ thể.

Cuộc gọi đến thường được biểu thị bằng ‘RING, trên serial monitor theo sau là số điện thoại và ID người gọi. Để chấp nhận / ngắt cuộc gọi theo các lệnh AT được sử dụng:

ATA – Chấp nhận cuộc gọi đến.

ATH – Cúp máy. Khi kết thúc cuộc gọi, nó sẽ gửi NO CARRIER trên màn hình nối tiếp cho biết cuộc gọi không thể kết nối.

Trên serial monitor hiển thị cuộc gọi nhận được bởi module SIM800L GSM:

Nguồn: https://lastminuteengineers.com/sim800l-gsm-module-arduino-tutorial/

🔈 Nhận làm bài tập điện tử miễn phí và tính phí.

🔈 Mỗi tuần sẽ nhận một bài tập miễn phí, đăng ký qua zalo: 0941344233

----------------------------------------------------------------------------------------------------

✅ Bài tập môn 1: 200.000đ.

✅ Bài tập môn 2: 300.000đ

Các bài tập, đồ án khó hơn giá cả thương lượng!

NHẬN PHAY MẠCH IN LIÊN HỆ: 0912849051 & https://cardcv.net/Thuyen.technicians

⭕ Website: https://mualinhkien.vn

📺 Kênh Youtube: https://www.youtube.com/channel/UCTnJ8z_qIDQ4gSDlSRoRXug

🛒Shopee: https://shopee.vn/chotroivietnam

🆘 Group FaceBook: https://www.facebook.com/groups/tuhusupport

🏤 Địa chỉ: Số 2, ngõ 106 Lê Thanh Nghị, Bách Khoa, Hà Nội.

🕐 Thời gian làm việc tất cả các ngày trong tuần:

SÁNG: 8h05 – 12h30 CHIỀU: 14h – 18h ☎ Liên hệ: 0941344233 (SĐT & ZALO)

Có một số sản phẩm hết hàng chưa được cập nhật và lỗi thông số kỹ thuật bị ẩn.Mong quý khách thông cảm !!!

Module Sim800L có khả năng nhắn tin SMS, nghe, gọi, GPRS, … như một điện thoại nhưng có kích thước nhỏ nhất trong các loại module SIM (25 mm x 22 mm). Điều khiển module sử dụng bộ tập lệnh AT dễ dàng, chân kết nối dùng rào đực thông dụng (male header) chuẩn 100mil.

VCC: Nguồn vào 3.7 - 4.2V

TXD: Chân truyền Uart

TX RXD: Chân nhận Uart RX

DTR : Chân UART DTR, thường không xài

SPKP, SPKN: ngõ ra âm thanh, nối với loa để phát âm thanh

MICP, MICN: ngõ vào âm thanh, phải gắn thêm Micro để thu âm thanh

Reset: Chân khởi động lại Sim800L (thường không xài)

RING : báo có cuộc gọi đến G

ND: Chân Mass, cấp 0V

Bảo hành sản phẩm là: khắc phục những lỗi hỏng hóc, sự cố kỹ thuật xảy ra do lỗi của nhà sản xuất.

1.1. Quy định về bảo hành

– Sản phẩm được bảo hành miễn phí nếu sản phẩm đó còn thời hạn bảo hành được tính kể từ ngày giao hàng, sản phẩm được bảo hành trong thời hạn bảo hành ghi trên Sổ bảo hành, Tem bảo hành và theo quy định của từng hãng sản xuất liên quan đến tất cả các sự cố về mặt kỹ thuật.

– Có Phiếu bảo hành và Tem bảo hành của công ty hoặc nhà phân phối, hãng trên sản phẩm. Trường hợp sản phẩm không có số serial ghi trên Phiếu bảo hành thì phải có Tem bảo hành của CÔNG TY DOLA (kể cả Tem bảo hành gốc).

1.2. Những trường hợp không được bảo hành

– Sản phẩm đã hết thời hạn bảo hành hoặc mất Phiếu bảo hành.

– Số mã vạch, số serial trên sản phẩm không xác định được hoặc sai so với Phiếu bảo hành.

– Tự ý tháo dỡ, sửa chữa bởi các cá nhân hoặc kỹ thuật viên không phải là nhân viên CÔNG TY DOLA

– Sản phẩm bị cháy nổ hay hỏng hóc do tác động cơ học, biến dạng, rơi, vỡ, va đập, bị xước, bị hỏng do ẩm ướt, hoen rỉ, chảy nước, động vật xâm nhập vào, thiên tai, hỏa hoạn, sử dụng sai điện áp quy định.

– Phiếu bảo hành, Tem bảo hành bị rách, không còn Tem bảo hành, Tem bảo hành dán đè, hoặc Tem bảo hành bị sửa đổi (kể cả Tem bảo hành gốc).

– Trường hợp sản phẩm của Quý khách hàng dán Tem bảo hành của CÔNG TY DOLA hay nhầm lẫn thông tin trên Phiếu bảo hành, Phiếu mua hàng: Trong trường hợp này, bộ phận bảo hành sẽ đối chiếu với số phiếu xuất gốc lưu tại Công ty, hóa đơn, phần mềm của Công ty hay thông tin của nhà phân phối, hãng, các Quý khách hàng khác mua cùng sản phẩm cùng thời điểm, nếu có sự sai lệch thì sản phẩm của Quý khách không được bảo hành (có thể Tem bảo hành của Công ty bị thất thoát và bị lợi dụng dán lên thiết bị hay nhầm lẫn nhỏ khi nhập, in ra). Kính mong Quý khách hàng thông cảm!

– Bảo hành không bao gồm vận chuyển hàng và giao hàng.

Bảo trì, bảo dưỡng: bao gồm lau chùi sản phẩm, sửa chữa những hỏng hóc nhỏ có thể sửa được (không bao gồm thay thế thiết bị). Thời gian bảo trì, bảo dưỡng tùy thuộc vào sự thỏa thuận giữa DOLA và Quý khách hàng.

Bảo hành sản phẩm là: khắc phục những lỗi hỏng hóc, sự cố kỹ thuật xảy ra do lỗi của nhà sản xuất.

1.1. Quy định về bảo hành

– Sản phẩm được bảo hành miễn phí nếu sản phẩm đó còn thời hạn bảo hành được tính kể từ ngày giao hàng, sản phẩm được bảo hành trong thời hạn bảo hành ghi trên Sổ bảo hành, Tem bảo hành và theo quy định của từng hãng sản xuất liên quan đến tất cả các sự cố về mặt kỹ thuật.

– Có Phiếu bảo hành và Tem bảo hành của công ty hoặc nhà phân phối, hãng trên sản phẩm. Trường hợp sản phẩm không có số serial ghi trên Phiếu bảo hành thì phải có Tem bảo hành của CÔNG TY DOLA (kể cả Tem bảo hành gốc).

1.2. Những trường hợp không được bảo hành

– Sản phẩm đã hết thời hạn bảo hành hoặc mất Phiếu bảo hành.

– Số mã vạch, số serial trên sản phẩm không xác định được hoặc sai so với Phiếu bảo hành.

– Tự ý tháo dỡ, sửa chữa bởi các cá nhân hoặc kỹ thuật viên không phải là nhân viên CÔNG TY DOLA

– Sản phẩm bị cháy nổ hay hỏng hóc do tác động cơ học, biến dạng, rơi, vỡ, va đập, bị xước, bị hỏng do ẩm ướt, hoen rỉ, chảy nước, động vật xâm nhập vào, thiên tai, hỏa hoạn, sử dụng sai điện áp quy định.

– Phiếu bảo hành, Tem bảo hành bị rách, không còn Tem bảo hành, Tem bảo hành dán đè, hoặc Tem bảo hành bị sửa đổi (kể cả Tem bảo hành gốc).

– Trường hợp sản phẩm của Quý khách hàng dán Tem bảo hành của CÔNG TY DOLA hay nhầm lẫn thông tin trên Phiếu bảo hành, Phiếu mua hàng: Trong trường hợp này, bộ phận bảo hành sẽ đối chiếu với số phiếu xuất gốc lưu tại Công ty, hóa đơn, phần mềm của Công ty hay thông tin của nhà phân phối, hãng, các Quý khách hàng khác mua cùng sản phẩm cùng thời điểm, nếu có sự sai lệch thì sản phẩm của Quý khách không được bảo hành (có thể Tem bảo hành của Công ty bị thất thoát và bị lợi dụng dán lên thiết bị hay nhầm lẫn nhỏ khi nhập, in ra). Kính mong Quý khách hàng thông cảm!

– Bảo hành không bao gồm vận chuyển hàng và giao hàng.

Bảo trì, bảo dưỡng: bao gồm lau chùi sản phẩm, sửa chữa những hỏng hóc nhỏ có thể sửa được (không bao gồm thay thế thiết bị). Thời gian bảo trì, bảo dưỡng tùy thuộc vào sự thỏa thuận giữa DOLA và Quý khách hàng.

Module SIM800L GSM / GPRS là một module GSM thu nhỏ, có thể được tích hợp vào các dự án IoT khác nhau. Bạn có thể sử dụng module này để thực hiện hầu hết mọi thứ mà một chiếc điện thoại di động bình thường có thể làm: Tin nhắn văn bản SMS, thực hiện hoặc nhận các cuộc gọi điện thoại, kết nối với internet thông qua GPRS (2G), TCP / IP,… Trên hết, module SIM800L hỗ trợ mạng GSM / GPRS bốn băng tần, có nghĩa là nó hoạt động được ở nhiều loại mạng khác nhau ở các quốc tra khác nhau trên thế giới.

Giá bán module SIM800L hiện nay là rẻ nhiết trong tất cả các dòng module SIMxxx.

Trung tâm của module là chip SIM800L GSM của SimCom. Điện áp hoạt động của chip là từ 3,4V đến 4,4V, tương thích trực tiếp với pin LiPo.

Tất cả các chân tín hiệu chính của GSM SIM800L được nối ra header nên bạn có thể dễ dàng cấp nguồn và điều khiển module thông qua UART. Module hỗ trợ baudrate từ 1200bps đến 115200bps với việc tự động điều chỉnh baudrate phù hợp.

Module cần một ăng-ten ngoài để kết nối với mạng di động. Các module đã đi kèm với một ăng-ten xoắn ốc được kết nối trực tiếp đến chân NET trên PCB. PCB cũng có cổng kết nối U.FL trong trường hợp bạn muốn gắn thêm hoặc thay đổi vị trí ăng-ten.

Có một khe cắm SIM ở mặt sau! Bạn chỉ cần thẻ micro SIM với 2G  đã được kích hoạt. Hướng để lắp thẻ SIM được khắc trên bề mặt của khe cắm SIM. Module chỉ có kích thước rất nhỏ nhưng tích hợp một số tính năng được liệt kê dưới đây:

- Hỗ trợ Quad-band: GSM850, EGSM900, DCS1800 và PCS1900

- Kết nối với tất cả các mạng GSM với bất kỳ loại SIM 2G nào

- Thực hiện và nhận cuộc gọi thoại bằng loa ngoài 8Ω & micrô

- Gửi và nhận tin nhắn SMS

- Gửi và nhận dữ liệu GPRS (TCP / IP, HTTP, v.v.)

- Quét và nhận các đài phát thanh FM

- Công suất thu phát:

+ Class 4 (2W) cho GSM850

+ Class 1 (1W) cho DCS1800

- Bộ lệnh AT dựa trên kết nối UART (Serial)

- Đầu nối FL cho ăng ten di động

- Sử dụng thẻ micro SIM

Bạn có thể xem thêm các thông số khác của SIM800L GSM từ Cellular chip: SIM800L GSM

Có một đèn LED ở phía trên bên phải của module GSM SIM800 L cho biết trạng thái kết nối mạng di động của module. Nó sẽ nhấp nháy ở nhiều mức delay khác nhau để hiển thị trạng thái của module.

Module đang hoạt động

nhưng chưa kết nối với mạng di động

Module đã kết nối thành công với ạng di động

bạn đã có thể gửi/nhận tin nhắn và gọi/nhận điện thoại

Module cần ăng-ten để kết nối với mạng di động để gọi điện, nhắn tin hoặc truyền dữ liệu GPRS. Vì vậy, lựa chọn ăng-ten là điều rất quan trọng. Có hai cách bạn có thể gắn ăng-ten vào mô-đun SIM800L.

Đầu tiên là ăng-ten GSM xoắn ốc thường đi kèm với mô-đun và chỉ cần hàn đến chân NET trên PCB. Ăng-ten này rất hữu ích cho các dự án cần tiết kiệm không gian đặc biệt là các dự án ở trong nhà.

Loại thứ hai là ăng-ten GSM 3dBi cùng với dây chuyển đổi U.FL sang SMA có thể mua tại các cửa hàng bán linh kiện với giá rẻ. Bạn có thể gắn ăng-ten này vào đầu nối u.fl nhỏ nằm ở góc trên cùng bên trái của module. Loại ăng-ten này có hiệu suất tốt hơn và cho phép đặt mô-đun của bạn bên trong vỏ kim loại – miễn là ăng-ten nằm ở bên ngoài.

Một trong những yếu tố quan trọng nhất để module SIM800L hoạt động là cung cấp đủ năng lượng cho nó.

Tùy thuộc vào trạng thái của module SIM800L, mức năng lượng tiêu thụ sẽ khác nhau. Mức tiêu thụ tối đa của module là khoảng 2A trong khi truyền phát. Nó không thường xuyên cần dòng như vậy, nhưng có thể sẽ cần khoảng 216mA trong khi gọi điện thoại hoặc 80mA trong khi truyền dữ liệu qua GPRS. Bảng dữ liệu tóm tắt dưới đây là thông số dòng điện cần cho các hoạt động của module:

Do module SIM800L không đi kèm với bộ điều chỉnh điện áp trên board mạch, nên cần có nguồn điện bên ngoài được điều chỉnh theo điện áp trong khoảng từ 3,4V đến 4,4V (lý tưởng là 4.1V). Nguồn cung cấp có dòng MAX là 2A, nếu không module sẽ liên tục bị reset. Dưới đây là các lựa chọn để cấp nguồn cho module SIM800L

Một trong những điều thú vị về pin Li-Po là điện áp của chúng thường nằm trong khoảng 3,7V – 4.2V, rất hoàn hảo cho module SIM800L. Bất kỳ pin Li-ion / polymer 1200mAh hoặc dung lượng lớn hơn có thể cung cấp điện áp ổn định ngay cả trong trường hợp sử dụng dòng 2A.

Bất kỳ bộ chuyển đổi DC-DC có dòng lớn hơn 2A như LM2596 đều có thể cấp điện cho module SIM800L. LM2596 có hiệu năng tốt hơn nhiều so với LM317 hoặc LM338.

Module SIM800L có tổng cộng 12 chân I/O có vị trí như hình dưới đây:

NET là chân kết nối với Ăng-ten bên ngoài

VCC là chân cấp nguồn cho module SIM 800L có mức điện áp từ 3.4V đến 4.4 volts. Lưu ý: Nếu kết nối với điện áp 5V có thể làm cháy module, nó cũng không thể hoạt động ở điện áp 3.3 V! Nguồn điện từ Pin Li-Po hoặc mạch ổn áp DC-DC có mức điện áp 3.7V và 2A là phù hợp nhất

RST (Reset) là chân dùng để reset. Nối chân reset xuống mức thấp ở 100ms sẽ reset toàn bộ module.

RxD (Receiver) Chân dùng để kết nối UART

TxD (Transmitter) Chân dùng để kết nối UART

GND Chân nối mass, chúng ta cần nối mass chung với Arduino.

RING pin Hoạt động giống như chuông điện thoại. Nó thường dùng để ngắt ngoài (Interrupt) Arduino. Mặc định của nó là mức cao và được kéo xuống mức thấp 120ms khi nhận cuộc gọi. Ngoài ra, bạn có thể điều chỉnh để có thể xuất xung khi nhận tin nhắn SMS.

DTR pin activates/deactivates chế độ sleep. Đặt chân này ở mức CAO sẽ đưa module vào trạng thái ngủ, disable giao tiếp UART. Kéo chân xuống mức THẤP sẽ đánh thức hoạt động của module.

MIC± là 2 kết nối microphone.

SPK± là 2 kết nối của loa.

Chúng ta không thể kết nối trực tiếp chân Rx trên module với chân TX của Arduino vì Arduino Uno sử dụng GPIO 5V trong khi module SIM800L sử dụng logic mức 3,3V và không chịu được mức 5V. Điều này có nghĩa là tín hiệu Tx đến từ Arduino Uno phải được giảm xuống còn 3,3V để không làm hỏng module SIM800L. Có một số cách để làm điều này nhưng cách dễ nhất là sử dụng một bộ chia áp bằng điện trở đơn giản. Một điện trở 10K giữa SIM800L Rx và Arduino D2, và 20K giữa SIM800L Rx và GND.

Dưới đây là 2 lựa chọn cấp nguồn dành cho module SIM800L

Để gửi lệnh AT với module SIM800L, chúng ta sẽ sử dụng “Serial Monitor” trên Arduino IDE. Đoạn code dưới đây sẽ cho phép Arduino giao tiếp với module SIM800L trên serial monitor. Trước khi chúng ta đi sâu vào chi tiết mã, hãy kết nối Arduino của bạn với PC và upload đoạn code bên dưới vào Arduino.

Khi bạn mở serial monitor, hãy đảm bảo rằng cả hai tùy chọn NL & CR, được chọn!

Đoạn code bắt đầu từ việc include Software Serial và khởi tạo chân TX và RX để kết nối module SIM 800L:

Trong hàm setup(), chúng ta sẽ khởi tạo kết nối serial giữa Arduino và SIM800L với baud rate là 9600.

Bây giờ chúng ta đã thiết lập các kết nối cơ bản, chúng ta sẽ giao tiếp với module SIM800L bằng cách gửi các lệnh AT.

Trong đoạn code trên, chúng ta gọi hàm tùy chỉnh được gọi là updateSerial (). Nó sẽ liên tục chờ đợi dữ liệu đầu vào nào từ serial monitor và gửi nó đến module SIM800L thông qua chân D2 (Rx của module). Nó cũng liên tục đọc chân D3 (Tx của module) nếu module SIM800L có bất kỳ phản hồi nào.

Bạn sẽ nhìn thấy điều tương tự như thế này trên serial monitor của bạn:

Bây giờ bạn có thể tự do gửi bất kỳ lệnh nào thông qua serial monitor:

Bạn có thể xem thêm các lệnh AT khác bằng cách tham khảo:

Danh sách tập lệnh AT

Đoạn code chương trình Arduino sau sẽ gửi SMS đến bất kỳ số điện thoại nào bạn muốn. Trước khi nạp code, bạn cần nhập số điện thoại. Tìm kiếm chuỗi +ZZxxxxxxxxxx và thay thế ZZ bằng +84(mã vùng Việt Nam) và xxxxxxxxxx bằng số điện thoại 10 chữ số.

Đoạn code trên gần giống như trước đây ngoại trừ đoạn mã dưới đây:

AT + CMGF = 1 – Chọn định dạng tin nhắn SMS dưới dạng văn bản. Định dạng mặc định là Đơn vị dữ liệu giao thức (PDU)

AT + CMGS = + ZZxxxxxxxxxx – Gửi SMS đến số điện thoại được chỉ định. Tin nhắn văn bản được nhập theo bảng mã ASCII. Và cuối cùng bạn cần ký tự ‘Ctrl+z’ tương ứng với 26 DEC (số 26 theo mã thập phân) (1AHEX) để kết thúc tin nhắn.

Vòng lặp được giữ trống vì chúng ta chỉ muốn gửi SMS một lần. Nếu bạn muốn gửi SMS thêm một lần nữa, chỉ cần nhấn phím RESET trên Arduino của bạn. Dưới đây là ảnh chụp màn hình cho thấy SMS được gửi từ module GSM SIM800L.

Bây giờ chúng ta sẽ viết chương trình Arduino dùng để đọc các tin nhắn SMS đến. Đoạn code này rất hữu ích khi bạn cần kích hoạt một hành động khi nhận được một SMS cụ thể. Ví dụ, khi Arduino nhận được SMS, bạn có thể bật hoặc tắt rơle.

Đoạn code cũng tương tự như trước đây ngoại trừ đoạn mã dưới đây:

AT + CMGF = 1 – Chọn định dạng tin nhắn SMS dưới dạng văn bản. Định dạng mặc định là Đơn vị dữ liệu giao thức (PDU)

AT + CNMI = 1,2,0,0,0 – chỉ định cách xử lý tin nhắn SMS mới đến. Bằng cách này, bạn có thể thông báo cho module SIM800L để chuyển trực tiếp các tin nhắn SMS mới đến PC hoặc lưu chúng trong bộ lưu trữ tin nhắn và sau đó thông báo cho PC về vị trí của chúng trong bộ lưu trữ tin nhắn.

Phản hồi của nó bắt đầu bằng + CMT: Tất cả các trường trong phản hồi được phân tách bằng dấu phẩy với trường đầu tiên là số điện thoại. Trường thứ hai là tên của người gửi SMS. Trường thứ ba là dấu thời gian trong khi trường thứ tư là tin nhắn đến.

Trong trường hợp này chúng ta vẫn giữ hàm loop() vì chúng ta cần nhận trực tiếp tin nhắn điện thoại mỗi khi có tin nhắn mới đến.

Nếu tin nhắn quá dài, bạn có thể sẽ nhận được nó với một số ký tự bị thiếu. Đây không phải là do lỗi của Arduino mà là bộ đệm nhận SoftwareSerial của bạn bị quá tải và Arduino không đọc đủ nhanh từ bộ nhớ đệm.

Giải pháp đơn giản nhất cho vấn đề này là tăng kích thước của bộ nhớ đệm SoftwareSerial từ kích thước mặc định là 64 byte lên 256 byte.

Trên PC Windows, hãy truy cập C:\Program Files (x86) -> Arduino -> hardware -> Arduino -> avr -> libraries -> SoftwareSerial (-> src cho phiên bản mới hơn của Arduino IDE) Mở SoftwareSerial.h và thay đổi dòng:

Sau đó save file và mở Arduino IDE lại.

Đoạn code này rất hữu ích khi bạn muốn Arduino của bạn thực hiện cuộc gọi SOS trong trường hợp khẩn cấp như nhiệt độ bị vượt quá hoặc ai đó đột nhập vào nhà bạn.

Trước khi nạp code, bạn cần nhập số điện thoại. Tìm kiếm chuỗi ZZxxxxxxxxxx và thay thế ZZ bằng mã 84 và xxxxxxxxxx bằng số điện thoại 10 chữ số.

Để thực hiện cuộc gọi theo các lệnh AT đã được sử dụng:

ATD + + ZZxxxxxxxxxx; – Quay số được chỉ định. Dấu chấm phẩy (;) ở cuối phân tách chuỗi quay số thành nhiều lệnh quay số. Tất cả trừ số cuối cùng phải kết thúc bằng dấu chấm phẩy (;).

Hình ảnh dưới đây là cuộc gọi của module SIM800L và điện thoại:

Nhận cuộc gọi không đòi hỏi bất kỳ đoạn code đặc biệt nào; bạn chỉ cần nhận dữ liệu từ module SIM800L. Tuy nhiên, bạn có thể thấy đoạn code này rất hữu ích, khi bạn cần kích hoạt một hành động khi nhận được một cuộc gọi từ số điện thoại cụ thể.

Cuộc gọi đến thường được biểu thị bằng ‘RING, trên serial monitor theo sau là số điện thoại và ID người gọi. Để chấp nhận / ngắt cuộc gọi theo các lệnh AT được sử dụng:

ATA – Chấp nhận cuộc gọi đến.

ATH – Cúp máy. Khi kết thúc cuộc gọi, nó sẽ gửi NO CARRIER trên màn hình nối tiếp cho biết cuộc gọi không thể kết nối.

Trên serial monitor hiển thị cuộc gọi nhận được bởi module SIM800L GSM:

Nguồn: https://lastminuteengineers.com/sim800l-gsm-module-arduino-tutorial/

🔈 Nhận làm bài tập điện tử miễn phí và tính phí.

🔈 Mỗi tuần sẽ nhận một bài tập miễn phí, đăng ký qua zalo: 0941344233

----------------------------------------------------------------------------------------------------

✅ Bài tập môn 1: 200.000đ.

✅ Bài tập môn 2: 300.000đ

Các bài tập, đồ án khó hơn giá cả thương lượng!

NHẬN PHAY MẠCH IN LIÊN HỆ: 0912849051 & https://cardcv.net/Thuyen.technicians

⭕ Website: https://mualinhkien.vn

📺 Kênh Youtube: https://www.youtube.com/channel/UCTnJ8z_qIDQ4gSDlSRoRXug

🛒Shopee: https://shopee.vn/chotroivietnam

🆘 Group FaceBook: https://www.facebook.com/groups/tuhusupport

🏤 Địa chỉ: Số 2, ngõ 106 Lê Thanh Nghị, Bách Khoa, Hà Nội.

🕐 Thời gian làm việc tất cả các ngày trong tuần:

SÁNG: 8h05 – 12h30 CHIỀU: 14h – 18h ☎ Liên hệ: 0941344233 (SĐT & ZALO)

Bảo hành sản phẩm là: khắc phục những lỗi hỏng hóc, sự cố kỹ thuật xảy ra do lỗi của nhà sản xuất.

1.1. Quy định về bảo hành

– Sản phẩm được bảo hành miễn phí nếu sản phẩm đó còn thời hạn bảo hành được tính kể từ ngày giao hàng, sản phẩm được bảo hành trong thời hạn bảo hành ghi trên Sổ bảo hành, Tem bảo hành và theo quy định của từng hãng sản xuất liên quan đến tất cả các sự cố về mặt kỹ thuật.

– Có Phiếu bảo hành và Tem bảo hành của công ty hoặc nhà phân phối, hãng trên sản phẩm. Trường hợp sản phẩm không có số serial ghi trên Phiếu bảo hành thì phải có Tem bảo hành của CÔNG TY DOLA (kể cả Tem bảo hành gốc).

1.2. Những trường hợp không được bảo hành

– Sản phẩm đã hết thời hạn bảo hành hoặc mất Phiếu bảo hành.

– Số mã vạch, số serial trên sản phẩm không xác định được hoặc sai so với Phiếu bảo hành.

– Tự ý tháo dỡ, sửa chữa bởi các cá nhân hoặc kỹ thuật viên không phải là nhân viên CÔNG TY DOLA

– Sản phẩm bị cháy nổ hay hỏng hóc do tác động cơ học, biến dạng, rơi, vỡ, va đập, bị xước, bị hỏng do ẩm ướt, hoen rỉ, chảy nước, động vật xâm nhập vào, thiên tai, hỏa hoạn, sử dụng sai điện áp quy định.

– Phiếu bảo hành, Tem bảo hành bị rách, không còn Tem bảo hành, Tem bảo hành dán đè, hoặc Tem bảo hành bị sửa đổi (kể cả Tem bảo hành gốc).

– Trường hợp sản phẩm của Quý khách hàng dán Tem bảo hành của CÔNG TY DOLA hay nhầm lẫn thông tin trên Phiếu bảo hành, Phiếu mua hàng: Trong trường hợp này, bộ phận bảo hành sẽ đối chiếu với số phiếu xuất gốc lưu tại Công ty, hóa đơn, phần mềm của Công ty hay thông tin của nhà phân phối, hãng, các Quý khách hàng khác mua cùng sản phẩm cùng thời điểm, nếu có sự sai lệch thì sản phẩm của Quý khách không được bảo hành (có thể Tem bảo hành của Công ty bị thất thoát và bị lợi dụng dán lên thiết bị hay nhầm lẫn nhỏ khi nhập, in ra). Kính mong Quý khách hàng thông cảm!

– Bảo hành không bao gồm vận chuyển hàng và giao hàng.

Bảo trì, bảo dưỡng: bao gồm lau chùi sản phẩm, sửa chữa những hỏng hóc nhỏ có thể sửa được (không bao gồm thay thế thiết bị). Thời gian bảo trì, bảo dưỡng tùy thuộc vào sự thỏa thuận giữa DOLA và Quý khách hàng.

Module GSM GPRS sim800L có khả năng nhắn tin SMS, nghe, gọi, GPRS, … như một điện thoại nhưng có kích thước nhỏ nhất trong các loại module SIM (25mm x 22mm). Điều khiển module sử dụng bộ tập lệnh AT dễ dàng, chân kết nối dùng rào đực thông dụng (male header) chuẩn 100mil.