DMA là gì và nó làm gì? DMA là viết tắt của truy cập bộ nhớ trực tiếp. Nó cho phép thiết bị ngoại vi truy cập bộ nhớ mà không cần phải đi qua xử lý. Thông thường để bạn có thể nhận được một cái gì đó giống như nhận UART bùng nổ thông tin, bạn cần bộ xử lý để làm gián đoạn mỗi khi nhận dữ liệu hoặc nhận FIFO là một nửa đầy đủ và sau đó lưu dữ liệu trong bộ nhớ để sử dụng sau này. Nó là một burst nhận được để bạn có thể nhận được allot của dữ liệu và tiếp tục làm điều này trên một trong một lần nữa trước khi bạn có tất cả các dữ liệu và sau đó sử dụng nó. Cũng trong DMA giúp với điều đó. DMA cho phép UART để kích hoạt các DMA để trống nhận FIFO khi nó là một nửa đầy đủ và lưu dữ liệu trong bộ nhớ. Điều này không có bộ xử lý mà không cần phải làm bất cứ điều gì bên cạnh cấu hình ban đầu DMA và UART để làm việc như thế. Sau đó, cuối cùng, bạn có tất cả các dữ liệu đã sẵn sàng để sử dụng, tất cả những gì trong khi bộ vi xử lý đã được bận rộn làm một cái gì đó nhiều hơn thú vị mà đơn giản chỉ là một tài xế xe buýt cho xe buýt dữ liệu cho rất nhiều chu kỳ. Vâng đây là những gì DMA cho. Chuyển dữ liệu từ bộ nhớ cho thiết bị ngoại vi, nhưng tôi cũng có thể:Chuyển dữ liệu từ bộ nhớ vùng khu vực bộ nhớ.Chuyển dữ liệu từ bộ nhớ thiết bị ngoại vi
đang được dịch, vui lòng đợi..
