đang phát triển các AVR 8 bit, không biết phải chuyển sang đâu


8

Tôi đã sử dụng AVRS 8 bit được vài năm rồi. Gần đây, tôi cảm thấy bị giới hạn bởi tốc độ truyền dữ liệu ngoại vi và các thư viện cấp cao hơn.

Tôi đang gặp khó khăn trong việc tìm / chọn một dòng vi điều khiển mới để khám phá. Tôi đã nhìn

  • NXP - Không thể tìm thấy lập trình viên
  • Freescale - Phải đăng ký IDE
  • AVR32 - Lựa chọn chip hạn chế trên digikey

Các chip NXP trông thực sự đẹp, nhưng như với bất kỳ thứ gì không phải là PIC / AVR / Ardiuno, đường cong học tập khá dốc.

Tôi đã tự hỏi nếu có ai có thể đề xuất một dòng vi điều khiển thỏa mãn (theo thứ tự quan trọng) các yêu cầu sau

  1. Tay hàn có thể chip. (Tôi có thể làm LQFP 100)
  2. 32 bit
  3. Máy chủ Linux
  4. Toolchain miễn phí
  5. IDE tốt / miễn phí
  6. <500 $ chi phí khởi động để lập trình / gỡ lỗi / biên dịch không giới hạn
  7. Có thể hỗ trợ
  8. Hỗ trợ Ethernet / USB

Tôi sẵn sàng xem lại Freescale và NXP, nếu ai đó có thể cho tôi thấy rằng tôi đã bỏ lỡ một số thông tin về chuỗi công cụ và lập trình viên của họ. Tôi đoán bạn có thể nói rằng các máy AVR32 chính xác là những gì tôi đang tìm kiếm, nhưng tôi không hài lòng với lựa chọn chip của họ. Họ đều có số lượng pin cao hơn và cổ phiếu thấp trên digikey.

Cảm ơn.


2
Có vấn đề gì với việc đăng ký IDE của Freescale?
stevenvh

5
Nhảy qua các vòng để có đặc quyền sử dụng chip mà họ đã mua?
XtL

Vâng, họ sẽ nói rằng họ cần biết bạn là ai để cung cấp dịch vụ tốt hơn, đọc để bán công cụ của họ. Sẽ tệ hơn nếu bạn phải đăng ký chỉ để tải xuống một bảng dữ liệu (đã xảy ra với tôi một vài lần). Cuộc sống khó khăn :-)
stevenvh

Phải "đăng ký" cho những thứ trực tuyến, chắc chắn là một động thái chưa từng có. FWIW, diễn đàn của họ cũng yêu cầu đăng ký, vì vậy thật tuyệt khi được đặt cho điều đó.
Nick T

1
@stevenvh, trong trường hợp của Wavecom, không thể tìm thấy bất cứ thứ gì (datasheets, bài đăng trên diễn đàn, tài liệu, v.v.) bằng cách sử dụng công cụ tìm kiếm như mọi thứ cần đăng ký. Tải xuống phiên bản cũ của IDE cũng là một nỗi đau khi chúng đã được mua.
Peter Gibson

Câu trả lời:


4

Tôi chắc chắn sẽ giới thiệu NXP - một loạt chip tốt, các thiết bị ngoại vi tốt (UART với baudgen linh hoạt và FIFOS, SPI với FIFO, v.v.) tài liệu tuyệt vời * và các tùy chọn lập trình linh hoạt. Nhận trình gỡ lỗi JTAG / SWD (Các bộ phận Cortex sử dụng SWD - ít chân hơn JTAG và có thể thực hiện các công việc như đặt điểm dừng trong khi chạy). Tôi sử dụng phiên bản khởi động miễn phí của bàn làm việc nhúng IAR - điều này có giới hạn mã 32K, điều này rất tốt cho tôi nhưng hãy lưu ý rằng việc nâng cấp kích thước mã rất tốn kém. Rất nhiều người dường như làm tốt với GCC / winarm. Một số bộ phận Cortex (ví dụ LPC1343) có thể tải chương trình cơ sở từ thẻ nhớ USB bằng bộ tải khởi động trên bo mạch. Phần sẵn có nói chung là tốt - Tôi chưa bao giờ phải vật lộn để tìm cổ phiếu. Ngoài ra còn có rất nhiều devboards / breakout có sẵn cho các phần NXP.

  • tài liệu trong Hướng dẫn sử dụng là tốt, tuy nhiên hầu hết mọi thứ đều được đề cập chính xác một lần, vì vậy, đáng để dành thời gian để đọc toàn bộ từng phần liên quan đến từng thiết bị ngoại vi bạn sẽ sử dụng. Hướng dẫn sử dụng cho các bộ phận sau đã được cải thiện ở phần đầu của mỗi phần, chúng chỉ cho bạn một vài thứ không rõ ràng quan trọng như đồng hồ / pin cho phép ghi lại ở những nơi khác cần thiết để chạy ngoại vi đó

