找回密码
 注册
关于网站域名变更的通知
查看: 379|回复: 1
打印 上一主题 下一主题

在Linux下搭建51单片机的开发烧写环境

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-2-25 13:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
在Linux下搭建51单片机的开发烧写环境
6 n' Q" \, B0 [
! C# {% x4 F. `" O9 R

在Linux下没有像keli那样好用的IDE来开发51单片机,开发环境只能自己搭建了。

第一步:安装交叉编译工具

a) 安装SDCC

sudo apt-get install sdcc

b)测试SDCC是否可用,这是个网上找的简单的流水灯代码 test.c, 用来测试

#include "8051.h"

#define uint unsigned int

#define uchar unsigned char

uchar tab[8] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

void Delay(uint xms)

{

uint i,j;

for(i=xms;i>0;i--)

for(j=110;j>0;j--);

}

void main()

{

uchar i;

while(1)

{

for(i=0;i<8;i++)

{

P1 = tab;

Delay(100);

}

}

}12345678910111213141516171819202122232425

编译它: sdcc test.c

会生成这么多的文件:

test.lk test.map test.rel test.sym test.asm test.ihx test.lst test.mem test.rst

我们只需要其中的 test.ihx

packihx file.ihx >file.hex 转换为hex文件

接着下载hex2bin文件,网址(http://sourceforge.net/projects/hex2bin/files/latest/download)。命令:hex2bin sourcefile.hex。之后就会生成sourcefile.bin文件。

hextobin file.hex 生成bin文件

注意:为了方便以后调用hex2bin,可以将路径加入到 .bashrc文件

在~/.bashrc最后一行加上Hex2bin 所在的文件夹位置

PATH=$PATH:/home/leo/workspace/c51/Hex2bin-2.31

可以写个makefile文件,编译方便些

这是我写的makefile:

test.hex : test.c

sdcc test.c

packihx test.ihx > test.hex

hex2bin test.hex

clean:

rm -RF *.asm *.lst *.mem *.rst *.lnk *.rel *.sym *.ihx *.hex *.map

~ 1234567

第二步:安装烧写工具

a)下载stcflash:github.com/laborer/stcflash,这是个用python写的向单片机烧写bin文件的软件

b)安装环境:sudo apt-get install python-serial

c)烧写 : sudo python ./stcflash.py test.bin

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

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-4 21:54 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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