ubuntu 51单片机环境搭建方法
首先下载个sdcc
1: sudo apt-get install sdcc
2: sudo apt-get install libvte-dev
3: 安装 gSTC-ISP
下载地址:http://sourceforge.net/projects/gstcisp/files/
gSTC-ISP 安装方法
1:解压 tar -zxvf gSTC-ISP_v1.0.tar.gz
2: 进入目录 gSTC-ISP
3:运行 ./configure
4: 进入到src目录下,打开 makefile 把CFLAGS = -g -O2修改为CFLAGS = -g -O2 -I/usr/include/vte-0.0/
5:编译安装 :make; make install
6:运行 可用命令 gSTCISP
4:选择 /dev/ttyUSB0 (or 1) , 和 4800 bauds
5:然后就是下载了
今天晚上我继续Google关于在Debian Ubuntu 下安装89c51(下面简称“51”)开发环境。
查了很久,发现有两个方法配置环境:
1. 编译器 as31 + 模拟器 emu8051 + 反编译 dis51 + 程序写入 cycfx2prog
这些工具都是来自不同“牛人”的手中,当然,全都是外国人干的。这样的软件组合,自感有点山寨,不过,如果再有“牛人”把这个东西做成IDE,卡卡,那可特别壮观了。
安装非常简单(多亏debian ubuntu 强劲仓库):
$ sudo apt-get install as31 emu8051 dis51 cycfx2prog
呵呵,记得毛先生曾经教育我们“喝水不忘挖井人”,我们看看这些工具的开发者:
a.编译器 as31:Paul Stoffrege大师的设计,点击这里查看;
b.模拟器 emu8051:一名美国大学教授写的,点击这里查看;
c.反编译 dis51:一个单片机爱好者,点击这里查看;
大家慢慢参看了……(可能要FQ)
2.还有一种方法,就是使用SDCC,之前也提到的:
$ sudo apt-get install gputils gputils-common gputils-doc sdcc sdcc-doc sdcc-libraries sdcc-ucsim
$ sudo apt-get install sdcc-nf //这里它会自动依赖库,自动卸载开放的SDCC,安装SDSS-NF
这里有个文章,点击这里下载查看。
开发小组官方网站
SDCC (小型设备C编译器)是为8位微控制器开发的免费C编译器。尽管兼容多种不同体系结构,但SDCC C编译器更适合8051内核。
SDCC是命令行固件开发工具,含预处理器、编译器、汇编器、链接器和优化器。安装文件中还捆绑了SDCDB,类似于gdb (GNU 调试器)的源码级调试器。无错的程序采用SDCC编译、链接后,生成一个Intel十六进制格式的加载模块。
SDCC主要由以下各部分组成:
sdcc – 编译器
sdcpp – c 预处理器
asx8051 – 8051汇编器
aslink.exe - 8051连接器
sdcclib.exe - 库产生器
makebin.exe - 产生二进制代码器
packihx – Intel hex转换器
当对SDCC工程进行编译,汇编以及连接源文件,输出文件如下所示:
*.asm – 由编译器产生的汇编源文件。
*.lst – 由汇编器产生的汇编列表文件。
*.rst – 由连接器产生的汇编列表文件,里面含有连接信息记录。
*.sym – 源文件的符号列表,由汇编器产生。
*.rel 或 *.o – 由汇编器产生的目标文件,供连接器来使用。
*.map – 读入模块的内存映射表,由连接器产生。
*.mem – 记录存储器使用的摘要。
*.ihx – intel hex格式的文件(可以使用--out-fmts19选项来选择Motorola S19输出格式)。
*.adb – 一个包含调试信息的中间文件,产生.cdb文件必须依赖这些中间文件来实现(使用--debug选项)。
*.cdb – 一个可选的包含调试信息的调试文件,在链接时使用选项--debug就会产生这个文件。
* – 一个可选的包含调试信息的AOMF或者AOMF51文件(由选项--debug产生)。整个目标模块格式是OMF51格式的子格式并且一般被第三方工具使用(调试器,模拟器)。
*.dump* -- 打印文件调试编译器本身(选项为 –dumpall)
转载:http://www.whatled.com/post-1023.html
ubuntu 51单片机环境搭建方法的更多相关文章
- Ubuntu Desktop开发生产环境搭建
Ubuntu Desktop开发生产环境搭建 1 开发生产环境搭建 在本节内容开始前,先定义一下使用场合,没有哪种系统或者设备是万能的,都有它的优点和缺点,能够在具体的使用场景,根据自身的需求来取 ...
- HHvm建站环境搭建方法:Nginx,Mariadb,hhvm及lnmp/lamp安装部署
HHVM起源于Facebook公司,是一个开源的PHP虚拟机,使用JIT的编译方式以及其他技术,让PHP代码的执行性能大幅提升.HHVM提升PHP性能的途径,采用的方式就是替代Zend引擎来生成和执行 ...
- Ubuntu中Hadoop环境搭建
Ubuntu中Hadoop环境搭建 JDK安装 方法一:通过命令行直接安装(不建议) 有两种java可以安装oracle-java8-installer以及openjdk (1)安装oracle-ja ...
- HHvm Apache 2.4 Nginx建站环境搭建方法安装运行WordPress博客
HHvm Apache 2.4 Nginx建站环境搭建方法安装运行WordPress博客 VPS主机 2014年06月02日 17:20 评论» 文章目录 Debian上安装 Ce ...
- ubuntu java开发环境搭建(jdk+tomcat+eclipse)
一.jdk的安装配置. 1.下载jdk. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-213 ...
- ubuntu上lamp环境搭建
首先,介绍个彻底删除linux已经安装的软件的方法. sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5. ...
- Ubuntu下qemu环境搭建vexpress开发平台
在查找资料过程中,发现自己搭建虚拟的arm环境的话,有一个比较好的软件就是qemu了,当然还有其他的,大家各投所好就好. 接下来说一下qemu环境搭建过程. 其实搭建很简单,作为小白,我还是捣鼓了两三 ...
- Docker+STF在ubuntu下测试环境搭建(详细搭建步骤及踩坑记录)
一.什么是OpenSTF? STF又称OpenSTF,它是一个手机设备管理平台,可以对手机进行远程管理.调试.远程手机桌面监控等操作.这个系统类似于目前很流行的云测服务比如Testin,虽然网页上提供 ...
- Ubuntu下qemu环境搭建
在查找资料过程中,发现自己搭建虚拟的arm环境的话,有一个比较好的软件就是qemu了,当然还有其他的,大家各投所好就好. 接下来说一下qemu环境搭建过程. 其实搭建很简单,作为小白,我还是捣鼓了两三 ...
随机推荐
- POJ 1755 Triathlon 半平面交
看的这里:http://blog.csdn.net/non_cease/article/details/7820361 题意:铁人三项比赛,给出n个人进行每一项的速度vi, ui, wi; 对每个人 ...
- GLFW_KEY_KP_ADD和GLFW_KEY_KP_SUBTRACT
这两个键的代码分别为: GLFW_KEY_KP_ADD(334) GLFW_KEY_KP_SUBTRACT(333) 对应的是键盘右侧数字面板上的+ -键.
- Chrome中的哪些端口是限制使用的?
The following is a list of all of the restricted ports on Chrome: 1, // tcpmux 7, // echo 9, // di ...
- 【Python】使用torrentParser1.03对多文件torrent的分析结果
Your environment has been set up for using Node.js 8.5.0 (x64) and npm. C:\Users\horn1>cd C:\User ...
- oracle v$sqlarea 分析SQL语句使用资源情况 确认是否绑定变量
-如何确定系统中是否存在绑定变量的情况:首先创建一个表,用于存放整理过得数据:create table t1 as select sql_text from v$sqlarea;----V$SQLAR ...
- EDA: Event-Driven Architecture事件驱动架构
EDA: Event-Driven Architecture事件驱动架构 2009-09-24 17:28 5 赞 异步编程 软件架构 EDA事件驱动 SOA的核心 ...
- 谷哥的小弟学前端(10)——JavaScript基础知识(1)
探索Android软键盘的疑难杂症 深入探讨Android异步精髓Handler 具体解释Android主流框架不可或缺的基石 站在源代码的肩膀上全解Scroller工作机制 Android多分辨率适 ...
- CSS 之 div中文字超出时自动换行
在开发中很容易遇到div中文字超出的问题,在此总结以下方法: 1. white-space :属性设置如何处理元素内的空白.这个属性声明建立布局过程中如何处理元素中的空白符.所有浏览器都支 ...
- C++ 第十课:标准c时间与日期函数
asctime() 时间文本格式 clock() 返回自程序开始运行所经过的时间 ctime() 返回特定格式时间 difftime() 两时刻的间隔 gmtime() 返回指向当前格林威治时间的指针 ...
- linux2.6.30.4内核移植(4)——完善串口驱动
在内核里支持两个串口,也就是芯片的UART0和UART1,而UART2的驱动是针对红外接口的,而不是串口驱动,这里将其修改为串口驱动. 一.修改内核源码arch/arm/mach-s3c2440/ma ...