12

ARM, ARM, ARM.

ARM cấp phép cho bộ xử lý của họ cho nhiều công ty. Điều này có nghĩa là bạn sẽ tìm thấy các công cụ, hỗ trợ và tài liệu tốt từ nhiều nguồn.

PIC, AVR và MSP430 đều gặp phải vấn đề thuộc sở hữu hoàn toàn của một công ty.

Lưu ý với các bộ vi điều khiển ARM rằng Cortex-M3 từ NXP sẽ gần với Cortex-M3 hơn từ ST hoặc Luminary so với ARM9 hoặc ARM7TDMI từ NXP. Thường xuyên hơn không, trình biên dịch, trình gỡ lỗi và lập trình viên là phổ biến trên các lõi hơn là các nhà sản xuất.

Có được chuỗi công cụ GCC ARM của Codourcery và một dongle JTAG ARM giá rẻ sẽ giúp bạn đi một chặng đường dài.


1
ARM JTAG giá rẻ == OpenOCD
Johan

@Johan Hoặc bạn có thể dỗ ATmega hiện có thành một.
Maxthon Chan

5

Tôi sẽ đến NXP. Trong một thời gian ngắn, Cortex-M3 đã trở thành tiêu chuẩn cho bộ điều khiển ARM (Tôi giả sử rằng Freescale có nghĩa là Coldfire). Vì ARM7TDMI NXP cũng có truyền thống của một loạt các thiết bị để lựa chọn.
Đối với một lập trình viên cho NXP, IMO bất kỳ lập trình viên JTAG nào cũng nên thực hiện công việc (CMIIW).

chỉnh sửa
Tôi hiện đang đọc về mbed , có vẻ như là cách dễ nhất để bắt đầu với NXP Cortex M3 (bộ điều khiển được sử dụng là LPC1768). Bạn lập trình / biên dịch trực tuyến (vì vậy Linux không phải là vấn đề) và bạn lập trình qua USB (thiết bị xuất hiện dưới dạng thiết bị lưu trữ dung lượng lớn nơi bạn có thể sao chép chương trình đã biên dịch của mình). Không cần lập trình viên. Các chương trình được viết cho mbed nên được chuyển trực tiếp tới LPC1768 trên các bảng khác.


2

Hãy thử PIC24 và DSPIC 16 bit. Nhiều người trong số họ có sẵn trong DIL và họ cung cấp tới 40 MIPS. Phần mềm phát triển miễn phí có sẵn và trình gỡ lỗi / lập trình viên PICkit 3 khá rẻ ở mức 50 đô la. Phiên bản tiếp theo của MPLAB sẽ có hỗ trợ Linux, phiên bản beta có sẵn.


1

Tôi nghĩ rằng bạn có thể có được các công cụ tự do cho ARM. Lập trình nên được thực hiện từ bộ tải khởi động nối tiếp hoặc (mở) JTAG. Có một số chip và mô-đun STM32 và NXP mà tôi đã xem xét để lại cho tôi ấn tượng này.

Tôi cũng đã được nhắc nhở về câu hỏi này .


1

Nếu bạn thực sự muốn đi 32-bit, hãy thử PIC32. Tính sẵn sàng cao từ Microchip. Để gỡ lỗi Linux, MPLAB X đang ở phiên bản beta 4 và hỗ trợ Linux, Windows và Mac OS X. Tôi nghĩ bạn cũng sẽ cần một PICkit 3 hoặc lập trình viên tương tự với giá 50-60 đô la.

Tuy nhiên, tôi sẽ nghiêng về phía 16-bit của PICPIC và PIC24 vì chúng rẻ hơn nhiều, có thể được gỡ lỗi bằng PICkit 2 và dễ lập trình. Ngoài ra, chúng có sẵn trong các gói DIP, mặc dù điều này không quan trọng với bạn (?) Tôi hơi thiên vị đối với họ vì tôi sử dụng chúng trong dự án của mình.


