nhắn tin để điều khiển đóng, mở các thiết bị trong sinh hoạt hằng ngày bằng kết hợp giữa board arduino uno và module breakout SIM900A

71 850 5
nhắn tin để điều khiển đóng, mở các thiết bị trong  sinh hoạt hằng ngày bằng kết hợp giữa board arduino uno và module breakout SIM900A

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 Lời Cảm Ơn Qua năm năm học tập ghế nhà trường, em cảm ơn tất Thầy, Cô giảng dạy khoa Điện tử - Viễn thông, trường Đại Học Khoa Học nhiệt tình truyền thụ cho em kiến thức chuyên ngành vấn đề xã hội Đó hành trang cần thiết cho em sống công việc sau Và kiến thức Thầy, Cô giảng dạy giúp cho em hoàn thành đồ án tốt nghiệp Em chúc quý Thầy, quý Cô mạnh khỏe hạnh phúc công trồng người Em xin trân trọng cảm ơn!!! Trong trình hoàn thành đồ án này, không nói đến công hướng dẫn thầy Th.S Phan Hải Phong nhiệt tình hướng dẫn, bày vẽ cho em trình hoàn thành đồ án Thầy nêu nhiều ý tưởng cho phần đồ án, để em có nhiều hướng trình hoàn thành đồ án Tuy nhiên, kiến thức thân thời gian thực đồ án có hạn, nên em hoàn thành phần nhỏ ý tưởng Thầy đưa Em chân thành cảm ơn Thầy Huế, ngày 10 tháng 06 năm 2015 Sinh viên thực Trần Văn Hòa MỤC LỤC DANH SÁCH CÁC HÌNH VẼ DANH SÁCH CÁC BẢNG DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Diễn giải Dịch nghĩa GND Ground Nối đất AREF Analog Reference Điện áp tham chiếu RX Receiver Nhận liệu TX Transmitter Truyền liệu TTL Transistor-Transistor Logic Giao tiếp nối tiếp SS Slave Select Chọn bên bị động MOSI Master Output/ Slave Input Cổng chủ động/ Cổng vào bị động MISO Master Input/ Slave Output Cổng vào chủ động/ Cổng bị động SCK Serial Clock Tín hiệu đồng hồ tắc tơ nối tiếp SPI Serial Peripheral Interface Giao diện ngoại vi nối tiếp PWM Pulse Width Modulation Điều chế xung SRAM Static Random Access Memory Bộ nhớ truy xuất ngẫu nhiên EEPROM Electrically Erasable Programmable Read Only Memory Bộ nhớ đọc GSM Global System for Mobile Communication Hệ thống thông tin di động toàn cầu GPRS General Packet Radio Service Dịch vụ vô tuyến gói tổng hợp SIM Subscriber Identity Module Module nhận dạng tin nhắn SMS Short Message Service Dịch vụ tin nhắn ngắn WAP Wirless Application Protocol Giao thức ứng dụng không dây SMSC Short Message Service Center Trung tâm tin nhắn CDMA Code Division Multiple Access Đa truy nhập phân chia theo mã TDMA Time Division Multiple Access Đa truy nhập phân chia theo thời gian HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn HTTPS Hypertext Transfer Protocol Secure Giao thức truyền tải bảo mật cao TCP/ IP Transmission Control Protocol / Giao thức truyền thông Internet Internet Protocol ETSI European Telecommunications Standards Instiute Viện Tiêu chuẩn Viễn thông châu Âu MO Mobile Originated Máy di động gửi tin nhắn MT Mobile Terminated Máy di động nhận tin nhắn PUK Personal Unblocking Mã nhận dạng cá nhân MỞ ĐẦU Ngày điện thoại di động trở nên phổ biến, hầu hết người sử dụng điện thoại công cụ thiết yếu cho sống thường ngày Sóng điện thoại phủ sóng hầu hết nơi từ miền núi hải đảo Cho nên, người sử dụng điện thoại nơi đâu miễn có thỏa thuận với nhà mạng vùng phủ sóng Điện thoại di động trở nên công cụ liên lạc nhanh hiệu quả, cập nhật tin tức thường ngày, mang lại nhiều tiện ích cho người dùng Với nhiều mức giá nhiều chủng loại khác nên người trang bị cho riêng điện thoại di động vừa ý Nhưng hầu hết người sử dụng điện thoại di động với mục đích liên lạc với gọi điện, nhắn tin, lướt web…Trên thực tế điện thoại di động có nhiều tính thiết thực hơn, người dùng trang bị thêm thiết bị ngoại vi khác, để điện thoại công cụ điều khiển hay thiết lập thiết bị ngoại vi theo ý muốn người dùng Trong phần đồ án tốt nghiệp em, em xin trình bày tính nhỏ điện thoại di động nhắn tin để điều khiển đóng, mở thiết bị sinh hoạt ngày bóng điện, quạt, điều hòa, tủ lạnh…Bằng kết hợp board Arduino Uno module Breakout SIM900A mạch có sẵn thị trường CHƯƠNG I: TỔNG QUAN VỀ NỀN TẢNG ARDUINO VÀ MODULE BREAKOUT SIM900 1.1 Giới thiệu tảng Arduino 1.1.1 Lịch sử đời Arduino Hình 1.1: Arduino dùng để điều khiển robot Nền tảng Adrduino khởi động vào năm 2005 dự án dành cho sinh viên Interaction Design Institute Ivrea (Viện thiết kết tương tác Ivrea) Ivrea, Italy Massimo Banzi người sáng lập giảng dạy Ivrea Cái tên "Arduino" đến từ quán bar Ivrea, nơi vài nhà sáng lập dự án thường xuyên gặp mặt Bản thân quán bar có lấy tên Arduino Bá tước Ivrea, vua Italy từ năm 1002 đến 1014 Nền tảng thức đưa giới thiệu vào năm 2005 công cụ dành cho sinh viên học tập giáo sư Massimo Banzi, người phát triển Arduino trường Interaction Design Instistute Ivrea (IDII) Dù tiếp thị hay quảng cáo tin tức Arduino lan truyền với tốc độc chóng mặt nhờ lời truyền miệng tốt đẹp người dùng Arduino tên vi xử lý, vi điều khiển hay thiết bị hoàn chỉnh Arduino tiêu chuẩn phần cứng, kèm theo tiêu chuẩn trình biên dịch phát triển đồng Các board Arduino cố gắng đưa chân vi điều khiển hay vi xử lý bên ngoài, cung cấp số mạch điện bổ trợ chuẩn kết nối giúp người dùng sử dụng dễ dàng Đến có nhiều hệ Arduino đời, từ board Arduino đời đầu sử dụng vi điều khiển AVR bit với board Arduino sử dụng vi xử lý ARM 32 bit Hình 1.2: Một số board Arduino 1.1.2 Cấu trúc bên board Arduino Mặc dù có nhiều board Arduino đời với nhiều kích thước, vi xử lý trung tâm khác chúng có chung số đặc điểm phần cứng bên giống tuân thủ theo tiêu chuẩn chung định Một mạch Arduino bao gồm vi điều khiển AVR với nhiều linh kiện bổ sung giúp dễ dàng lập trình mở rộng với mạch khác Các kết nối tiêu chuẩn Arduino, cho phép người dùng kết nối CPU board với module thêm vào dễ dàng chuyển đổi, gọi shield Vài shield giao tiếp với Arduino trực tiếp thông qua chân khác Tuy nhiên nay, nhiều shield định địa thông qua serial I2C2 shield xếp chồng sử dụng dạng song song Arduino thức thường sử dụng dòng chíp mega AVR, đặc biệt Atmega8, Atmega168, Atmega328, Atmega2560 Một vài vi xử lý khác sử dụng mạch Arduino tương thích Hầu hết mạch gồm điều chỉnh điện áp tuyến tính 5V thạch anh dao động 16MHz (hoặc cổng hưởng ceramic vài biến thế) Một vài thiết kế chẳng hạn LilyPad hoạt động 10 tần số MHz điều chỉnh điện áp onboard hạn chế kích cỡ thiết bị 1.1.3 Giới thiệu board mạch Arduino Uno Arduino Uno board mạch thuộc gia đình Arduino, thiết kế với xử lý trung tâm vi điều khiển AVR Atmega328 Hình 1.3: Board Arduino Uno Cấu tạo Arduino Uno bao gồm phần sau: • Cổng USB(1): cổng giao tiếp để tải chương trình từ máy tính lên board Arduino Đồng thời giao tiếp serial để truyền liệu vi điều khiền máy tính • Jack nguồn(2): để chạy Arduino lấy nguồn từ cổng USB nói trên, lúc cắm với máy tính Lúc ta cần nguồn 9V đến 12V để cung cấp cho board • 14 chân vào Digital(3): 14 chân đánh số từ đến 13, có chân nối đất (GND) chân điện áp tham chiếu (AREF) Một số chân Digital có chức đặc biệt sau: o chân Serial: (RX) (TX): dùng để truyền (transmit – TX) nhận (receive RX) liệu TTL Serial Arduino Uno giao tiếp với thiết bị khác thông qua hai chân o Chân PWM (~): 3, 5, 6, 9, 10 11: cho phép xuất xung PWM với độ phân giải bit hàm analogWrite() Nói cách đơn giản, người dùng điều chỉnh điện áp chân từ mức 0V đến 5V thay cố định mức 0V 5V chân khác 57 TÀI LIỆU THAM KHẢO Mọi kiến thức tài liệu để hoàn thành tập Đồ Án em chủ yếu tham khảo nguồn sau đây: [1] John Boxall- Arduino Workshop [2] GS Phạm Văn Ất- Kỹ thuật lập trình C [3] Hồ Tuấn Việt-Đồ án tốt nghiệp" THIẾT KẾ VÀ THI CÔNG MẠCH ĐIỀU KHIỂN THIẾT BỊ ĐIỆN TRONG NHÀ THÔNG QUA MODULE SIM 900 VÀ SÓNG RF"- Trường Đại học Bách khoa Đà Nẵng 58 PHỤ LỤC ********************************************************************* *****CHƯƠNG TRÌNH ĐIỀU KHIỂN THIẾT BẰNG TIN NHẮN SMS******** ********************************************************************* Chương trình cho phép người dùng điều khiển thiết bị gia đình qua tin nhắn SMS điện thoại di động Đọc trạng thái thiết bị đóng mở, người dùng điều khiển thiết bị, dù nơi đâu miễn biết cú pháp điều khiển *****************************KHAI BAO**************************** int d1 = A1; int d2 = 3; int d3 = A2; int d4 = 8; int statusd1; int statusd2; int statusd3; int statusd4; int PWR = A3; int LedConfig = 12; int Ledsms = 7; int answer=0; short sms_mode=false; short mode1=false; short mode2=false; short mode3=false; short mode4=false; //power up SIM900A 59 short flag1=false; short flag2=false; short flag3=false; short flag4=false; short flagS=false; short systemsoff=false; const int bsize = 160; // Buffer size you can adjust this size char c=0; char c1=0; char *ptr1=0; char *ptr2=0; char aux_string[30]; char number[]="0xxxxxxxx"; char buffer[bsize]; // Your phone number // Data from UART int xbuff=0; char ctrl[]="control"; char r1on[]="on 1"; // On device char r1off[]="off 1"; // Off device char r2on[]="on 2"; // On device char r2off[]="off 2"; // Off device char r3on[]="on 3"; // On device char r3off[]="off 3"; // Off device char r4on[]="on 4"; // On device char r4off[]="off 4"; // Off device char PWR_on[]="simoff"; // OFF sim 60 char KTstatus[]="status"; // Checking status of devices char pass[7]="123456"; // Password of board - characters ********************************************************************* ********KHOI TAO, KHOI DONG VA CAU HINH SIM900A********** void setup() { Serial.begin(9600); pinMode(PWR, OUTPUT); pinMode(LedConfig, OUTPUT); pinMode(Ledsms, OUTPUT); pinMode(d1, OUTPUT); pinMode(d2, OUTPUT); pinMode(d3, OUTPUT); pinMode(d4, OUTPUT); power_on(); init_SIM900A(); // Power on Module SIM900A // Configuration for Module SIM900A erase_buffer(); } ********************************************************************* *****KIEM TRA TIN NHAN THUC HIEN DONG MO THIET BI******* void loop() { receive_uart(); // Receive UART if(sms_mode) {digitalWrite(Ledsms, HIGH); ptr1=strstr(buffer,ctrl); // Checking SMS message { 61 if (ptr1[8]==pass[0] && ptr1[9]==pass[1] && ptr1[10]==pass[2] && ptr1[11]==pass[3] && ptr1[12]==pass[4] && ptr1[13]==pass[5]) //checking password { ptr2=strstr(buffer,r1on); // Checking for turn on device if (strncmp(ptr2,r1on,4)==0) {digitalWrite (d1, HIGH) ; mode1=true; flag1=true; } else { ptr2=strstr(buffer,r1off); // Checking for turn off device if (strncmp(ptr2,r1off,5)==0) {digitalWrite (d1, LOW) ; mode1=false; flag1=true; } } ptr2=strstr(buffer,r2on); // Checking for turn on device if (strncmp(ptr2,r2on,4)==0) {digitalWrite (d2, HIGH) ; mode2=true; flag2=true; } else { ptr2=strstr(buffer,r2off); if (strncmp(ptr2,r2off,5)==0) // Checking for turn off device 62 {digitalWrite (d2, LOW) ; mode2=false; flag2=true; } } ptr2=strstr(buffer,r3on); // Checking for turn on device if (strncmp(ptr2,r3on,4)==0) {digitalWrite (d3, HIGH) ; mode3=true; flag3=true; } else { ptr2=strstr(buffer,r3off); // Checking for turn off device if (strncmp(ptr2,r3off,5)==0) {digitalWrite (d3, LOW) ; mode3=false; flag3=true; } } ptr2=strstr(buffer,r4on); // Checking for turn on device if (strncmp(ptr2,r4on,4)==0) {digitalWrite (d4, HIGH) ; mode4=true; flag4=true; } else { ptr2=strstr(buffer,r4off); // Checking for turn off device 63 if (strncmp(ptr2,r4off,5)==0) {digitalWrite (d4, LOW) ; mode4=false; flag4=true; } } ptr2=strstr(buffer,PWR_on); if (strncmp(ptr2,PWR_on,5)==0) {digitalWrite (PWR, HIGH); delay(1000); digitalWrite (PWR, LOW); systemsoff=true; } ptr2=strstr(buffer,KTstatus); // Checking status of device if (strncmp(ptr2,KTstatus,6)==0) { statusd1=digitalRead(d1); statusd2=digitalRead(d2); statusd3=digitalRead(d3); statusd4=digitalRead(d4); flagS=true; } send_SMS(); } } digitalWrite(Ledsms, LOW); flag1=false; flag2=false; flag3=false; flag4=false; flagS=false; 64 erase_buffer(); } } ********************************************************************* ********HAM NHAN DU LIEU QUA TRUYEN THONG UART******** void receive_uart() { while(Serial.available()==0) {} while(Serial.available()>0) { c= Serial.read(); if(c=='#') { c1=c; xbuff=0; } if (c=='.' && c1=='#') { sms_mode=true; } if (xbuff >= bsize) { xbuff=0; } else{ buffer[xbuff++]=c; } } } 65 ********************************************************************* *******HAM THUC HIEN CAU HINH SIM900A BANG LENH AT******** void init_SIM900A() { { answer = sendAT("AT+CREG?","+CREG: 0,1",500);} while(answer==0); Checking status of Connecting to the network { answer = sendAT("AT+CMGF=1", "OK",1000);} while(answer==0); SMS into text mode // // Set { answer = sendAT("AT+CNMI=2,2,2,0,0", "OK",1000);} while(answer==0); // Set Message mode when receive new SMS sprintf(aux_string,"AT+CMGS=\"%s\"",number); { answer = sendAT(aux_string, ">", 2000);} while(answer==0); delay(1000); Serial println("Systems Ready"); delay(1000); Serial write(26); digitalWrite(LedConfig, HIGH); } ********************************************************************* ***HAM TAO VA XOA BO NHO DEM TRUYEN THONG BUFFER***** void erase_buffer() { int i; for(i=0;i[...]... quốc tế Các tin nhắn SMS giữa các nhà điều hành được chia ra làm hai hạng mục gồm tin nhắn SMS giữa các nhà điều hành cục bộ và tin nhắn SMS giữa các nhà điều hành quốc tế với nhau Tin nhắn SMS giữa các nhà điều hành cục bộ là tin nhắn mà được gửi và nhận giữa các nhà điều hành trong cùng một quốc gia, còn tin nhắn SMS giữa các nhà điều hành quốc tế là tin nhắn SMS được gửi và nhận giữa các nhà điều hành... tổng đài tin nhắn được thiết lập để thực thi các kết nối SMSC với nhau Ngày nay, các ứng dụng tin nhắn SMS dạng văn bản chỉ cần biết làm như thế nào để kết nối với tổng đài tin nhắn Để hỗ trợ cho các SMSC nhiều hơn nữa, bạn chỉ cần tinh chỉnh các thiết lập cài đặt cho tổng đài tin nhắn và không cần phải thay đổi mã nguồn của ứng dụng tin nhắn SMS dạng văn bản đó Như thế việc sử dụng tổng đài tin nhắn có... từ bộ nhớ AT+CMGW Ghi tin nhắn vào bộ nhớ AT+CMGD Xóa tin nhắn AT+CMGC Gửi AT+CMMS Gửi thêm nhiều tin nữa 30 Để nhận và đọc tin nhắn SMS chúng ta sẽ sử dụng những lệnh liên quan sau: Bảng 2.: Các lệnh nhận và đọc tin nhắn SMS Lệnh AT Ý nghĩa AT+CNMI Báo hiệu nếu có tin nhắn mới AT+CMGL Liệt kê các tin nhắn AT+CMGR Đọc tin nhắn AT+CNMA Phản hồi tin nhắn mới • Ví dụ tạo và gửi tin nhắn AT OK AT+CMGF=1... AT+CMT: được dùng để chuyển một tin nhắn mới vào máy tính • AT+CMTI: được dùng để nhắc nhở máy tính có tin nhắn mới nhận và vị trí nó được lưu trong bộ nhớ 2.2.6 Một số ví dụ cơ bản về lệnh AT • Ví dụ về gửi và nhận tin nhắn SMS Để tạo và gửi tin nhắn SMS chúng ta sẽ sử dụng những lệnh liên quan sau: Bảng 2.: Các lệnh tạo và gửi tin nhắn SMS Lệnh AT Ý nghĩa AT+CMGS Gửi tin nhắn AT+CMSS Gửi tin nhắn từ bộ... sơ đồ chân và chức năng từng chân của module Breakout SIM900 Trong phần đồ án này em sử dụng Breakout SIM900A, là module đã được thiết sẵn 15 Hình 1.6: Module SIM900A thiết kế sẵn Đây là một module SIM900A đơn giản, được thiết kế từ sơ đồ nguyên lý sau Hình 1.7: Sơ đồ nguyên lý thiết kế module Breakout SIM900A 16 Sơ đồ chân Breakout: Bảng 1.2: Các chân của module Breakout SIM900A dùng trong bài 1... của SIM900A sang Arduino Uno • Chân 14: (hay chân RXD0 trên module thiết kế sẵn) là chân nhận dữ liệu từ các thiết bị ngoại vi, trong bài nhận dữ liệu từ Arduino Uno Chân 17 và 19: Dương nguồn cung cấp cho module SIM900A hoạt động Chân 18 và 20: Chân nối đất cho module SIM900A Một điều quan trọng SIM900A hoạt động theo tập lệnh Atcommand chúng ta cùng tìm hiểu ở chương 2 17 CHƯƠNG II: TÌM HIỂU VỀ TIN. .. (Gửi tin nhắn) AT+CMGR (Đọc tin nhắn) AT+CMGL (Liệt kê các tin nhắn) AT+CMGW (Ghi tin nhắn vào bộ nhớ) AT+CNMA (Phản hồi tin nhắn mới tới ME/TA) AT+CMGC (Gửi lệnh) Cú pháp của những mã kết quả không yêu cầu dưới đây cũng phụ thuộc vào chế độ modem GSM/GPRS hoặc máy điện thoại đang hoạt động: • AT+CMT (Được dùng để chuyển tin nhắn SMS mới nhận tới máy tính) • AT+CBM (Được dùng để chuyển những tin nhắn. .. chuỗi, trong khi chế độ PDU sử dụng các giá trị số Ví dụ, lệnh AT+CMGL được dùng để liệt kê các tin nhắn SMS trong bộ nhớ Nó nhận một tham số để chỉ định tình trạng tin nhắn được đọc Bảng dưới đây liệt kê các giá trị của tham số đó trong chế độ văn bản và PDU Bảng 2.: Bảng liệt kê các giá trị của tham số trong chế độ văn bản và PDU Tình trạng tin nhắn Received unread Giá trị trong chế độ văn Giá trị trong. .. lệnh mở rộng là những lệnh AT bắt đầu với dấu "+" Mọi lệnh thường dùng cho SMS đều là lệnh mở rộng Ví dụ, +CMGS (Gửi tin nhắn SMS), +CMSS (Gửi tin nhắn SMS từ bộ nhớ), +CMGL (Liệt kê các tin nhắn SMS) và +CMGR (Đọc tin nhắn SMS) là những lệnh mở rộng 2.2.3 Cú pháp tổng quát của các lệnh AT mở rộng Cú pháp tổng quát của các lệnh AT mở rộng khá rõ ràng Vì việc thao tác với SMS chỉ liên quan đến các lệnh... chuyển đổi giữa hai SMSC Bên cạnh các sóng mang không dây, các nhà cung cấp và những người phát triển các ứng dụng SMS còn có thể phát triển một tổng đài tin nhắn hữu ích Chúng ta sẽ xem xét ở tình huống sau Giả sử bạn là nhà phát triển một ứng dụng tin nhắn SMS dạng văn bản Để gửi và nhận các tin nhắn SMS trên máy chủ của bạn, một giải pháp là kết nối các SMSC của các sóng mang không dây Các sóng mang ... dùng Trong phần đồ án tốt nghiệp em, em xin trình bày tính nhỏ điện thoại di động nhắn tin để điều khiển đóng, mở thiết bị sinh hoạt ngày bóng điện, quạt, điều hòa, tủ lạnh Bằng kết hợp board Arduino. .. đọc tin nhắn thực đóng mở thiết bị Đây lưu đồ thuật toán chương trình điều khiển đóng mở thiết bị 47 48 49 Hình 3.: Lưu đồ thuật toán đọc tin nhắn đóng mở thiết bị • Lưu đồ thuật toán hàm gửi tin. .. tin nhắn SMS Để tạo gửi tin nhắn SMS sử dụng lệnh liên quan sau: Bảng 2.: Các lệnh tạo gửi tin nhắn SMS Lệnh AT Ý nghĩa AT+CMGS Gửi tin nhắn AT+CMSS Gửi tin nhắn từ nhớ AT+CMGW Ghi tin nhắn vào

