极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18105|回复: 10

单片机控制板下载程序的原理是什么呢?

[复制链接]
发表于 2012-12-5 00:08:18 | 显示全部楼层 |阅读模式
单片机控制板下载程序的原理是什么呢?想做一个PC端的下载器,加上一些在线调试的功能唉。。

看arduino的那个IDE不顺眼。。其实是因为在电脑上运行有点问题,打开软件特别慢,而且非常容易卡住唉。所以想自己写一个。程序编译完之后通过串口向板子发送的格式是什么呢?谢谢咯~
回复

使用道具 举报

发表于 2012-12-5 07:49:59 | 显示全部楼层
我也产生过同样想法,顶一下!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-5 12:39:16 | 显示全部楼层
绿林网页 发表于 2012-12-5 07:49
我也产生过同样想法,顶一下!

谢谢~竟然还要十个字啊。。。
回复 支持 反对

使用道具 举报

发表于 2012-12-5 15:15:33 | 显示全部楼层
期待楼主开发,最好顺便搞个proteus的仿真接口,那就完美了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-5 15:26:51 | 显示全部楼层
johnleo 发表于 2012-12-5 15:15
期待楼主开发,最好顺便搞个proteus的仿真接口,那就完美了

  压力山大~
回复 支持 反对

使用道具 举报

发表于 2012-12-6 01:30:21 | 显示全部楼层
传输的应该是BIN格式吧,就是机器码。 比汇编还低一个层次(其实就是把AVRC -> ASM -> BIN 然后直接传输BINS码) 就是所谓的单片机能理解的二进制码(与汇编基本没区别,唯一的区别就是汇编代码在不同的机器平台上对应的机器码会不同,机器代码已经不能被移植到其他类型的机器了 甚至可能 同类型的控制器但是型号不同机器码也有区别了。因为基础硬件不同 比如 寄存器的数量 字长等等。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-6 02:04:48 | 显示全部楼层
darkorigin 发表于 2012-12-6 01:30
传输的应该是BIN格式吧,就是机器码。 比汇编还低一个层次(其实就是把AVRC -> ASM -> BIN 然后直接传输BIN ...

嗯,这个我明白的~然后是平时用类似C语言写的程序怎么编译成那种机器码呢?谢谢~
回复 支持 反对

使用道具 举报

发表于 2012-12-6 22:03:48 | 显示全部楼层
arduino的话是芯片里面先要刷arduino的bootloader,这样子通电以后bootloader就会开始运行,如果遇到上位机通过avrdude发送过来符合要求的程序,就把这个程序刷入指定位置。arduino下载程序是通过avrdude的~~这是个开源软件,可以研究下~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-6 23:44:43 | 显示全部楼层
弘毅 发表于 2012-12-6 22:03
arduino的话是芯片里面先要刷arduino的bootloader,这样子通电以后bootloader就会开始运行,如果遇到上位机 ...

好的!非常感谢!
回复 支持 反对

使用道具 举报

发表于 2012-12-8 23:43:47 | 显示全部楼层
芷雅焉 发表于 2012-12-6 02:04
嗯,这个我明白的~然后是平时用类似C语言写的程序怎么编译成那种机器码呢?谢谢~

按照计算机专业标准课程中的说法,是一本很厚的书(至少学1学期的) 叫做 编译原理, C会根据设置的对应硬件平台进行编译,链接 然后生成OBJ 然后在生成汇编代码, 汇编代码转换成 机器码是一一对应的 比如
JZ 指令对应的二进制代码是恒定的

编译过程需要算法的干预,个人认为 主要还是替换为主
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-9 11:47:39 | 显示全部楼层
darkorigin 发表于 2012-12-8 23:43
按照计算机专业标准课程中的说法,是一本很厚的书(至少学1学期的) 叫做 编译原理, C会根据设置的对应硬 ...

嗯,好的。感谢~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-19 21:44 , Processed in 0.075318 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表