Hiện tại có hơn một chục PIC32 có sẵn trong gói DIP 28 chân, điều này khiến chúng trở nên lý tưởng cho việc tạo mẫu. Ngoài ra, dòng PIC32MZ mới (chỉ có sẵn trong SMD) có tới 2 MB Flash, 512K RAM và hỗ trợ CAN / Ethernet / USB 2.0 Host.
tcrosley

1

Bộ xử lý 32 bit duy nhất hiện đang được sản xuất trong gói DIP là Parallax Propeller . (Cùng một con chip cũng có sẵn trong các gói QFP 44 chân và 44 pin QFN nhỏ hơn nhiều, tất cả đều có 32 chân I / O cho mục đích chung). Cũng có một vài công cụ phát triển cho nó chạy trên Linux .

Vì vậy, nó dễ dàng đáp ứng 2 tiêu chí đầu tiên của bạn và hầu hết (than ôi, không phải tất cả) các tiêu chí còn lại của bạn.


0

Hãy xem FEZ Domino . Nó không đáp ứng tất cả các yêu cầu của bạn nhưng cung cấp khá nhiều nếu bạn không cần kiểm soát mức thấp nhất có thể.


0

Dòng chip Cypress PSoC có sự kết hợp các tính năng mà tôi chưa thấy trong bất kỳ IC nào khác.

Chip PSoC5 bao gồm ARM Cortex M3 32 bit, nhưng theo tôi có thể nói rằng tất cả chúng đều được đóng gói trong một cái gì đó giống như TQFP100. Sê-ri PSoC1 và PSoC3 bao gồm nhiều chip đóng gói DIP, nhưng tất cả chúng đều có lõi 8 bit hoặc lõi khác.

Ngoài CPU, chip này còn có khả năng kết nối có thể lập trình được một cái gì đó giống như một đồ họa nhỏ và một vài op-amps tương tự trên chip.

http://www.psocdeveloper.com/


0

ARM của Atmel có thể phù hợp với hóa đơn, chủ yếu là

Tay hàn có thể chip. (Tôi có thể làm LQFP 100)

Chúng có trong TQFP và bạn có thể sử dụng một trong những cái nhỏ hơn ở pin 64.

32 bit

Kiểm tra

Máy chủ Linux

Tôi phát triển độc quyền trong Linux

Toolchain miễn phí

GCC ARM Toolchain, hiện dễ dàng hơn để thiết lập với các tập lệnh xây dựng như chuỗi công cụ triệu tập.

IDE tốt / miễn phí

Bạn có tôi ở đó. Có lẽ người ta có thể thiết lập nhật thực hoặc có thể kdevelop để thực hiện công việc, nhưng tôi chưa thử. Tôi sử dụng vim và kate.

<500 $ chi phí khởi động để lập trình / gỡ lỗi / biên dịch không giới hạn

Lập trình và biên dịch sẽ tiêu tốn của bạn khoảng 100 đô la, có thể, để tạo ra một bảng tối thiểu. Các chip đi kèm với bộ tải khởi động tích hợp trong ROM cho phép bạn lập trình chip. Bạn không cần một trình sửa lỗi để lập trình nó. Bạn có thể nhận được bộ tách biệt thương hiệu Atmel (và bị khóa) với giá khoảng 100 đô la. Nếu bạn có đủ khả năng thì tôi khuyên bạn không nên mua khóa mà hãy trả 200 hoặc 300 cho khóa đã mở khóa. Ngoài ra còn có các tùy chọn khác rẻ hơn nhiều mà tôi chưa thử. Các usbprog trông rất hứa hẹn.

Có thể hỗ trợ

Khá chắc chắn nó có, mặc dù bạn nên kiểm tra để chắc chắn. Tôi không sử dụng nó, vì vậy tôi không chắc nếu tất cả trong số họ có nó.

Hỗ trợ Ethernet / USB

Hỗ trợ USB là có. Hỗ trợ Ethernet cần được thêm vào bên ngoài. Rất nhiều ví dụ về nó để lựa chọn, mặc dù.


Chúng tôi có thể trên ATSAM. Ít nhất ATSAM3X8E có một cái là Arduino Duo, sử dụng con chip này, đã lộ diện.
Maxthon Chan

