• 已解决 41243 个问题
  • 已帮助 5882 位优秀工程师

上位机软件将程序下载到单片机ROM中的过程?

qidai 2017-09-06 浏览量:2669
是否芯片内部出厂时就有固件用于支持特定接口进行程序下载?自己是否可以写一个上位机软件来实现程序下载?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • http://www.360doc.com/content/16/0626/19/29864439_570941033.shtml

    一般下载到单片机的程序文件是两种,hex和bin。hex应该是包括很多信息,我理解如果自己写上位机会简单点;bin文件就比较麻烦了,就是个二进制数据流,写上位机要设置程序下载到哪个起始地址,和终止地址。

    关注这个问题,等高手解答。

    • 发布于 2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:9
  • 确切说是上位机软件是特定的,写入到单片机特定的存储区。经常下载的hex和bin文件,也都是有固定格式的。

    可以写上位机软件实现,不过要先清楚写入单片机的寄存器、堆栈、存储器结构、程序存储起始地址等等,以及你要写入的程序文件的格式。

    • 发布于2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 是的,除了一般的调试接口,单片机厂商会预留多几种程序下载方式,像串口,USB等,一般出厂时已经固化了这样的bootloader在芯片里,客户可以按照厂商的指引自行设计上位机烧写。当然,如果认为这种方式不可靠,自行设计bootloader的也有。
    • 发布于2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 的确有特定的固件提供特定的接口使用特定的协议进行程序烧写。

    咱们现在使用的cortex-m系列比较高级,已经很方便了。

    但是部分芯片对于这个接口与协议是收费的,对于开放的或者提供api的,可以自行编写上位机软件

    • 发布于2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以的。

    但是你要满足芯片接口的协议才可以,你只有按照芯片接口的协议,才可以实现通讯,不然就是白搭。

    其实网上有很多软件下载就可以用,不用自己写,写一是费时间,二是要不断测试,还不烧写有问题。

    因为这种软件都是有专门的团队在编写。

    希望对你有帮助。

    • 发布于2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 您好,是的,出厂就含有固件,单片机下载程序一般有两种方式,一种是用调试工具进行下载,另一种是用Bootloader,你可以自己设计一般通信接口的上位机,通过Bootloader对程序进行下载。

    • 发布于2017-09-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 現在的話都有啟動ROM已經固化在MPU/MCU裡面了

    所以可以根據ROM的Code和啟動設置來決定從哪裡啟動

    會先搬到RAM後才開始執行

    所以上位機要寫的話可以根據MCUMPU預留接口來做

    通常MCU會有JTAG燒錄方式,因為Flash(非對ROM燒錄)是集成在MCU裡面

    而MPU通常有EMMC和NAND FLASH外接


    • 发布于2017-09-10
    • 举报
    • 评论 0
    • 0
    • 0

  • 下载是芯片内独立运行的小模块实现写flash的功能,除非官方提供支持,否则不太好做
    • 发布于2017-11-22
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :没有NXP的,TLE4941PLUSCXAMA1 回复

  • 单片机的厂家烧了BOOTLOADER进片子里面,他们写的上位机程序能访问到这个BOOTLOADER,然后再擦写用户程序和用户数据区,以便用户程序的烧录。

    • 发布于2018-01-16
    • 举报
    • 评论 0
    • 0
    • 0

上位机软件将程序下载到单片机ROM中的过程?