Thông báo

Collapse
No announcement yet.

Help vấn đề về Sram STM32F10x

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Help vấn đề về Sram STM32F10x

    Chào các bạn

    Hiện tại mình đang phát triển ứng dụng cortex m3 STM32F10x nhưng đang gặp phải vấn đề là code mình quá lớn khi build thì Keil báo vượt quá giới hạn Ram, max là
    64KBytes
    Các bạn cho mình hỏi có cách nào để giải quyết vấn đề này không ? Mình nghe nói có thể run code trên external sram hoặc là map external sram thành internal sram
    Không biết bạn nào có gặp trường hợp này chưa ? Có cách nào giải quyết vấn đề này không ?

    Cám ơn các bạn trước

  • #2
    Chào bạn
    program được lưu trên flash chứ k phải RAM và STM32F1 chỉ có 20 KB SRAM.

    Mình cũng k rành lắm về vấn đề này nhưng cơ bản là có thể. Tuy nhiên có một số điều cần dc cân nhắc. Các external flash ( NAND, NOR,...) truyền dữ liệu dạng serial nên nó sẽ ánh hưởng đến tốc độ đọc và thi hành. Trên STM32 có bus riêng dành cho flash và SRAM. Với lại bạn phải chỉnh sửa lại bootloader vì thông thường sau mấy giây khi khởi động nó sẽ nhảy đến phần program của người dùng trên flash, bạn phải modify nó để nó nhảy đến phần program trên bộ nhớ ngoài.

    Có 2 cách mà mình nghĩ là tốt nhất:
    #1 check con ARM của bạn, STM32F10 hình như có 2 variants, 64 KB hoặc 128 KB flash. Nếu bạn hên thì chúc mừng !
    #2 nếu bạn xui thì hãy tối ưu hoá lại code của mình.

    Comment


    • #3
      tối ưu hóa code là giải pháp tương đối dễ thực hiện ( so với việc phải chọn lại mcu khác )
      Thớt kêu hết SRAM thì có lẽ tại bạn khai quá nhiều biến (mảng ) chăng?

      Comment

      Về tác giả

      Collapse

      binhngt Tìm hiểu thêm về binhngt

      Bài viết mới nhất

      Collapse

      Đang tải...
      X