Ngày đăng: 21/04/2016, 11:37

Từ khóa liên quan

Mục lục

  • 1.1. Giới thiệu về nền tảng Arduino.

    • 1.1.1. Lịch sử ra đời của Arduino.

    • 1.1.2. Cấu trúc bên ngoài của board Arduino.

    • 1.1.3. Giới thiệu về board mạch Arduino Uno.

    • 1.1.4. Trình biên dịch Arduino IDE.

    • 1.2. Giới thiệu về Module Breakout SIM900.

      • 1.2.1. Giới thiệu Module Breakout SIM900.

      • 1.2.2. Đặc điểm của module sim 900

      • 1.2.3. Khảo sát sơ đồ chân và chức năng từng chân của module Breakout SIM900

      • 2.1. Tổng quát về tin nhắn SMS.

        • 2.1.1. Giới thiệu về SMS.

        • 2.1.2. Cấu trúc một tin nhắn SMS.

        • 2.1.3. Tin nhắn SMS chuỗi/ Tin nhắn SMS dài.

        • 2.1.4. Trung tâm tin nhắn SMS (SMSC).

        • 2.1.5. Nhắn tin SMS quốc tế

        • 2.1.6. Tổng đài tin nhắn (SMS Gateway)

        • 2.2. Giới thiệu khái quát về tập lệnh ATCommand.

          • 2.2.1. Giới thiệu chung về tập lệnh AT.

          • 2.2.2. Các lệnh căn bản và mở rộng

          • 2.2.3. Cú pháp tổng quát của các lệnh AT mở rộng

          • 2.2.4. Mã kết quả của lệnh AT.

          • 2.2.5. Mã kết quả không được yêu cầu

          • 2.2.6. Một số ví dụ cơ bản về lệnh AT

            • Ví dụ về gửi và nhận tin nhắn SMS

            • 3.1. Thiết kế, thi công hệ thống

              • 3.1.1. Thiết kế nguồn cho SIM900A

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan