Từ ChipFC Wiki
Nội dung chính
- Giới thiệu
- Thông số
- Kết nối tín hiệu điều khiển
- Sử dụng cơ bản
- Điều khiển thông qua máy tính
- Kết nối
- Phần mềm truyền lệnh
- Các lệnh cơ bản
- Sử dụng với Arduino
- Tham khảo thêm
- Video liên quan
SIM900A trên trang chủ
Giới thiệu
- SIM900(A) là module GSM/GPRS của hãng SIMCom được thiết kế dưới dạng module chipset, nhỏ gọn, giá thành thấp, hoạt động ổn định và phù hợp cho nhiều mục đích sử dụng. Module SIM900(A) có các tính năng cơ bản của một chiếc điện thoại như gọi điện thoại, nhắn tin, truy cập GPRS,…
- Mô-đun SIM900(A) Mini của ChipFC thiết kế dựa trên chipset SIM900(A). SIM900(A) Mini được tích hợp các linh kiện, kết nối cần thiết, sẵn sàng cho người sử dụng để nghiên cứu, học tập hoặc làm demo nhanh chóng, tiện lợi các dự án có ứng dụng GSM/GPRS. SIM900(A) Mini nhỏ gọn, tiết kiệm chi phí, giúp người dùng tiếp cận và sử dụng nhanh nhất cho dự án của mình.
Thông số
- Băng thông:
- SIM900A: Dual-band GSM/GPRS 900/1800MHz
- SIM900: Quad-band GSM/GPRS 850/900/1800/1900MHz
- Giao diện giao tiếp UART (hỗ trợ cả 3.3V và 5V)
- Điều khiển thông qua tập lệnh AT chuẩn (GSM 07.07 ,07.05) và các lệnh nâng cấp của SIMCOM
- Nguồn cấp: các nguồn có thể dùng
- Adapter 5-12VDC, 2-3A. Jack cắm tròn 5mm.
- Pin Lipo 1-cell (3.7V).
- Nhiệt độ hoạt động: -40°C đến +85°C
- Kích thước: 63.5mm x 43.2mm x 12.0mm
Kết nối tín hiệu điều khiển
Hàng rào 10 chân:
Thứ tự chân
Tên gọi
Loại
Mô tả
1
VCC
Power
Điện áp so sánh 3.3V/5V. Chỉ dùng để so sánh áp cho mô-đun chuyển áp tín hiệu, không có tác dụng cấp nguồn cho SIM900.
2
Status
Output
Theo dõi nhanh trạng thái hoạt động của module SIM900
4
Power Key
Input
Chân bật/tắt module SIM900 (tín hiệu PowerKey), tích cực mức cao.
5
TXD
Output
Chân truyền trong điều khiển UART, tương thích 3.3V/5V tùy thuộc vào VCC
7
RXD
Input
Chân nhận trong điều khiển UART, tương thích 3.3V/5V tùy thuộc vào VCC
6,8
VIN
Power
Ngõ cấp nguồn vào cho mô-đun. Có cùng tác dụng với ngõ Jack DC 5mm trên mô-đun. Từ 5~12 VDC, 2~3 Amp.
3,9,10
GND
Power
Điện áp đất 0V
Sử dụng cơ bản
Thực hiện tuần tự các bước sau:
- Cấp nguồn:
- Có thể sử dụng Adapter chuyển AC-to-DC để cấp nguồn (khuyên dùng loại 5V/2A)
- Phần nguồn rất quan trọng, nếu nguồn không đúng sẽ làm ảnh hưởng đến hoạt động của SIM900(A).
- Jack đầu ra của Adapter thì ở giữa phải là cực dương, phía ngoài là cực âm.
- Khi được cấp nguồn, đèn led màu đỏ Power sẽ sáng.
- Nhấn nút khởi động: nhấn giữ nút PKey khoảng 2 giây. Khi thấy đèn led NetLight màu xanh lam chớp tắt liên tục tức là module đã được khởi động xong và đang hoạt động.
Chú ý:
- Khi cần tắt SIM900(A) cũng nhấn giữ nút PowerKey đến khi đèn Status và NetLight tắt hẳn (khoảng 2 giây). Sau đó mới ngắt điện.
- SIM900(A) được điều khiển thông qua các lệnh AT (tập lệnh AT – AT Command Set). Để SIM900(A) thực hiện các tác vụ như: gọi điện thoại, gửi tin nhắn, … ta cần truyền lệnh điều khiển nó. Hãy xem tiếp phần sau.
Điều khiển thông qua máy tính
Trong phần này chúng ta sẽ dùng máy tính kết nối với SIM900(A) để truyền lệnh điều khiển. Bạn cần thực hiện tuần tự theo các bước sau:
Kết nối
- Dùng mô-đun USB-to-Serial làm trung gian giữa SIM900(A) Mini và máy tính:
Kết nối USB-to-Serial với SIM900(A) theo thứ tự trong bảng sau:
USB to Serial – FTDI
SIM900(A) Mini
+
VCC
–
GND
Rx
TXD
Tx
RXD
Kết nối USB-to-Serial với máy tính dùng cáp USB. Xem thêm USB to Serial – FTDI
- Lắp SIM Card và Anten cho mô-đun SIM900(A) Mini
- Cấp nguồn và nhấn giữ nút PKey để khởi động
Phần mềm truyền lệnh
- Phần mềm trên máy tính: Trên máy tính cần có một phần mềm để truyền lệnh điều khiển, bạn có thể sử dụng Terminal, có thể tải về tại đây. Terminal là phần mềm cho hệ điều hành Windows, chạy trực tiếp không cần cài đặt. Sau khi tải về bạn chỉ cần giải nén và nhấp đúp vào tập tin .exe để chạy chương trình.
- Các thao tác sử dụng cơ bản
Các mũi tên màu đỏ trên hình được giải thích trong bảng sau:
Số thứ tự
Tên gọi
Giải thích
1
Baudrate
Tốc độ truyền dữ liệu. Bạn chọn 115200.
2
ReScan
Quét tìm tất cả các cổng COM có trong máy tính và liệt kê vào danh sách COM Port. Trường hợp khi nhấn nút ReScan mà không thấy cổng COM nào xuất hiện trong danh sách COM Port thì hãy xem lại việc kết nối mô-đun USB to Serial – FTDI với máy tính và việc cài đặt driver.
3
COM Port
Danh sách COM Port
4
Connect
Nhấn nút này để kết nối với cổng COM đã chọn trong danh sách COM Port
5
+CR
Tự động thêm ký tự kết thúc (0x0D) vào sau câu lệnh khi được gửi bằng nút Send. Khi sử dụng SIM900(A) bạn cần chọn ô này.
6
Ô các ký tự cần gửi qua cổng COM đã kết nối.
7
Send
Nhấn nút này để gửi các ký tự đã nhập trong ô 6 xuống SIM900(A) thông qua cổng COM đã kết nối.
8
Receive
Khung hiển thị các ký tự mà SIM900(A) trả về thông qua cổng COM đã kết nối.
Các lệnh cơ bản
Lệnh AT là lệnh kiểm tra. Khi gửi lệnh AT mà SIM900(A) trả lời OK tức SIM900(A) đang hoạt động bình thường.
Máy tính hỏi:
AT
SIM900(A) trả lời:
AT
OK
Lệnh ATD dùng để thực hiện cuộc gọi. Cú pháp ATD[số điện thoại];. Chú ý là có ký tự dấu chấm phẩy ở cuối. Khi SIM900(A) trả lời OK thì cuộc gọi thực hiện thành công, đang chờ đầu dây bên kia trả lời. Nếu không hãy kiểm tra lại việc lắp SIM Card, Anten…
Máy tính hỏi:
ATD0913005013;
SIM900(A) trả lời:
ATD0913005013;
OK
Lệnh ATH dùng để ngắt/dừng cuộc gọi đang thực hiện.
Máy tính hỏi:
ATH
SIM900(A) trả lời:
ATH
OK
Lệnh AT+CMGS dùng để gửi tin nhắn ký tự. Cú pháp AT+CMGS=”[số điện thoại]”. Sau khi SIM900(A) nhận được lệnh này sẽ trả về ký tự “>”. Tiếp đó bạn gửi tiếp nội dung tin nhắn và kết thúc phần tin nhắn bằng 0x1A và 0x00.
Máy tính hỏi:
AT+CMGS=”0913005013″
SIM900(A) trả lời:
>
Máy tính hỏi:
Hello$1A$00
SIM900(A) trả lời:
Hello
+CMGS: <mr>
OK
Trong đó <mr> (Message Reference) là một số.
Sử dụng với Arduino
- Kết nối bo Arduino với SIM900(A) Mini như sau:
SIM900(A) Mini
Arduino
VCC
IOREF/5V/3V3
GND
GND
TXD
D2
RXD
D3
- Kết nối bo Arduino với máy tính bằng cáp USB.
- Cấp nguồn cho SIM900(A) Mini bằng Adapter như trên.
- Chắc chắn rằng bạn đã lắp SIM Card và Anten cho SIM900(A) Mini trước khi khởi động bằng cách nhấn nút PKey trên SIM900(A) Mini.
- Cộng đồng nguồn mở đã phát triển thư viện GSM/GPRS/GPS cho Arduino giúp bạn tiết kiệm thời gian và dễ dàng tiếp cận với các mô-đun GSM/GPRS/GPS sử dụng tập lệnh AT.
- Xem link tải về ở phần Tham khảo thêm bên dưới.
- Xem thêm Thư viện Arduino nếu bạn chưa biết cách sử dụng một thư viện Arduino.
Sau khi tải thư viện GSM/GPRS/GMS về và giải nén vào thư mục Libraries của thư mục chứa Arduino IDE, bạn mở chương trình Arduino IDE lên để viết chương trình.
Chương trình gọi điện và nhắn tin đơn giản
#include “SIM900.h”
#include <SoftwareSerial.h>
#include “call.h”
#include “sms.h”
CallGSM call; //Tạo mới một đối tượng CallGSM để thực hiện cuộc gọi
SMSGSM sms; //Tạo mới một đối tượng SMSGSM để thực hiện nhắn tin
boolean started = false; //Cờ kiểm tra
void setup()
{
Serial.begin(9600); //Khởi động Serial phục vụ việc debug
Serial.println(“GSM Shield testing.”);
if (gsm.begin(2400)){ //Khởi động việc kết nối SIM900(A)
Serial.println(“status=READY”);
started = true; //Kết mối với SIM900(A) thành công
}
else
{
Serial.println(“status=IDLE”);
}
};
void loop()
{
if(started){
call.Call(“0913005013”); //Thực hiện cuộc gọi đến số 0913005013
Serial.println(“Calling”);
delay(10000); //Chờ 10 giây
call.HangUp(); //Gác máy
Serial.println(“HangUp”);
delay(2000); //Chờ 2 giây
sms.SendSMS(“0913005013”, “Hello ChipFC”);//Gửi tin nhắn đến số 0913005013
Serial.println(“Send sms”);
delay(2000); //Chờ 2 giây
Serial.println(“Done”);
started = false; //Để không thực hiện tiếp
}
delay(1000);
};
Kết quả
Kết quả quan sát qua Serial Monitor của Arduino IDE
Tham khảo thêm
- Thư viện code mẫu V3.07.1
- Sơ đồ mạch SIM900(A) Mini
- Tham khảo tập lệnh AT