0

Tôi sử dụng bảng demo lpc4330-xplorer cho LPC4330 của NXP. Tôi sử dụng một chuỗi công cụ được xây dựng bằng tay, nhưng bạn có thể sử dụng Yagarto (nếu bạn không quan tâm đến FP cứng) hoặc bất kỳ trình biên dịch ARM nào thực sự, nếu bạn có thể đào sâu vào các tập lệnh liên kết. NXP có một số thiết bị ngoại vi thực sự tiện lợi như Bộ định thời trạng thái cấu hình trạng thái (bạn có thể đọc: trình tạo hàm) có khả năng thực hiện khá nhiều việc. Họ cũng có một số SGPIO tốt đẹp. Ngoài ra, họ có rất nhiều bộ tính giờ trên tàu. Nó cũng là bộ xử lý kép (chip dựa trên M4-M0). Tất nhiên, toàn bộ dòng LPC của họ là khá đẹp.

Công bằng mà nói, dòng Cypress pSOC trông cũng rất đẹp, nhưng tôi chưa có cơ hội sử dụng nó. Tất cả những người khác chắc chắn có công dụng và đối tượng của họ, nhưng tôi sử dụng môi trường phát triển Linux, không có IDE và một số công cụ dòng lệnh. Tôi chọn con đường này bởi vì khi có sự cố xảy ra và nó luôn luôn xảy ra, tôi thấy việc tìm ra vấn đề sẽ dễ dàng hơn nếu tôi không phải bóc lớp công cụ. Thêm vào đó, không có giới hạn mã. Và, mặc dù không rõ ràng lắm từ các tìm kiếm trên internet, dòng LPC được hỗ trợ khá tốt bởi nguồn mở.

Cuối cùng, LPC cung cấp một lượng mã mẫu hợp lý trong LPCOpen. Một lần nữa, công bằng mà nói, nếu bạn muốn nó biên dịch bằng các công cụ nguồn mở, thì cần một chút công sức, nhưng điều đó không khó. Họ thậm chí đã có một ví dụ máy chủ web khá đẹp trong của họ. Họ cũng có một cuốn sách nấu ăn SCT (SCT cần một chút để hiểu, nhưng một khi bạn làm, nó thực sự tốt), nhưng có thể mất một chút để làm việc thông qua các ví dụ và các ví dụ SCT trong LPCOpen thật đáng thương. Nhưng, nó cũng đáng để có được các chip NXP và chạy. Tôi thậm chí còn dành một ít thời gian với NuttX (tôi đã mệt mỏi với mã kim loại trần TẤT CẢ thời gian) và lpc4330-xplorer.

Dù sao, chúc may mắn với bất cứ điều gì bạn chọn.


0

Đây là lựa chọn của tôi:

  • Rất nhiều IO nhưng tốc độ chậm chấp nhận được? Gang lên các AVR. Tôi đã thử nói SMBus qua các dòng I2C và ít nhất là chấp nhận được.
  • Cần tốc độ? Dòng ATSAM có vẻ tốt với các gói TQFP100 và TQFP144. Chúng tôi có Arduino SAM3X8E trong Arduino Duo. ATSAM cũng có MII / RMII nhưng chip giao diện có thể là thách thức. Nếu bạn muốn dòng ATSAMA5 đọc và suy nghĩ lại, Allwinner A20 có thể đánh bại nó ở đó.
  • Thêm tốc độ, đa phương tiện, có lẽ hỗ trợ Linux? Vì tôi đến từ Trung Quốc, một nhà sản xuất bản địa đặc biệt thực sự thú vị: Allwinner. Các SoC Cortex-A7 của họ, A20 lõi kép 5 đô la và A31 lõi tứ 10 đô la, cũng như một lõi lớn tám lõi. LITTLE Cortex-A15 / 7 SoC A80 ở mức 20 đô la, tất cả đều có GPU có khả năng OpenGL và OpenCL đáng nể mặc dù trong các gói BGA, đủ tốt cho máy tính bảng Android từ trung cấp đến cao cấp, đủ tốt hơn cho Máy chủ Ubuntu toàn diện, một vài trình điều khiển GPU đốt các con số, định tuyến các gói ở tốc độ đường truyền 1Gbps hoặc lái hai 1080P hoặc một Màn hình 4K.
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.