AVR | Bài 6 Giao tiếp SPI [14]



– Nếu có gì sai sót mong các bạn thông cảm
– Slide các video mình đặt ở video [1] nhé 😛
– Kiên nhẫn coi hết video bạn nhé , k có gì thừa đâu mình có tâm lắm :3
– Datasheet Atmega16 :
– IDE : Atmel Studio 7.0
– Circuit Simulator : Proteus 8.6

##### CHÚ Ý – CẬP NHẬT NGÀY 16/12/2019 #####
##### DUMMY BYTE là cái SPCR = 0 mà mình có nhắc đến trong video ######
##### THIẾU SÓT NGHIÊM TRỌNG :))) SORRY CÁC BẠN #####
Mình không nhớ là trong video mình có nói đến vấn đề này chưa do mình lười xem lại quá nên là mình sẽ edit ở đây cho mọi người đọc:

– Về giao thức SPI thì khi muốn truyền hoặc nhận dữ liệu ta phải có xung CLOCK trên đường dữ liệu SCK thì dữ liệu mới có thể được sample và chuyển đi được. Vậy thì khi Master muốn gửi đi SPI sẽ có các bước như sau:
1. Kéo chân SS để Enable Slave
2. Tạo xung nhịp và chuẩn bị dữ liệu
3. Gửi đi
4. Kéo chân SS để Disable Slave

– Thì các bạn để ý, Master sẽ chủ động tạo xung CLOCK (Slave không cần phải setup CLOCK mà CLOCK sẽ được cấp từ Master nên trong code của Slave hình như không config đến CLOCK). Tại sao mình lại nói về việc này là tại vì khi muốn gửi đi bất cứ thứ gì thì ta phải có CLOCK, các bạn lưu ý điều này.

– Vậy thì đối với Slave khi mình muốn response cho Master thì sao, điều ta quan tâm là muốn gửi được dữ liệu đi thì ta phải có CLOCK, vậy thì làm sao ta có thể tạo ra CLOCK từ Slave trong khi chúng ta không setup CLOCK cho nó. Và lúc này là lúc chúng ta cần đến DUMMY BYTE.

– Ví dụ khi Master gửi 1 byte dữ liệu đến Slave, và các bạn muốn Slave response lại cho Master 1 byte gì đó để Master biết được là Slave đã nhận rồi, vậy thì để Slave response được ta bắt buộc phải nhờ đến Master… Sau khi Master gửi đi 1 byte dữ liệu thì Master tiếp tục gửi đi 1 byte nữa với giá trị là 0x00 hoặc 0xFF(Đây được gọi là DUMMY BYTE giá trị này do người dùng quy định, nhưng khi giao tiếp SPI với 1 số ICs thì byte này sẽ được nhắc đến trong datasheet của nó, còn không thì các bạn cứ việc gửi 0x00 hoặc 0xFF nhé). Việc này sẽ giúp tạo CLOCK cho Slave và khi Slave nhận được CLOCK, dữ liệu trong buffer của Slave sẽ được chuyển đến cho Master….DONE!

– Nhưng các bạn lưu ý là thường thì Master gửi đến Slave thì Slave phải trả lời liền nhé, vì DUMMY BYTE được gửi đi sau mỗi lần Master muốn nhận nên không phải Slave cứ muốn response lúc nào cũng được đâu nha^^.

###################################
0:00 Vài lời kết thúc
0:32 Giới thiệu SPI
1:19 Nhược điểm và ưu điểm của bất đồng bộ – đồng bộ
1:50 Ví dụ thực tế bất đồng bộ – đồng bộ
2:50 Sự khác nhau truyền giữa liệu của UART và SPI
4:37 Các chân SPI trên ATMEGA16
6:28 Nên set gì trên Master, Slave
7:24 Các thanh ghi cần lưu ý
7:47 Thanh ghi SPCR
8:30 Giải thích hai kiểu truyền MSB , LSB
10:47 Bảng bốn chế độ hoạt động
12:44 Cách thể hiện giữ liệu trên các xung nhịp
14:54 Hai thanh ghi cuối
15:30 Các điều cần chú ý
16:34 Mắc các thiết bị cần trong proteus
17:00 Giải thích cấu hình của SPI virtual
18:02 Code cho MASTER, giải thích CODE
21:24 Chạy thử
23:25 Thử đo dữ liệu bằng OSCILLOSCOPE với Mode1
26:40 Mắc lại thiết bị cho Slave
27:20 Code cho SLAVE , giải thích CODE
29:10 Chạy thử
30:50 Phần cuối, giao tiếp SPI giữa hai chip ATMEGA16
33:00 Kết thúc chuỗi video.

#Embedded #AVR #ATMEGA16 #Xiu #SPI

Nguồn: https://phprealestatescript.com

Xem thêm bài viết khác: https://phprealestatescript.com/tong-hop

More Articles for You

So sánh 3 tòa tháp căn hộ G1, G2, G3 Vinhomes Green Bay Mễ Trì 

Ba tòa tháp G1, G2, G3 là tổ hợp căn hộ cao cấp thuộc “siêu” dự án Vinhomes Green Bay …

Lựa chọn bình gốm trang trí cho phòng khách cổ điển

Bạn yêu thích những chiếc bình gốm xinh đẹp, được chạm khắc tinh xảo xen lẫn nét cổ điển mà …

KeoSo – Chuyên trang soi kèo, nhận định kèo bóng đá hôm nay

Soi kèo nhà cái, nhận định kèo bóng đá hôm nay cùng đội ngũ chuyên gia dày dặn kinh nghiệm …

TẤT CẢ ƯU VÀ NHƯỢC ĐIỂM CỦA GAME BÀI B52 CLUB. CLICK XEM NGAY!

Năm 2020 là một dấu mốc nổi bật dành cho game B52 Club. Đánh bại mọi đối thủ khác, nhà …

Federico Bernardeschi cậu học trò cưng của Sarri

Hôm nay hãy cùng theo chân chúng tôi chúng tôi cùng tìm hiểu về cậu học trò cưng của HLV …