Yêu cầu mạch ARM tối thiểu


13

Tôi đã thực hiện một số phát triển với ATMega và tôi đang tìm cách mở rộng tầm nhìn của mình. Tôi có một vài chip dòng Cortex M4 và muốn tạo ra một ARM tương đương với Breadboarduino

Tôi dự định hoặc tự khắc bảng của mình hoặc sử dụng bảng đột phá cho ARM và phần còn lại. Một tài liệu tham khảo hoặc sơ đồ của các thành phần tối thiểu sẽ được đánh giá rất cao.

Có tài nguyên tốt nào để xác định các thành phần cần thiết tối thiểu để vận hành và chương trình lý tưởng nhất là chip ARM không?

CẬP NHẬT:

Tôi đang mở để đề xuất phần cứng thay thế. Dưới đây là con chip mà tôi hiện đang cố gắng làm việc với:


7
Bạn có thể cho chúng tôi biết bạn có thiết bị nào? Liên kết đến datasheet sẽ là tuyệt vời.
stevenvh

Tôi hy vọng đó không phải là gói WLCSP mà bạn muốn khắc PCB của riêng bạn cho: một máy đo độ cao 0,4 mm! : - /
stevenvh

@stevenvh Tôi không dũng cảm. Đó là gói LQFP 144
ZnArK

1
Kiểm tra loạt LPC NXP, họ (tất cả?) Có bộ tải khởi động nối tiếp trên tàu. lpc21isp là một công cụ máy tính tốt. LPC1114 thậm chí còn có sẵn trong DIP28! Lpc1343 có bộ tải khởi động usb (!) Buokt-in (nghe có vẻ hay, nhưng hơi cồng kềnh khi sử dụng IMO).
Wouter van Ooijen

1
@Wouter - Vâng, tôi cũng đã phát hiện ra rằng DIP (xem câu trả lời). LPC1114 là Cortex duy nhất - bất cứ nhà sản xuất nào được liệt kê trên Digikey đều có sẵn trong DIP.
stevenvh

Câu trả lời:


9

Điều này thực sự phụ thuộc vào chip bạn đang sử dụng - bạn không chỉ định loại nào bạn có. Thông thường, bạn sẽ cần ít nhất một tinh thể, tách mũ và logic thiết lập lại. Giao diện lập trình có thể là giao diện JTAG đơn giản.

Nhưng tất cả những điều này nên được nêu trong bảng dữ liệu chip.

Cập nhật (cho STM32F407):

Nhìn vào các trang sau trong bảng dữ liệu

  • 23ff. đối với các điện áp cần thiết (1,8-3,6V, vì vậy bạn cần một bộ điều chỉnh) và cách sử dụng bộ điều chỉnh bên trong (bằng cách kéo chân PDR_ON lên cao)
  • 69ff. cho sơ đồ chân
  • 69 + 74 cho sơ đồ cung cấp điện (đây là những trang thú vị nhất vì chúng hiển thị các kết nối cung cấp điện và các tụ điện cần thiết)

