ENCYCLOPEDIA VỀ ĐIỆN TỬ TRUYỀN THANH VÀ KỸ THUẬT ĐIỆN bộ vi điều khiển STM32 và bảng gỡ lỗi cho chúng. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện / Ham Radio Technologies Trong nhiều năm, những người nghiệp dư vô tuyến đã sử dụng các bộ vi điều khiển tám bit thuộc họ PIC và AVR. Chúng phổ biến do giá thấp, tài liệu chi tiết, dễ lập trình và dễ cài đặt. Tuy nhiên, thường có những trường hợp sức mạnh của một bộ vi điều khiển như vậy không đủ để giải quyết nhiệm vụ. Ví dụ đơn giản nhất là máy đo tần số hoặc bộ tạo tín hiệu trên vi điều khiển, trong đó tần số được đo hoặc tạo ra tối đa phụ thuộc trực tiếp vào tốc độ xử lý hoặc xuất thông tin. Ngoài tốc độ, bộ vi điều khiển tám bit còn có những hạn chế khác, chẳng hạn như trong nhiều mẫu AVR chỉ có một cổng nối tiếp phần cứng, không cho phép nhận thông tin từ thiết bị bên ngoài và đồng thời gửi kết quả xử lý của nó cho người tiêu dùng. Chưa kể những thứ "tầm thường" như hiển thị thông tin trên chỉ báo đồ họa, đòi hỏi tài nguyên lớn, cả tốc độ và bộ nhớ. Sau khi phân tích một số hạn chế đó, tác giả nảy ra ý tưởng chuyển sang vi điều khiển họ STM32. Ví dụ: hãy xem xét hai bộ vi điều khiển cùng loại giá - STM32F103C6 và ATmega328P. Bảng 1
Các tham số so sánh của chúng được đưa ra trong bảng. 1. Kết quả so sánh thậm chí còn hơi ngạc nhiên. Bộ vi điều khiển 32 bit không chỉ mạnh hơn bộ vi điều khiển 0,5 bit ở hầu hết các khía cạnh mà còn rẻ hơn. Tất nhiên, việc hàn một bộ vi điều khiển với bước chân 32 mm tại nhà không phải là quá dễ dàng. May mắn thay, trong hầu hết các trường hợp, điều này là không bắt buộc - có rất nhiều loại bảng gỡ lỗi với bộ vi điều khiển thuộc họ STMXNUMX trên thị trường, đủ cho các ứng dụng khác nhau. Hãy xem xét chúng chi tiết hơn. STM32F4-KHÁM PHÁ Bảng này (được hiển thị trong Hình 1) có lẽ là thuận tiện nhất cho người mới bắt đầu nghiên cứu vi điều khiển STM. Đầu tiên, nó có một bộ lớn các thiết bị ngoại vi. Ngoài bộ vi điều khiển, bo mạch còn có một gia tốc kế vi cơ điện tử, micrô, bộ giải mã âm thanh, hai đầu nối USB, một nút và bốn đèn LED.
Các đầu ra của bộ vi điều khiển được đưa đến các miếng tiếp xúc để gắn các đầu nối chân ở cạnh trái và phải của bo mạch, giúp dễ dàng kết nối tất cả các thiết bị bên ngoài cần thiết với chúng. Bộ vi điều khiển STM32F407VGT6 được cài đặt trên bo mạch có các thông số rất tốt: bộ nhớ FLASH 1 MB, RAM 192 KB và tần số xung nhịp 168 MHz. Và cuối cùng, bo mạch được trang bị trình gỡ lỗi ST-LINK/V2 tích hợp, có thể được sử dụng để gỡ lỗi các chương trình không chỉ trên bộ vi điều khiển trên bo mạch mà còn trên các bộ vi điều khiển cùng họ trên các bo mạch khác. Việc chuyển sang chúng được thực hiện bằng cách sử dụng một nút nhảy có thể tháo rời và đầu nối SWD. Giá của bảng là khoảng 800 rúp, có thể được coi là khá chấp nhận được. Ban phát triển STM32F103RBT6 Tùy chọn thú vị tiếp theo là bảng gỡ lỗi với bộ vi điều khiển STM32F103RBT6 (Hình 2).
Nó hơi yếu hơn so với cái được cài đặt trên bo mạch trước đó - tốc độ xung nhịp 72 MHz, bộ nhớ FLASH 128 KB và RAM 20 KB, nhưng các thiết bị ngoại vi rất thú vị. Màn hình cảm ứng TFT 320x240px 2.8'', cổng USB tích hợp để giao tiếp với PC, khe cắm thẻ nhớ SD, đồng hồ thạch anh 32768Hz, ngăn chứa pin đồng hồ thời gian thực và đầu nối ST-LINK dành cho các chương trình gỡ lỗi. Giá của bảng này cũng vào khoảng 800 rúp, nhưng cần lưu ý rằng không có trình gỡ lỗi tích hợp nào trên đó. Để tải xuống các chương trình, bạn phải mua một trình gỡ lỗi ST-LINK riêng hoặc sử dụng bảng STM32F4-DISCOVERY đã thảo luận ở trên để thay thế cây phong nhỏ Sự giống nhau bên ngoài của bo mạch này (Hình 3) với các mô-đun Arduino nổi tiếng là rất ấn tượng. Và đây không phải là ngẫu nhiên.
Bảng Maple Mini được thiết kế để thay thế cho Arduino Nano. Ngôn ngữ lập trình và môi trường phát triển cho các bộ vi điều khiển cài đặt Arduino thuộc họ AVR đã được điều chỉnh cho phù hợp với họ STM. Xem http://leaflabs.com/docs/maple-q uickstart.html để biết thêm thông tin về ngôn ngữ lập trình Maple IDE và môi trường phát triển. Bảng phát triển có bộ vi điều khiển STM32F103CBT6 chạy ở tốc độ 72 MHz, với 128 KB FLASH và 20 KB RAM, chắc chắn là nhiều hơn bất kỳ mô-đun Arduino nào. Và điểm cộng lớn hơn là môi trường phát triển không thay đổi nhiều. Một cách riêng biệt, chúng tôi lưu ý rằng mặc dù có kích thước thu nhỏ, Maple Mini cung cấp một thiết bị ngoại vi rất đa dạng: 34 dòng I / O, hai kênh giao diện SPI và hai I2C, ba cổng nối tiếp. Điều này cho phép bạn áp dụng thành công nó trong các phát triển nghiệp dư khác nhau. Do kích thước nhỏ, Maple Mini có thể được tích hợp trực tiếp vào thiết bị đang được phát triển. Bạn có thể mua bảng Maple Mini ban đầu với giá $35 trên trang web Maple Mini ban đầu. Thêm 5 đô la nữa sẽ tính phí vận chuyển. Một bản sao của bảng sản xuất tại Trung Quốc sẽ có giá chỉ bằng một nửa. Phần mềm Có một số tùy chọn cho môi trường phát triển có thể được sử dụng để chuẩn bị các chương trình cho bộ vi điều khiển thuộc họ STM32: - IAR Embedded Workbench thương mại, AtollicTrueSTUDIO, Keil, v.v. Các sản phẩm đầy đủ tính năng này khá đắt, với giá bản quyền là 1000 euro, nhưng cũng có các phiên bản demo miễn phí có giới hạn về số lượng chương trình được phát triển, chúng là khá đủ cho hầu hết các dự án đơn giản; - Eclipse miễn phí với trình biên dịch ARM-GCC yêu cầu thiết lập trình biên dịch không tầm thường trước khi sử dụng. Điểm cộng duy nhất hiện nay là khả năng hoạt động không chỉ trên Windows mà còn trên Linux; - miễn phí CooCox IDE (CoIDE) dựa trên cùng trình soạn thảo Eclipse. Thực hiện tải và gỡ lỗi chương trình qua ST-LINK. Không giống như phiên bản trước, CoIDE không yêu cầu bất kỳ cài đặt đặc biệt nào và hoạt động ngay sau khi cài đặt. Tùy chọn này là thuận tiện nhất và nên được sử dụng. Hãy sử dụng CooCox IDE để tạo một chương trình ví dụ cho bo mạch STM32F4-DISCOVERY thực hiện chương trình cổ điển cho chương trình đầu tiên cho bất kỳ đèn LED nhấp nháy nào của vi điều khiển. Có bốn đèn LED trên bảng STM32F4-DIS-COVERY, chúng được kết nối với các chân PD12-PD15 của vi điều khiển. Hãy làm cho chúng nhấp nháy xen kẽ. Bước 1. Chúng tôi khởi chạy môi trường phát triển CoIDE, tạo một dự án. Từ danh sách thả xuống được hiển thị trong Hình. 4, chọn vi điều khiển STM32F407VG.
Bước 2. Như thể hiện trong hình. 5, chọn các thành phần sẽ được sử dụng trong dự án. Những cái chính là GPIO (đầu vào-đầu ra), Thư viện C (các chức năng ngôn ngữ C cơ bản) và M4 Core (các chức năng lõi của bộ xử lý). Khi một hoặc một thành phần khác được kích hoạt, CoIDE sẽ tự động sao chép các tệp cần thiết vào thư mục dự án, điều này rất thuận tiện.
Bước 3. Nhập văn bản chương trình. Nó khá ngắn và được thể hiện trong Bảng. 2. Như bạn có thể thấy, mọi thứ đều đơn giản và rõ ràng. Những người đã viết chương trình cho vi điều khiển AVR chắc chắn sẽ thấy các cấu trúc quen thuộc - khởi tạo các cổng chỉ hướng (đầu vào hoặc đầu ra), vòng lặp chính trong đó các hành động cần thiết được thực hiện. Nói chung, cú pháp của chương trình hoàn toàn phù hợp với ngôn ngữ C, tài liệu về nó là quá đủ. Trên Internet cũng có rất nhiều bài viết về lập trình cho STM32. Nhiều ví dụ đi kèm với bảng phát triển và cũng có thể được sử dụng làm mẫu. Sau khi nhập văn bản của chương trình bằng cách nhấn nút trên màn hình "Tải xuống flash", nó sẽ được tải vào bộ vi điều khiển. Các đèn LED trên bảng bắt đầu nhấp nháy. Một cách riêng biệt, đáng chú ý là khả năng gỡ lỗi - điểm ngắt có thể được đặt ở bất kỳ đâu trong chương trình, bạn có thể chạy chương trình từng bước, xem giá trị của các biến. Tất nhiên, ví dụ này không hoàn hảo. Ví dụ: để kiểm soát việc nhấp nháy đèn LED, bạn có thể sử dụng các ngắt hẹn giờ, giúp giải phóng vòng lặp chương trình chính cho các tác vụ khác. Những người muốn có thể tự giải quyết vấn đề này. Kết luận Nhìn chung, sau lần đầu làm quen, các bộ vi điều khiển họ STM32 đã để lại ấn tượng rất dễ chịu. Mọi thứ hóa ra không quá khó khăn và sự tiện lợi của môi trường phát triển, quy trình gỡ lỗi và một số lượng lớn các chức năng tiêu chuẩn bằng cách nào đó thậm chí còn khiến tôi nhớ đến quá trình chuyển đổi từ Ms DOS sang Windows - các điểm chung có vẻ giống nhau, nhưng mọi thứ thuận tiện và chức năng hơn nhiều. Nhưng nhược điểm chính của gia đình này đối với sự phát triển nghiệp dư vẫn là một bước kết luận quá nhỏ. Thiết kế và hàn một bảng có bước chì 0,5 mm tại nhà là một nhiệm vụ rất dễ dàng. Nhưng ở mức giá hiện tại, bảng gỡ lỗi với bộ vi điều khiển đã được gắn sẵn khá dễ tiếp cận đối với mọi người nghiệp dư vô tuyến. Có đáng để làm lại mọi thứ đối với kiến trúc STM và 32-bit không? Dĩ nhiên là không. Có những nhiệm vụ mà ATtiny là đủ. Tuy nhiên, ví dụ, để phân tích phổ trong máy thu SDR tự chế hoặc để nhận và truyền một lượng lớn thông tin qua mạng, sẽ hiệu quả hơn nhiều nếu sử dụng ngay một bộ vi điều khiển mạnh mẽ để không bị thiếu bộ nhớ hoặc hiệu suất khi cải tiến thiết bị. Tác giả: D. Elyuseev Xem các bài viết khác razdela Ham Radio Technologies. Đọc và viết hữu ích bình luận về bài viết này. Tin tức khoa học công nghệ, điện tử mới nhất: Máy tỉa hoa trong vườn
02.05.2024 Kính hiển vi hồng ngoại tiên tiến
02.05.2024 Bẫy không khí cho côn trùng
01.05.2024
Tin tức thú vị khác: ▪ Một lá gan khỏe mạnh được phát triển từ một người hiến tặng bị bệnh ▪ Xe điện Thunder Power có phạm vi hoạt động lên đến 600 km ▪ 3D Vision: phiên bản thứ hai ▪ Ánh sáng ban đêm ảnh hưởng đến hành vi của cá Nguồn cấp tin tức khoa học và công nghệ, điện tử mới
Tài liệu thú vị của Thư viện kỹ thuật miễn phí: ▪ phần của trang web Thí nghiệm hóa học. Lựa chọn bài viết ▪ bài viết của Charles Maurice de Talleyrand-Périgord. câu cách ngôn nổi tiếng ▪ bài viết Nhà văn Nga nào góp phần giành độc lập cho Ấn Độ? đáp án chi tiết ▪ bài báo Thành phần chức năng của TV Tamashi. Danh mục ▪ bài viết tục ngữ và câu nói của người Uyghur. Lựa chọn lớn
Để lại bình luận của bạn về bài viết này: Tất cả các ngôn ngữ của trang này Trang chủ | Thư viện | bài viết | Sơ đồ trang web | Đánh giá trang web www.diagram.com.ua |