|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
|
Ðiều Chỉnh | Xếp Bài |
01-07-2016, 06:44 PM | #1 |
Đệ tử 3 túi
Tham gia ngày: Feb 2006
Bài gửi: 50
: |
Nhờ xem giúp code giao tiếp HC05 !
Chào mọi người !
Mình mới tập giao tiếp với module Bluetooth HC05. Mình có viêt 1 đoạn code như sau, nhưng code chạy không đúng yêu cầu, nhờ các bạn xem giúp mình và hướng dẫn mình sửa nhé. Xin chân thành cám ơn ! //================================================== ========================== // Ten chuong trinh : Demo Bluetooth // Nguoi thuc hien : Tran Thanh Hieu // Ngay thuc hien : 22/06/2016 // Ngay hoan thanh : /06/2012 // Mo ta phan cung : Dung PIC16F877A - Thach anh 10MHz, // : HC05 (Vcc = 3 -> 5V ) đã cài thành slave // : // : //================================================== ========================== /* ================================================== ============================ Ghi chu : ================================================== ============================ */ #include <16f877A.h> #include <def_877a.h> #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT #use delay (clock=10000000) #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bi ts=9) char data; int b; void main() { trisb=0b11110000; trisa=0b00000000; porta=0b00000000; portb=0b11110000; b=0; while (1) { data=getchar(); if(data=='1') { output_low(pin_B3); b=0; } if (data=='2') { b=1; output_high(pin_A5); } if (!input(pin_B4)&&(b=1)) // Chỗ này không chạy đúng ý đồ { output_high(pin_B3); } } } Đoạn code chạy không đúng ý đồ của mình cụ thể như sau : 1- Khi mình gửi data='2' từ điện thoại trước 2- Sau đó cho RB4 xuống mass thì ngõ ra RB3 không lên mức cao (RB3=0) Nếu mình đảo ngược lại quá trình 1 - Cho RB4 xuống mass trước 2- Sau đó gửi data='2' từ điện thoại thì ngõ ra RB3 lên mức cao (RB3=1) |
|
|