Bootloader arduino là gì

Trong vài năm qua, vi điều khiển đã trở thành một trong những phần thiết yếu trong cuộc sống đời thường hàng ngày của chúng ta. Bạn có thể không dấn thấy, cơ mà nó vẫn thực hiện một vài nhiệm vụ buổi tối giản để nâng cao cuộc sống hằng ngày của chúng ta. Từ cpu 8-bit đơn giản và dễ dàng điều khiển bóng đèn thông minh cho tới bộ xử lý bộc lộ kỹ thuật số 32-bit (DSP) trong TV và hộp giải mã tín hiệu số, giúp bọn họ có thêm phương tiện vui chơi giải trí và phương tiện kỹ thuật số. Nếu không có vi điều khiển, cuộc sống của bọn họ không chỉ yếu phần giải trí mà còn mất đi kĩ năng kiểm soát. Với nhu cầu gia tăng làm tăng sự cải cách và phát triển của các thành phầm dựa trên vi điều khiển, sản phẩm tỷ đơn vị chức năng vi điều khiển và tinh chỉnh đã được cung cấp mỗi năm.

Bạn đang xem: Bootloader arduino là gì

Bạn sẽ xem: Bootloader arduino là gì

 

Bây giờ câu hỏi đặt ra là, điều gì sẽ xẩy ra khi hàng tỷ thành phầm dựa bên trên vi tinh chỉnh và điều khiển được phân phối và bán, với việc tăng cấp firmware biến hóa ưu tiên sản phẩm đầu? Mỗi vật dụng đã chào bán có cần phải trả lại nhà chế tạo mỗi khi mong muốn nâng cấp firmware không? Câu trả lời ví dụ cho câu hỏi này là không! Và đấy là một giữa những lý do quan trọng đặc biệt nhất lý do một hệ thống dựa trên vi điều khiển và tinh chỉnh có bootloader trên bo mạch.

 

Bootloader là gì

Bootloader là 1 ứng dụng tất cả mục tiêu chính là nâng cung cấp hoặc sửa thay đổi phần mềm hệ thống mà không nên sự can thiệp của các công cụ upgrade chương trình đại lý chuyên dụng. Bootloader gồm thể có tương đối nhiều chức năng, nhưng mà nó chủ yếu được áp dụng để cai quản ứng dụng. Nó cũng rất có thể sử dụng các giao thức không giống nhau như UART, CAN, I2C, I2S, Ethernet hoặc USB để tùy chỉnh thiết lập giao tiếp và ban đầu nâng cấp cho firmware. Một ví dụ nổi bật là bootloader vào bo Arduino, được cấu hình để flash ứng dụng ứng dụng trong bộ lưu trữ flash của chip ATMega.

Xem thêm: Đỉnh Panxipang Ở Đâu ? Nơi Đây Có Gì “Hot” Đáng Để Bạn Ghé Thăm?

 

Tìm hiểu khối hệ thống bootloader


*

 

Ngay cả khi ứng dụng đang chạy, nó được thiết kế đến mức có thể yêu cầu upgrade firmware, sau đó nó sẽ tiến hành các thao tác vệ sinh hệ thống buộc phải thiết. Nó đã reset chip bằng cách đặt những giá trị đang biết vào thanh ghi watchdog. Ko kể ra, áp dụng đưa ra tất cả các hướng dẫn quan trọng cho mã phân nhánh để mang thiết bị vào chế độ bootloader.


*

 

 

Lập trình cỗ nhớ

Chúng ta sẽ tìm hiểu một chút kỹ năng về cấu trúc bộ nhớ lưu trữ và phương pháp lập trình của nó. Để có tác dụng điều này, họ sẽ lấy một lấy ví dụ như về vi điều khiển AVR, tuy vậy trước đó, hãy nắm rõ một số thuật ngữ cụ thể mà bạn cũng có thể biết hoặc có thể không biết. Mọi các loại vi điều khiển đều phải sở hữu sẵn một bộ nhớ không chuyển đổi được dùng để lưu trữ chương trình. Bộ nhớ được sử dụng thịnh hành nhất được gọi là bộ nhớ lưu trữ flash. Nó được phân thành các phần bé dại hơn không giống nhau. Phần nhỏ dại nhất được gọi là một trang. Những trang được phối kết hợp và tạo cho một cấu trúc bộ nhớ lưu trữ được gọi là một trong những khu vực. Các khoanh vùng được bố trí để sản xuất thành các kết cấu lớn hơn được call là các khối. Mỗi cỗ vi điều khiển đều không giống nhau về cách thao tác làm việc các khối này. Nhưng hầu như các bộ vi điều khiển sẽ cho phép bạn ghi một byte tuyệt nhất tại 1 thời điểm.

 

Bootloader vào AVR:

 

AVR kèm theo với một bộ nhớ được tạo thành hai phần, một phần ứng dụng, một trong những phần bootloader. Phần vận dụng chứa mã dành cho ứng dụng với phần bootloader gồm thể đựng nhiều bootloader khác nhau. Trong AVR, phần này có thể được cấu hình bằng phương pháp thiết lập các cầu chì. Bạn có thể đặt không khí bộ hấp thụ khởi động quan trọng theo yêu ước của họ hoặc đặt nó được sử dụng cho mã ứng dụng. 

 

Khi AVR đi vào bootloader. Đầu tiên, nó xóa bộ nhớ trang cùng lấy câu chữ trang mới từ UART, sau đó sẽ bao phủ đầy cỗ đệm trang. Sau khoản thời gian viết xong, nó sẽ hóng thêm trang tự UART; trường hợp một trang mới bao gồm sẵn, vượt trình bắt đầu lại một lượt nữa; giả dụ không, lịch trình sẽ vào phần RWW (Read While Write) và xong xuôi hoạt động. Đây là phiên bạn dạng đơn giản hóa của chuyển động bootloader.