1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÁO CÁO ĐỊNH KỲ Phân tích và thiết kế hệ thống nhúng Đề tài: Thiết kế và lập trình môđun truyềnnhận bản tin theo chuẩn SPI

10 4 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 1,4 MB

Nội dung

BÁO CÁO ĐỊNH KỲ Phân tích và thiết kế hệ thống nhúng Đề tài: Thiết kế và lập trình môđun truyềnnhận bản tin theo chuẩn SPI Bus giao tiếp SPI thường được sử dụng để giao tiếp vi xử lý hoặc vi điều khiển với bộ nhớ như EEPROM, RTC (Đồng hồ thời gian thực), ADC (Analog to Digital Converter – Bộ chuyển đổi tương tự sang số), DAC (DigitaltoAnalog Converter – Bộ chuyển đổi số sang tương tự), thiết bị hiển thị như màn hình LCD, IC âm thanh, các loại cảm biến như nhiệt độ và áp suất, thẻ nhớ như MMC hoặc thẻ SD hoặc thậm chí các bộ vi điều khiển khác. Đối với giao tiếp khoảng cách ngắn, giao tiếp nối tiếp đồng bộ sẽ là lựa chọn tốt hơn và trong đó giao tiếp ngoại vi nối tiếp hoặc SPI nói riêng là lựa chọn tốt nhất. Khi chúng ta nói truyền thông khoảng cách ngắn, nó thường có nghĩa là giao tiếp với một thiết bị hoặc giữa các thiết bị trên cùng một board mạch in (PCB). SPI là một kiểu truyền thông nối tiếp kiểu đồng bộ tức là nó sử dụng tín hiệu đồng hồ chuyên dụng để đồng bộ hóa bộ phát và bộ thu hoặc Master và Slave. Bộ phát và bộ thu được kết nối với dữ liệu riêng biệt và tín hiệu đồng hồ sẽ giúp bộ thu khi tìm kiếm dữ liệu trên bus. Tín hiệu đồng hồ phải được cung cấp bởi Master tới Slave (hoặc tất cả các Slave trong trường hợp thiết lập nhiều Slave). Có hai loại cơ chế kích hoạt trên tín hiệu đồng hồ được sử dụng để báo cho bên nhận biết về dữ liệu: Kích hoạt cạnh và kích hoạt mức.

ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN – ĐIỆN TỬ BÁO CÁO ĐỊNH KỲ Phân tích thiết kế hệ thống nhúng Đề tài: Thiết kế lập trình mô-đun truyền/nhận tin theo chuẩn SPI Giảng viên hướng dẫn : TS Nguyễn Hồng Dũng Nhóm sinh viên thực : Vũ Mạnh Tường 20193187 Nguyễn Ngọc Tuyên 20193188 Trịnh Quang Tuyến 20196733 Bùi Thọ Vinh 20193195 Phạm Minh Vũ 20193198 Hà nội, Tháng 4/2023 Chương I Giói thiệu 1.Giới thiệu chung Giao tiếp ngoại vi nối tiếp SPI loại giao thức kiểu Master – Slave cung cấp giao diện chi phí đơn giản chi phí thấp vi điều khiển thiết bị ngoại vi Bus giao tiếp SPI thường sử dụng để giao tiếp vi xử lý vi điều khiển với nhớ EEPROM, RTC (Đồng hồ thời gian thực), ADC (Analog  to Digital Converter – Bộ chuyển đổi tương tự sang số), DAC (Digital-to-Analog Converter – Bộ chuyển đổi số sang tương tự), thiết bị hiển thị hình LCD, IC âm thanh, loại cảm biến như nhiệt độ áp suất, thẻ nhớ MMC thẻ SD chí vi điều khiển khác Đối với giao tiếp khoảng cách ngắn, giao tiếp nối tiếp đồng lựa chọn tốt giao tiếp ngoại vi nối tiếp SPI nói riêng lựa chọn tốt Khi nói truyền thơng khoảng cách ngắn, thường có nghĩa giao tiếp với thiết bị thiết bị board mạch in (PCB) SPI kiểu truyền thông nối tiếp kiểu đồng tức sử dụng tín hiệu đồng hồ chuyên dụng để đồng hóa phát thu Master Slave Bộ phát thu kết nối với liệu riêng biệt tín hiệu đồng hồ giúp thu tìm kiếm liệu bus Tín hiệu đồng hồ phải cung cấp Master tới Slave (hoặc tất Slave trường hợp thiết lập nhiều Slave) Có hai loại chế kích hoạt tín hiệu đồng hồ sử dụng để báo cho bên nhận biết liệu: Kích hoạt cạnh kích hoạt mức Kích hoạt thường sử dụng kích hoạt cạnh có hai loại: cạnh lên (chuyển đổi từ thấp lên cao đồng hồ) cạnh xuống (chuyển đổi từ cao xuống thấp) Tùy thuộc vào cách thu cấu hình, lên phát cạnh, thu tìm kiếm liệu bus liệu từ bit Bởi tín hiệu đồng hồ liệu gửi Master (hoặc phát), không cần phải lo lắng tốc độ truyền liệu Điều làm cho SPI trở nên phổ biến giao thức truyền thông đồng nối tiếp khác (hoặc giao tiếp nối tiếp nào) cung cấp tốc độ truyền liệu bảo mật cao với phần cứng đơn giản giống ghi dịch với chi phí tương đối thấp 2.SPI hoạt động SPI giao tiếp ngoại vi nối tiếp Motorola phát triển vào năm 1980 giao diện tiêu chuẩn, chi phí thấp đáng tin cậy vi điều khiển (Vi điều khiển Motorola lúc đầu) IC ngoại vi Nhờ giao diện đơn giản, linh hoạt dễ sử dụng, SPI trở thành tiêu chuẩn nhà sản xuất bán dẫn khác bắt đầu sử dụng giao thức chip Trong giao thức SPI, thiết bị kết nối mối quan hệ Master – Slave giao diện đa điểm Trong loại giao diện này, thiết bị coi Master bus (thường vi điều khiển) tất thiết bị khác (IC ngoại vi chí vi điều khiển khác) coi Slave Trong giao thức SPI, có thiết bị Master nhưng nhiều thiết bị Slave Bus SPI bao gồm tín hiệu chân: - Master – Out / Slave – In (MOSI hay SI): cổng bên Master, cổng vào bên Slave, dành cho việc truyền liệu từ thiết bị Master đến thiết bị Slave Master – In / Slave – Out (MISO hay SO): cổng vào bên Master, cổng bên Slave, dành cho việc truyền liệu từ thiết Slave đến thiết bị Master Serial Clock (SCK hay SCLK): xung giữ nhịp cho giao tiếp SPI Chip Select (CS) hay Slave Select (SS): chân chọn chip Bởi bus SPI thực cách sử dụng tín hiệu hay dây nên đơi gọi chuẩn giao tiếp dây (four-wire) Đầu tiên xem giao diện đơn giản Master Slave kết nối giao thức SPI sau tìm hiểu dây Hình ảnh sau mô tả thiết bị Master (Bộ xử lý) kết nối với thiết bị Slave (Ngoại vi) sử dụng bus SPI Master – Out / Slave – In hay MOSI, tên cho thấy, liệu tạo Master nhận Slave Do đó, chân MOSI Master Slave kết nối với Master – In / Slave – Out hay MISO là liệu tạo Slave phải truyền tới Master.Các chân MISO Master Slave kết nối với Mặc dù tín hiệu MISO tạo Slave, đường tín hiệu điều khiển Master Master tạo tín hiệu đồng hồ SCLK và cung cấp cho đầu vào đồng hồ Slave. Xung có chức giữ nhịp cho giao tiếp SPI, SPI chuẩn truyền đồng nên cần đường giữ nhịp, nhịp chân SCK báo bit liệu đến Sự tồn xung SCK giúp trình tuyền bị lỗi tốc độ truyền SPI đạt cao Chip Select (CS) Slave Select (SS) sử dụng để chọn Slave cụ thể Master. Nếu Master kéo đường SS Slave xuống mức thấp việc giao tiếp xảy Master Slave Vì đồng hồ tạo Master, luồng liệu điều khiển Master Với chu kỳ đồng hồ, bit liệu truyền từ Master đến Slave bit liệu truyền từ Slave đến Master Quá trình xảy đồng thời sau chu kỳ đồng hồ, byte liệu truyền theo hai hướng đó, SPI giao tiếp song cơng tồn phần (full – duplex) Nếu liệu phải truyền thiết bị, thiết bị phải gửi (dữ liệu giả) phụ thuộc vào thiết bị cho dù liệu truyền liệu thực tế hay khơng Điều có nghĩa bit truyền thiết bị, thiết bị phải gửi liệu bit, tức Master truyền liệu đồng thời MOSI nhận liệu từ Slave đường MISO Nếu Slave muốn truyền liệu, Master phải tạo tín hiệu đồng hồ cho phù hợp cách biết Slave muốn gửi liệu trước Nếu Master kết nối với nhiều Slave sơ đồ kết nối hình ảnh sau Hình Cấu hình Master Slave độc lập (Independent Slave Cịniguration) Trong cấu hình này, Master dành riêng đường Slave Select (SS) cho tất Slave Slave chọn riêng lẻ Tất tín hiệu đồng hồ Slave kết nối chung với SCK Master Tất chân MOSI, MISO Slave kết nối với chân MOSI, MISO Master Hình Cấu hình Daisy Chain Chỉ có đường Slave Select kết nối với Slave MOSI Master kết nối với MOSI Slave MISO Slave kết nối với MOSI Slave , … MISO Slave cuối kết nối với MISO Master Phần cứng SPI Yêu cầu phần cứng để thực SPI đơn giản so sánh với UART và I2C Hãy xem xét Master Slave đơn kết nối bus SPI Hình ảnh sau cho thấy yêu cầu hệ thống tối thiểu cho hai thiết bị Giả sử Master truyền byte liệu lên bus SPI Byte dịch vào Slave Khi byte thứ hai truyền đến 1, byte bị đẩy khỏi Slave truyền đến Slave Tương tự, byte thứ ba truyền vào Slave 1, byte thứ hai bị dịch sang Slave byte bị dịch Slave Từ hình ảnh cho thấy thiết bị Master bao gồm ghi dịch (Shift Register), mạch chốt liệu (Latch) tạo xung nhịp (Clock Generator) Thiết bị Slave bao gồm phần cứng tương tự: ghi dịch (Shift Register) mạch chốt liệu (Latch) Cả hai ghi dịch kết nối để tạo thành vịng Thơng thường, kích thước ghi – bit ghi kích thước lớn 16 bit phổ biến Thiết bị Master bắt đầu việc trao đổi liệu cách truyền Byte vào ghi dịch nó, sau Byte liệu đưa sang Slave theo đường tín hiệu MOSI, Slave truyền liệu nằm ghi dịch ngược trở Master thơng qua đường tín hiệu MISO Bằng cách này, liệu hai ghi trao đổi với Việc đọc ghi liệu vào Slave diễn lúc nên tốc độ trao đổi liệu diễn nhanh Do đó, giao thức SPI giao thức có hiệu Bởi với chu kỳ đồng hồ, bit liệu truyền theo hướng tức từ Master đến Slave và từ Slave đến Master Vì vậy, byte liệu truyền từ thiết bị, chu kỳ đồng hồ Chế độ hoạt động Chúng ta thấy công việc thiết bị Master tạo tín hiệu đồng hồ phân phối tới Slave để đồng liệu Master Slave Công việc Master không dừng lại việc tạo tín hiệu đồng hồ tần số cụ thể Trong thực tế, Master Slave phải đồng ý giao thức đồng hóa định Đối với điều này, hai đặc điểm xung đồng hồ cực tính đồng hồ (Clock Polarity – CPOL CKP) pha đồng hồ (Clock Phase – CPHA) đưa vào để xem xét Clock Polarity (CPOL CKP) xác định trạng thái đồng hồ Khi CPOL mức thấp, xung đồng hồ tạo Master tức SCK mức thấp nhàn rỗi (idle) chuyển sang mức cao trạng thái hoạt động (trong truyền liệu) Tương tự, CPOL mức cao, SCK mức cao nhàn rỗi chuyển sang mức thấp trạng thái hoạt động Phase Clock (CPHA) xác định trình chuyển đổi trạng thái xung đồng hồ tức lên (thấp lên cao) xuống (cao xuống thấp), liệu truyền Khi CPHA 0, liệu truyền cạnh lên xung đồng hồ Dữ liệu truyền cạnh xuống CPHA Tùy thuộc vào giá trị Clock Polarity (CPOL) Clock Phase (CPHA), có chế độ hoạt động SPI Mode 0: Mode xảy Clock Polarity Clock Phase (CPOL = CPHA = 0) Trong Mode 0, truyền liệu xảy cạnh lên xung đồng hồ Mode 1: Mode xảy Clock Polarity Clock Phase (CPOL = CPHA = 1) Trong mode 1, việc truyền liệu xảy cạnh xuống xung đồng hồ Mode 2: Mode xảy Clock Polarity Clock Phase (CPOL = CPHA = 0) Trong mode 2, truyền liệu xảy cạnh lên xung đồng hồ Mode 3: Mode xảy Clock Polarity Clock Phase (CPOL = CPHA = 1) Trong mode 3, truyền liệu xảy cạnh lên xung đồng hồ Hình Ví dụ mô chế độ hoạt động Mode Ứng dụng Giao thức SPI tích hợp số loại thiết bị như: - Các chuyển đổi (ADC DAC) Các loại nhớ (SD Card , MMC , EEPROM , Flash) Các loại IC thời gian thực - Các loại cảm biến (nhiệt độ, áp suất…) số loại khác như: trộn tín hiệu, LCD, Graphic LCD, video game controller,… 10

Ngày đăng: 16/06/2023, 00:56

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w