Với Sim908, bạn cần đọc kỹ tài liệu kỹ thuật của nó, tôi đã có gửi ở đầu luồng này và có nhắc nhỏ đọc đi đọc lại nhiều lần.
- Tôi chỉ sử dụng chân GPS_TXD: vì chỉ có nhu cầu cần lấy data từ vệ tinh. Chân GPS_RX chỉ sử dụng khi update firmware, thông thường việc nhà để nhà sãn xuất làm.
- Tốc độ mặc định của GPS module của SIm908 là 115200 bps. Tuy nhiên có thể dễ dàng thiết lập lại tốc độ này bằng lệnh AT: AT+CGPSIPR=<rate> //Set Baud rate
- Đinh dạng dữ liệu đầu ra cũng dễ dàng thiết lập bằng lệnh AT: AT+CGPSOUT=<mode>
- Sử dụng lệnh AT để lấy dữ liệu GPS bất cứ lúc nào( AT+CGPSINF=<mode>). Thậm chí cho phép/không cho phép GPS chạy(AT+CGPSPWR).
- Ban đầu khi thiết kế phần cứng, tôi có ý định sử dụng riêng 2 bộ UART như vậy, 1 cho GSM và 1 cho GPS. Tuy nhiên, khi làm việc thực tế trên SIm908. Tôi không cần sử dụng UART GPS nữa. Vì có thể kiểm soát dữ liệu bằng lệnh AT rồi(như trình bày ở trên). Mỗi lần minh gọi lệnh [AT+CGPSINF=<mode>], dữ liệu GPS sẽ xuất ra UART GSM.
Vì vậy, tôi sử dụng UART GPS + RS232 + PC để truyền lệnh AT điều khiển SIm908. Điều này rất có lợi:
- Khi cấu hình ban đầu cho Sim908: Vì các lệnh này chỉ cần cấu hình 1 lần duy nhất, thiết lập sẽ được lưu lại trong bộ nhờ không bay hơi trong Sim908.
- Kiểm tra/Thử nghiệm/Test các lệnh AT: Tấc nhiên là bạn phải viết được đoạn code có thể làm việc này. Ví dụ thế này: Khi ban sử dụng siow.exe trong CCS để truyền data xuống MCU qua UART GPS, MCU sẽ tạo hàm có thể truyền lệnh AT này xuống Sim908 qua UART GSM.
Anh longtu mình có thể bỏ UART GPS thì mọi dữ liệu lấy từ vệ tinh về đều được gửi qua chân TX SIM908 truyền về PIC rồi từ PIC gửi về PC được không anh?
|