Pic16f877a tách chuỗi dữ liệu nhận được từ rs232
Tôi muốn dùng VĐK PIC16f877a nhận chuỗi dữ liệu từ một thiết bị khác thông qua cổng com(RS232) và tách dữ liệu này theo mong muốn
VD chuổi nhận được từ cổng RS232 là "+QNH 1010 QFE 1009 TEMP 25.5 OK" Giá trị tách ra theo mong muốn là: QNH=1010 QFE=1009 TEMP=25.5 Xin các cao thủ giúp mình cho một ví dụ về ngôn ngữ c thể hiện yêu cầu trên. Thanks |
Các bạn cho mình hỏi: Mình dùng 2 PIC16F877A để truyền dữ liệu qua lại nhau theo thời gian thực. Hai con này có vai trò như nhau. Mỗi con mình dùng 2 Port (Port B và Port D) làm dữ liệu đầu vào sau đó cho truyền qua chân 6, 7 dùng RS232. Hiện mình đã truyền được nếu chỉ dùng 1Byte. Nhưng ở đây la 2 Port do đó mình phải truyền, nhận 2 Byte đồng thời qua RS232.
Mình ko biết làm sao cả! Mong được các bạn, A, E cao thủ chỉ giúp (Mình lập trình dùng CCS)! Thanks! |
mình cũng đang làm về tập lệnh AT với sim900. mình cũng không hiểu cách tách chuỗi dữ liệu của sim900 với pic16f877a. bạn nào có thể cho mình code c mẫu đưcọ ko. tách như kiểu của dtbinhtomay
|
Hi,
Muốn tách được dữ liệu thì trước tiên bạn phải nhận đủ chuỗi dữ liệu đó đã. Sau đó lưu nó lại vào một mảng tạm. Xử lý mảng dữ liệu đó để lấy ra các dữ liệu cần. Trong PIC có ngắt #INT_RDA để nhận dữ liệu đó! Trong hàm ngắt dùng getc() để nhận dữ liệu về rồi gán vào mảng. |
Múi giờ GMT. Hiện tại là 11:38 PM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam