怎么把c语言程序烧进单片机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么把c语言程序烧进单片机相关的知识,希望对你有一定的参考价值。

1、把C语言编译为编程器支持的语言格式,比如常用的bin,或hex等格式。
2、如果是可在线编程的,可以用ISP直接进行烧录。
3、如果不是可在线编程的,将单片机芯片,放入编程器,然后烧录。
注意:编译和烧录时,都要选择和单片机芯片一致的型号,否则会出错。如果找不到对应的型号,说明不支持该型号的单片机。追问

用stc-isp烧录不了?大虾,指点一下,我是新手

追答

买的时候一般带有光盘或提供下载资料,用光盘或资料内的安装程序,把程序安装好,连接后会自动识别ISP,然后就可以编译烧录了。
你烧录不了,是什么现象?

追问

现在我要自己弄个最小系统还要带扩展模块,具体的要弄那些东西啊,能不能给我写个最简单的流水灯程序啊?

参考技术A C语言源程序----->C编译器----->汇编代码----->汇编器----->机器代码
所谓的单片机C语言的意思是拿C语言来编写单片机程序,没有什么C语言控制单片机这回说法。具体过程是:C语言源程序通过特定的C编译器编译为针对某种单片机的汇编代码,再由汇编器将汇编代码汇编为单片机可执行的机器代码,然后下载到单片机的存储器运行。当前一般的集成开发环境(如Keil C)可以一次搞定生成机器代码。
需要补充一点的是,单片机也是一种计算机,不要以为只有在PC机上才可以用C语言编程,C语言可以用作为任何计算机的编程语言,当然包括单片机,但有一个条件就是,你必需要有针对某种架构的计算机的C编译器。目前来讲,C语言的编译器种类非常多,有用于各种单片机以及微处理器架构的编译器版本,所以可以用C来做为单片机的编程语言。不同的是,你用TC或者VC编译得到的是X86(如Intel,AMD)的目标代码,只能在PC机上运行,而如果用单片机C编译器(比如Keil C)编译的代码是单片机代码,只能在特定的单片机上运行。目前C/C++是最流行的单片机/微处理器编程语言
参考技术B 你用的是AT89S52这类的单片机和AVR单片机的话,那把程序编译后生成的.hex文件通过 PROGISP这个软件烧录进单片机里(ISP下载),关键是在用这个软件时要有驱动,并且要选对好目标芯片追问

需要什么驱动?

追答

如果你的ISP下载器是用ATmega8 来做的话,那就需要那个下载器的驱动,一般你买下载器的时候卖家都会配送驱动文件的

参考技术C 用Keil编译成功生成hex文件后 利用下载器连接到单片机下载口 下载进去 参考技术D 烧录机

用Keil C51编写单片机程序,怎么看程序多少行

怎么看程序写了多少行? 把程序烧到单片机中,怎么看程序占了多大的ROM? 谢谢
我的Edit 下面没有configuration 怎么办 谢谢你们在帮我看看吧

1.怎么看程序写了多少行:点击Edit-configuration...,选择Editor标签,在该标签的左下角,选中Show Line Number,这样在编辑界面就会有行数了.若果你想看汇编有多少行,只需要反汇编一下.
2.怎么看程序占了多大的内存:程序编译成功后,在编译器界面下方的build窗口中,会给出程序占用的存储大小,比如:Program Size: data=13.0 xdata=0 code=298 ,说明ROM被占用了298字节.也可以查看你工程文件夹下的.map文件,在该文件的最后给出了ROM和RAM的详细使用情况,比如:
=====================================================================

Total RO Size (Code + RO Data) 6320 ( 6.17kB)
Total RW Size (RW Data + ZI Data) 1328 ( 1.30kB)
Total ROM Size (Code + RO Data + RW Data) 6388 ( 6.24kB)

=====================================================================

补充:⊙﹏⊙,你用的那个版本的keil c51,我的keil 3,keil 4在菜单Edit都有configuration...选项.你现在用的至少也得是keil 3吧!
参考技术A 看程序多少行:你用的软件的VIEW里面应该能把行数显示调出来吧,不行的话复制到别的edit软件,看行数就OK了。
看ROM?烧进去之前,你要生成一个.hex 文件吧,应该,看这个.hex文件大小。
参考技术B 拷之前看就OK啊,都拷进去了,要看比较麻烦的

以上是关于怎么把c语言程序烧进单片机的主要内容,如果未能解决你的问题,请参考以下文章

keil怎样把C语言转换成单片机汇编语言

keil51中怎么用C语言编程把处理得到的数据存到数据存储器中,掉电不会消失

怎么样把hex转化成C语言形式?

哪位高手帮我把汇编语言程序转换成c语言程序啊?(对了是51单片机程序)

单片机怎样把8位的数据写入74HC595寄存器里(c语言)

怎样把plc程序改成单片机程序