Bạn sẽ không cần mạch đặt lại (được tích hợp - xem trang 23) hoặc bộ tạo dao động (bộ tạo dao động 16 MHz tích hợp được chọn khi khởi động, xem trang 22). Vì vậy, sử dụng bảng đột phá LQFP144 (như bảng từ futurlec (xem dưới cùng của trang) có thể thực sự là đủ.

Bạn cũng có thể xem sơ đồ của bảng STM32F4DISCOVERY (xem hướng dẫn sử dụng , trang 33. Những gì bạn thấy có mạch cơ bản - và thậm chí nó còn chứa các tinh thể bên ngoài.


Cảm ơn vì đầu vào của bạn. Tôi đang hỏi câu hỏi này vì bảng dữ liệu rất lớn và thật lòng tôi không hiểu mọi thứ trong đó. Tôi biết giải pháp thực sự sẽ là lấy bằng EE nhưng sự nghiệp hiện tại và các trách nhiệm khác của tôi không biến điều này thành khả năng ngay bây giờ. Có dự án phần cứng mở nào có sơ đồ mạch ARM của họ không. Tôi tự tin rằng tôi có thể chọn ra điều đó và thực hiện một dự án có thể sử dụng.
ZnArK

1
Bảng demo STM được liên kết ở trên đi kèm với sơ đồ, vì vậy bạn có thể bắt đầu với điều này. Mặt khác, Olimex mở sơ đồ của họ, ví dụ cho bảng M4 này .
hli

Tôi đã không nhận ra điều đó. Cảm ơn bạn về thông tin. Rất hữu ích,
ZnArK

10

Bạn có chắc chắn muốn làm điều này cho Cortex-M4 không? Đó là một bước nhảy vọt lớn từ AVR và tôi không thấy bạn sẽ sử dụng tất cả các tính năng mà nó cung cấp như thế nào. Để bắt đầu với Cortex-M4 thường đi kèm trong một gói lớn, thường là hơn 80 chân cho các bộ phận cấp nhập cảnh và 200+ không phải là ngoại lệ, hãy nghĩ QFP hoặc BGA. Sẽ làm một bảng đột phá với hai hàng 40 chân vào bảng?

Cortex-M4 cũng được thiết kế cho tốc độ cao: 120 MHz đến 200+ MHz thông thường. OK, bạn có thể không cần thiết kế PCB cho các tốc độ đó nếu bạn sử dụng PLL trên chip. Nhưng những gì về các thiết bị ngoại vi, như USB hoặc Ethernet?

Tất nhiên bạn có thể chạy nó ở tốc độ thấp hơn và bỏ qua nhiều chức năng trên chip, nhưng tôi tự hỏi việc sử dụng Cortex-M4 để bắt đầu là gì. Tôi nghĩ rằng một Cortex-M3 hoặc thậm chí -M0 là phù hợp hơn để bắt đầu. Tôi không muốn làm bạn nản lòng, tôi muốn duy trì thực tế.

Nếu bạn làm muốn đi trước với Cortex-M4 bạn có thể làm với phần cứng bên ngoài tối thiểu. Ví dụ, NXP LPC407x có bộ tạo dao động RC bên trong, là bộ tạo dao động mặc định khi thiết lập lại, do đó bạn thậm chí không cần một tinh thể. Một mạch thiết lập lại và tách nguồn cung cấp điện phù hợp sẽ là tất cả những gì bạn cần để khởi động và chạy.

Đối với Cortex-M0, NXP LPC111x có thể đáng xem. Cấp, nó không có nhiều bộ nhớ, nhưng nó có sẵn trong gói DIL-28 , một điều hiếm thấy đối với ARM. Ngoài ra, bạn có thể sử dụng bảng phát triển như LPCXpresso ,

nhập mô tả hình ảnh ở đây

trong đó một nửa bên phải là bảng ứng dụng, có thể tách ra khỏi liên kết LPC. Như bạn có thể thấy hầu như không có phần cứng bên ngoài nào được yêu cầu cho ứng dụng. Và nếu bạn hàn một bộ tiêu đề trên đó, bạn có thể cắm nó vào bảng.


Phản hồi tuyệt vời. Tôi không khó sử dụng Cortex-M4. Tôi sẽ xem xét các mô hình M3 / M0. Tôi sẽ kiểm tra chính xác chip và gói tôi có và cập nhật câu hỏi.
ZnArK

1
Tôi đã thực hiện một bước nhảy vọt từ PIC18 đến LPC2100 (đây là vào năm 2008, đến bây giờ ARM7 đã được thay thế bởi Cortex-M3). Đó là một bước nhảy vọt lớn về hiệu suất, nhưng nó không phải là một bước nhảy vọt lớn về độ phức tạp phần cứng ở cấp độ bảng.
Nick Alexeev

1
@Nick - Tôi cũng đã sử dụng một số bộ phận LPC2000, nhưng như bạn nói chúng được thay thế bởi Cortex-M3. Cortex-M4 là một giải đấu khác.
stevenvh

8

Như Steven nói rằng đó là một bước nhảy vọt lớn đối với ARM từ micro 8 bit, vì vậy hãy mong đợi một chút thời gian học tập / công bằng trên đường đi.
Tôi cũng sẽ không dùng M4 cho ARM đầu tiên của bạn, đơn giản vì nó đã không ra mắt quá lâu và có ít hỗ trợ / thông tin hơn cho nó. Tôi nghĩ rằng một chiếc M3 hoặc M0 là một lựa chọn tốt hơn và sẽ có nhiều thứ để sử dụng.

Bạn chắc chắn có thể làm bảng của riêng mình, nhưng có lẽ tốt hơn là lấy bảng dev nhỏ / rẻ trước. Phát triển khôn ngoan, có rất nhiều tùy chọn, từ miễn phí (nhật thực + GCC + OpenOCD) đến đắt tiền (Keil, Rowley, v.v.) Cá nhân tôi sử dụng IDE Raisonance Ride7 và các công cụ với dòng ARM M3 / M4s STM32, rẻ hơn một chút hơn Keil / Rowely nhưng đủ tốt.

Hãy xem một trong những bảng dev đơn giản từ một người nào đó như ST, Olimex, v.v. Bảng dev này có sơ đồ đơn giản nhất tôi có thể tìm thấy, cho một STM32 Cortex-M3.

nhập mô tả hình ảnh ở đây


Đề nghị tuyệt vời. Tôi có một bảng dev trên đường (Stellaris Launchpad) Tôi dự định làm quen với điều đó trước khi làm bảng của riêng mình. Tôi cũng cập nhật bài viết của tôi với thông tin phần cứng.
ZnArK

Lưu ý rằng bảng có giá khoảng 3 lần so với sản phẩm của ST.
Chris Stratton

Bảng khởi động mới nhất của @ChrisStratton TI đã có sẵn với giá 5 đô la được vận chuyển . Nó vẫn có thể có sẵn. Giá khó đánh bại.
ZnArK

@ChrisStratton - vâng, tôi đã thêm nó cho sơ đồ chứ không phải giá cả (thậm chí không kiểm tra). Tôi có một trong những bảng STM32F4 khám phá, chúng thực sự rất rẻ nhưng tôi nghĩ nó có thể gây nhầm lẫn một chút với tất cả những thứ bổ sung trên đó và lập trình viên STLink trên tàu không có kết nối JTAG "tiêu chuẩn". Tuy nhiên, với mức giá dưới 10 đô la (hoặc bất cứ thứ gì hiện tại), có lẽ cũng đáng để nắm lấy một trong số này (có thể phiên bản M3 tốt hơn như đã đề cập)
Oli Glaser

Đối với các dự án nhúng đơn giản, tôi thấy SWD 4 chân thuận tiện hơn nhiều so với jtag. Ở dạng ban đầu của nhà cung cấp, có thể không phải là nhà cung cấp, nhưng có những giải pháp mở để nói chuyện với các bộ điều hợp ngay bây giờ.
Chris Stratton

5

Các Arduino Do nên sớm ổn định:

adruino do

Chip là SAM3X8 Cortex-M3 của Atmel. Có thể đáng để chờ đợi nếu bạn đã quen thuộc với các bảng kiểu Arduino và tài liệu về phong cách Atmel. Và vì nó sẽ là nguồn mở để đáp ứng các yêu cầu của Arduino, nên dĩ nhiên bạn có thể sử dụng Breadboard-duino.


Đề nghị tuyệt vời. Tôi biết điều này sẽ được đưa ra nhưng không nghĩ đến việc sử dụng mô hình aa này. Đề nghị tuyệt vời.
ZnArK

4

Tôi khuyên bạn nên kiểm tra Mbed một thiết bị cortex-m3 với một vài thiết bị ngoại vi đẹp, nxp cung cấp trình biên dịch và rất nhiều thư viện và thư viện cộng đồng, một cách thực sự dễ dàng để lập trình và gói đã được sử dụng trên bảng. Tôi nghĩ đó là cách dễ nhất để chuyển từ AVR sang ARM.


2

Nhiều bộ phận ST có thể, ít nhất là nếu không sử dụng bộ thu phát USB, chạy khỏi bộ dao động tốc độ cao bên trong của chúng.

Điều đó về cơ bản có nghĩa là "mạch" của bạn bao gồm các nắp bỏ qua và một vài điện trở trên những thứ như thiết lập lại và như chấm dứt trên giao diện SWD.

Các bảng đánh giá 8-10 đô la của ST sẽ lập trình các bộ phận bạn đặt trên bảng của mình qua xe buýt SWD; cũng có các công cụ nguồn mở cho chúng, vì vậy bạn có thể đặt thao tác lập trình ngay trong Makefile của mình.

Tìm kiếm thứ gì đó trong 48 PQFP có thể sẽ giúp cuộc sống dễ dàng hơn trong lần thử đầu tiên của bạn. Bạn có thể lắp ráp những cái này mà không cần phóng đại (chỉ cần có sẵn bím tóc tốt để sửa cầu hoặc hai cái mà bạn có thể sẽ tạo ra mỗi bên), nhưng có một cái loa có sẵn để kiểm tra công việc của bạn sẽ hữu ích.


1
$ 8-10 sẽ không phải là Cortex-M4, tôi đoán vậy. Bạn có thể chỉ định những phần bạn đang nghĩ đến? Còn đối với gói QFP-48? TIA
stevenvh

1
Cortex M3 ... họ có xu hướng tạo từng phiên bản trong một số gói, trong đó QFP-48 sẽ dễ dàng nhất để làm việc bằng tay.
Chris Stratton
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.