Báo cáo bài tập lớn giao tiếp máy tính giao tiếp rs232 – i2c can

23 782 1
Báo cáo bài tập lớn giao tiếp máy tính giao tiếp rs232 – i2c   can

Đ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

Báo cáo tập lớn giao tiếp máy tính GIAO TIẾP RS232 – I2C - CAN Danh sách thành viên: Trịnh Hoài Nam Lê Mộng Hải Hoàng Nguyễn Hoàng Huân I) Giao tiếp RS232 1) Giới thiệu )Là chuẩn giao tiếp vi điều khiển máy tính phổ thông đơn giản, sễ lập trình đồng thời tương thích tốt với ngoại vi )Các dòng vi điều khiển hầu hết trang bị chân giao tiếp RS232 TX RX )Những dòng MCU tầm thấp trung (89c51 hay PIC12F/16F hay Atmega 328) có cổng Những dòng MCU cấp cao (ARM hay PIC24F hay Atmega 2560) lên đến cổng  Các MCU tầm trung tầm thấp chân giao tiếp RS232  Atmega 89C51  ATmega328  PIC16F887  Các MCU tầm cao chân giao tiếp RS232  Texas Instruments LM4F120H5QR  ATMEL Atmega 2560 2) Các câu lệnh lập trình Arduino  Serial.begin(speed, config): khởi tạo    Speed: tốc độ Baud Config: cài đặt số data, parity, stop bit Vd: Serial2.begin(115200, SERIAL_7N1): tốc độ Baud 115200, bit data  Serial.println(value, format): gửi data    Value: giá trị cần gửi, kiểu string, int,… Format: định dạng, HEX, DEC, BIN, OCT Vd: Serial.println(“CMNR”); Serial3.println(giatri_ADC, BIN)  Serial.read(): đọc byte từ máy tính gửi xuống  Vd: dieu_khien = Serial.read()  Serial.readBytes(): đọc nhiều byte kí tự đệm 3) Các câu lệnh lập trình CCS  #use rs232 (options): khởi tạo chuẩn truyền RS232 cho MCU baud rate, start bit, stop bit, số bit truyền, chân MCU truyền/nhận data parity  Vd: #use rs232(baud=9600,Parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)  getc(): nhận kí tự truyền qua RS232  Vd: ki_tu = getc();  putc(): gửi chuỗi kí tự qua RS232  Vd: for ( i = 0; i[...]... MCU khác muốn giao tiếp CAN phải dùng MCP2515  Các MCU cùng các chân giao tiếp CAN  Dòng PIC18F có 1 modun CAN  Dòng ARM M4 có 3 modun CAN 2) Mạch CAN 2 node IV) Demo ứng dụng 1) Giao tiếp giữa RS232 giữa máy tính và Arduino )Nhập số thứ tự nào trên máy tính thông qua giao diện COM thì con LED ứng với số thứ tự đó sáng 2) Giao tiếp I2C giữa Arduino và DS1307  Nạp thời gian trong máy tính vào DS1307... thị lên máy tính thông qua giao diện COM 5) Giao tiếp i2c giữa PIC điều khiển LED  Nhập số thứ tự trên máy tính thông qua giao diện COM thì master sẽ cho LED sáng theo số thứ tự nhập xuống  Master gửi lệnh cho slave sáng LED 6) Giao tiếp i2C giữa PIC và EEPROM  PIC đọc giá trị AD, ta có thể chọn ô nhớ eeprom để ghi vào Có thể chọn chế độ đọc hay ghi Kết quả sẽ hiển thị lên LCD 5) Giao tiếp i2c giữa... DS1307 đếm rồi hiển thị lên máy tinh thông qua giao diện COM 3) Giao tiếp Arduino và EEPROM  Nạp giá trị vào eeprom sau đó ngắt điện Cấp điện lại cho eeprom rồi đọc giá trị trong eeprom và hiển thị lên máy tính thông qua giao diện COM 4) Giao tiếp i2c giữa 2 board Arduino  Nhận lệnh từ máy tính, master truyền dữ liệu cho slave làm sáng LED ứng với số được nhập từ máy tính  Nút nhấn được nối với... động cơ RC servo  Điều khiển góc mà động cơ muốn quay từ máy tính thông qua giao diện COM, nhận lệnh từ máy tính, master truyền lệnh qua slave, slave điều khiển động cơ 7) Giao tiếp CAN 2 node  Node 1 cứ mỗi 1s thì lại gửi request Node 2 đọc giá trị AD rồi gửi tín hiệu lại cho Node 1 Node 1 nhận giá trị AD do node 2 gửi về rồi hiển thị lên máy tính Cảm ơn các bạn đã chú ý lắng nghe  Copyright 2013...3) Các câu lệnh lập trình trên CCS  #use i2c( option): khởi tạo chuẩn truyền i2c cho MCU như là master/slave, địa chỉ của slave, các chân kết nối…  Vd: #use i2c( master, sda=PIN_C4, scl=PIN_C3, force_hw)  i2c_ start(): khởi tạo, chuẩn bị truyền dử liệu lên bus i2c  i2c_ stop(): dừng truyền/nhận dữ liệu, cho bus i2c rảnh  i2c_ write(address), i2c_ write(data): gửi lệnh đến slave có địa chỉ trên... gửi lệnh đến slave có địa chỉ trên bus là address hay có thể là 1 byte data  Vd: i2c_ write(0xA0); i2C_ write(LED);  i2C_ read(): nhận về data được gửi trên bus  Vd: giatri = i2c_ read(); III) Giao tiếp CAN 1) Giới thiệu:  Là chuẩn truyền có khoảng cách truyền là xa nhất và ổn định nhất hiện nay  Tốc độ truyền: I2C < CAN < SPI  Cơ chế kiểm tra lỗi phức tạp nhờ vậy dữ liệu truyền/nhận rất chính xác ... khác muốn giao tiếp CAN phải dùng MCP2515  Các MCU chân giao tiếp CAN  Dòng PIC18F có modun CAN  Dòng ARM M4 có modun CAN 2) Mạch CAN node IV) Demo ứng dụng 1) Giao tiếp RS232 máy tính Arduino... máy tính thông qua giao diện COM LED ứng với số thứ tự sáng 2) Giao tiếp I2C Arduino DS1307  Nạp thời gian máy tính vào DS1307 sau đọc thời gian DS1307 đếm hiển thị lên máy tinh thông qua giao. .. COM 5) Giao tiếp i2c PIC điều khiển LED  Nhập số thứ tự máy tính thông qua giao diện COM master cho LED sáng theo số thứ tự nhập xuống  Master gửi lệnh cho slave sáng LED 6) Giao tiếp i2C PIC

Ngày đăng: 27/10/2015, 12:52

Từ khóa liên quan

Mục lục

  • Slide 1

  • I) Giao tiếp RS232

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • II) Giao tiếp I2C

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • III) Giao tiếp CAN

  • Slide 13

  • Slide 14

  • IV) Demo ứng dụng

  • Slide 16

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

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

Tài liệu liên quan