Truyền nhận UART, Giao tiếp Pic với Máy tính + Led đơn + Nút nhấn

Truyền nhận UART RS232 được xem là giao tiếp đơn giản nhất của Vi điều khiển với máy tính, giúp tối ưu được phần cứng và cả phần mềm trong quá trình giao tiếp, được nhà sản xuất hổ trợ thanh ghi, đồng thời có thể giúp sai số khi truyền nhận được giảm đi đáng kể, nhưng hệ thống có nhược điểm lớn là khoảng cách truyền, tốc độ và dữ liệu truyền đi không lớn. Nếu sử dụng nhiều slave việc truyền nhận không hoàn toàn tốt nếu không tối ưu chương trình.

Mua linh kiện điện tử tại
Điện tử Nhật Tùng

Liên hệ làm mạch 

Phone: 0967.551.477

Zalo: 0967.551.477

Email: dientunhattung@gmail.com

Địa Chỉ: 171/25 Lê Văn Thọ, P8, Gò Vấp, Tp HCM

Chi tiết: Nhận làm mạch và đồ án Điện tử

 

Khóa học Vi điều khiển có phí

Hình thức học: Video hoặc Kèm trực tiếp
===>>>>  Kích vào hình để được biết thêm chi tiết

khóa học lập trình vi điều khiển online

Tải File bài giải

Pass giải nén: Huynhnhattung.com
===>>>   Nếu bạn chưa có phần mềm giải nén:

Hướng dẫn Tải và Cài đặt phần mềm giải nén Winrar

Video Truyền nhận UART,
Giao tiếp Pic với Máy tính + Led đơn + Nút nhấn

Blog Truyền nhận UART,
Giao tiếp Pic với Máy tính + Led đơn + Nút nhấn

Đề bài truyền nhận UART RS232:

truyen-nhan-uart-giao-tiep-pic-may-tinh-led-don-nut-nhan1

Bài giải truyền nhận UART RS232:

Phần cứng chương trình truyền nhận UART RS232:

  • Việc sử dụng hai Vi điều khiển giao tiếp với nhau thông qua UART giúp tối ưu được chương trình và phần cứng. Khi giao tiếp UART thì kết nối sẽ chân RC6/TX của VĐK thứ nhất kết nối với chân RC7/RX VĐK thứ hai, ngược lại chân RC7/RX VĐK thứ nhất kết nối với chân RC6/TX của VĐK thứ hai. Chân RX có chức năng nhận dữ liệu, chân TX có chức năng truyền dữ liệu.
  • Sử dụng một nút nhấn tích cực mức thấp được đấu vào chân RB7.
  • Có 3 led đơn tích cực mức cao được kết nối với RB4, RB5, RB6, khi sử dụng led đơn phải tính trở 330 xem trong giáo trình thầy Nguyễn Đình Phú. Nếu sử dụng tải AC thì phải kết nối với Relay hoặc Opto-Triac để có thể cách ly tốt với hệ thống.
  • Sử dụng dao động ngoài thạch anh 20M gắn vào chân OSC1 OSC2.
  • Các linh kiện chính cần sử dụng tham khảo tại.
    Thông số kỹ thuật Mua Linh kiện
    Pic16F887 Pic16F877
    Led đơn Led đơn
    Điện trở Điện trở
    Nút nhấn Nút nhấn
    Thạch anh Thạch anh
    PL2303 PL2303

     

truyen-nhan-uart-giao-tiep-pic-may-tinh-led-don-nut-nhan

Phần mềm truyền nhận UART RS232:

Khai báo thư viện tiền sử lý của UART RS232:

  • Vi điều khiển hiện tại mình đan dùng là Pic16F887.
  • Hiện dùng thạch anh nội và thạch anh ngoài khai báo 20M bằng lệnh #Fuses  HS  và  #delay(clock=20M).  
  • Khai báo giao tiếp UART chuẩn rs232
    ” #use rs232(baud=115200,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
    gồm tốc độ truyền bằng 115200, không kiểm tra tính chắn lẻ, đồng thời dữ liệu truyền đi 8bit trong đó có 1bit STOP. Khi sử dụng UART bắt buộc phải dùng chân RC6/TX, RC7/RX 
  • Định nghĩa chân: tùy theo chức năng của chân mà tên định nghĩa được bám sát vào nội dung đan thực hiện.
  • Tên khai báo biến phụ thuộc vào chức năng để khai báo cho phù hợp. 
  • Khi các biến không biết được giá trị cuối thì nên khai báo signed int32 tức khai báo biến có dấu 32bit, lúc này giá trị rất rộng không sợ bị thiếu.

truyen-nhan-uart-giao-tiep-pic-may-tinh-led-don-nut-nhan2

Chương trình chính UART RS232:

  • Bắt đầu chương trình chính phải khởi tạo ngõ vào ra cho vi điều khiển. Một chân của vi điều khiển thì làm nhiệm vụ I/O vì thế phải khỏi tạo.
    Port C, Port B
     có chân RC7/RX nhận tín hiệu từ máy tính gửi xuống, chân RB7 kết nối với nút nhấn để điều khiển hiển thị lên led và màn hình máy tính  nên đóng vai trò nhận tín hiệu vì vậy phải khởi tạo mức 1 nên khởi tạo là 0x80.
  • Kiểm tra nếu có dữ liệu gửi xuống thì kbhit()=1 tiến hành nhận dữ liệu vào biến data, lưu ý biến data phải khai báo char vì giá trị là ký tự. Nếu data bằng “7” thì bật led đơn, ngược lại thì tắt led đơn.
  • Kiểm tra nút nhấn vì nút nhấn nn có nhấn vì vậy phải sử dụng chương trình chống dội cho nút nhấn. Nếu có nhấn thì xuất giá trị lên màn hình máy tính bằng lệnh putc(“Huynh Nhat Tung \r\n”);  đây được xem là phương pháp xuất màn hình được tối ưu nhất.

giao-tiep-pic-may-tinh-led-don-nut-nhan3

Chúc các bạn có một kỳ thi thành công…!!!

Leave a Reply

chatzalo