linux下开发51单片机

系统环境:linux mint 18.3 xfce 64bit(基于ubuntu16.04.01)
需要软件及环境:
(1)codeblocks
(2)SDCC编译器
(3)python-serial
(4)stcflash(https://github.com/laborer/stcflash)

前面我有博客介绍了linux下stm32开发环境的配置,链接如下:

linux配置stm32开发环境概述

在linux下开发51单片机也非常简单,以前介绍过使用codeblocks配合SDCC编译器进行开发51单片机的博文

Codeblocks配置SDCC实现51单片机定时器功能(proteus仿真)

在linux系统下也是同样基于codeblocks和SDCC,使用codeblocks可以自动生成hex文件,而不用再安装其他软件来转换格式,烧写程序到51单片机使用stcflash,使用python,需要安装serial串口模块。
关于USB转串口驱动问题 ,在linux下已经集成好了CH340和PL2302的驱动(linux mint(ubuntu16.04)是这样,其他发行版不清楚),一连接电脑在/dev/下面就会自动有/dev/ttyUSB0,表示有一个串口设备连接了电脑,在linux下的串口助手可以参考另一篇博文

Linux系统下串口调试助手putty,cutecom,xgcom

(1)codeblocks
https://apt.jenslody.de/ 这个网站里有codeblocks的deb源,其他linux发行版也是能在官网找到安装包的,具体安装就不赘述了,相信在linux玩51的已经有这些基础的了。

(2)SDCC
下载地址

http://sdcc.sourceforge.net/snap.php#Linux

下载snapshot版本,下载之后解压,解压后在share/sdcc/doc/INSTALL.txt 里有安装指导,其实就是把解压后的文件(包含bin和share两个文件夹)复制到/usr/local 目录下,正确安装后
sdcc二进制文件到: /usr/local/bin/
header files 到: /usr/local/share/sdcc/include/
non-free header files 到: /usr/local/share/sdcc/non-free/include/
library files 到: /usr/local/share/sdcc/lib/
non-free library files 到: /usr/local/share/sdcc/non-free/lib/
并且 documentation 到: /usr/local/share/sdcc/doc/

也可以运行

/usr/local/bin/sdcc -v

查看sdcc是否正确安装,正确安装执行上述代码会返回版本号

(3)stcflash
下载地址

https://github.com/laborer/stcflash

使用的时候要把stcflash.py 这个文件复制到hex文件同目录下,假设需要烧写的文件是test.hex ,那么在终端进入到test.hex 目录下,执行下面语句

python stcflash.py test.hex

以我自己的一个工程为例,需要烧写的文件为sonar.hex ,此时会有如下图所示
这里写图片描述

此时要关闭51单片机电源然后重启,就像在win系统下一样,然后会看到以下情况:
这里写图片描述
有晶振频率,芯片型号,ROM大小等信息。

关于codeblocks建立MCS51工程的教程建议参考篇首提供的链接,这里就不再叙述了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值