Tôi đã sử dụng một MCU AVR 8 bit để chế tạo robot theo dòng với sinh viên trong vài năm nay. Bây giờ tôi muốn bước lên ARM Cortex-M3 vì tôi muốn thêm một số tính năng sử dụng nhiều CPU hơn như đo hình và phản ứng tổng hợp cảm biến.
Các yêu cầu là:
- 8 đầu vào tương tự,
- 4 đầu ra PWM,
- Tôi 2 C,
- 2 đầu vào bộ mã hóa cầu phương,
- I / O nối tiếp,
- Tự lập trình không dây mà không cần truy cập vật lý vào robot.
- Công cụ đa nền tảng + IDE (OS X, Linux, Windows).
Các bước tôi đã thực hiện cho đến nay là:
Tôi đang sử dụng bảng dựa trên STM32F103C8 này. Tôi tin rằng MCU này có mọi thứ tôi cần, bao gồm cả 2 x QEI mà tôi dự định thực hiện trong phần mềm nhưng điều này tình cờ có nó trong phần cứng, thật tuyệt vời:
- Hội đồng http://eud.dx.com/product/high-quality-cortex-m3-stm32-stm32f103c8t6-development-board-w-swd-interface-844380789
- Lập trình viên http://eud.dx.com/product/st-link-v2-programmer-emulator-mini-stlink-doader-for-stm8-stm32-mcu-development-board-844380733
Tôi đã theo dõi điều này để thiết lập toolchain + IDE của mình:
Tôi đã thấy rằng tài liệu về con chip này nằm rải rác trong một số tệp PDF mà tôi đã tải xuống:
- Bảng dữ liệu STM32F103x8 http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00161566.pdf
- Tài liệu tham khảo http://www.st.com/st-web-ui/static/active/en/resource/technical/document/reference_manual/CD00171190.pdf
- Một vài tài liệu khác như AN2606 (chế độ khởi động bộ nhớ), PM0075 (hướng dẫn lập trình flash) và AN3155 (giao thức bộ tải khởi động nối tiếp), có thể tôi sẽ cần trong tương lai.
Tôi cũng đã tải xuống thư viện ngoại vi tiêu chuẩn STM32F10x, nhưng đến lượt tôi khuyên tôi nên lấy STM32CubeF1 mới hơn, mà tôi tin rằng đó chỉ là một sự đổi tên tiếp thị ở trên, vì vậy tôi đã nhận được cả hai:
- http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/LN1939/PF257890
- http://www.st.com/web/en/catalog/tools/PF260820
Cuối cùng, tôi cũng đã nhận được "Hướng dẫn dứt khoát về ARM Cortex-M3" của Joseph Yiu, tôi đang đọc khi tôi chờ đợi các bảng đến.
Câu hỏi của tôi là:
Tôi hơi bị choáng ngợp bởi tài liệu, để nói rằng ít nhất, và tôi thậm chí không chắc là tôi đã có tất cả. Ví dụ, biểu dữ liệu và trạng thái thủ công tham chiếu rằng chip có 3 bộ định thời có khả năng nhập mã hóa cầu phương. Nhưng, tôi không thể tìm thấy tài liệu về các thanh ghi điều khiển bộ định thời ở bất cứ đâu trong các tệp PDF ở trên. Tôi đang thiếu gì?
Tôi nên sử dụng Thư viện ngoại vi tiêu chuẩn (cũ hơn?) Hay khối lập phương (mới hơn?)? Có gì khác biệt? Tôi hiểu rằng cả hai thư viện đều cứu tôi khỏi thao tác đăng ký trực tiếp và là cách nên làm. Tôi có đúng không
Tài liệu cho các thư viện ở đâu (ngoài các bình luận doxygen được nhúng, rất hay và tất cả nhưng tôi muốn có một html / pdf có thể tìm kiếm)?
Tôi đã chọn Eclipse + GCC ARM + OpenOCD làm chuỗi công cụ của mình vì tôi cho rằng đây là tùy chọn duy nhất sẽ chạy trên 3 hệ điều hành chính mà không có kích thước mã hoặc các giới hạn khác. Có lựa chọn nào nữa không?