linux下51单片机开发解决方案

上篇:

  最近从学长那里淘到了一套单片机开发板,他给我的开发工具,驱动等都是 windwos 下的,而我一直用的是 linux……花了一个周末的时间,终于找到了一个合适的解决方案。

  首先,我问了一下狗狗哥,发现 linux 下 开发51单片机的资料并不多,倒是 arm 和 avr 的支持很完善,但还是零星有点资料的。我用的是 STC89C52RC,大部分说的是使用 sdcc 编译, gSTC-ISP 烧写程序,hextobin 转换格式(软件自己问狗狗哥)。这几个包大多需要自己编译,有的已经停止开发了……于是我耐着性子,中间遇到几个问题(比如需要GTK+2.0(libgtk2.0-dev),没有 vte/vte.h 文件(libvte-dev, #include<vte-0.0/vte/vte.h>) ,hextobin 界面不显示(mono --runtime=v4.0 /usr/local/lib/hextobin/HexToBin.exe)……),千辛万苦终于编译下来了,可是发现烧不进去程序,sdcc 也不会用……这对于一个新手实在是有点难,我也没有太多时间去折腾这些软件。

  还有人说使用 as31,emu8051,dis51,cycfx2prog,这些工具使用 apt-get 都可以轻松获得,但是关于使用,资料更是少的可怜!

  装双系统?对于我这种有'轻微强迫症'的人来说不太现实;使用 wine?一想到它的臃肿,不稳定,就把它否定了;换成 windows?不行……

中篇:

最后我想到了 virtualbox,能不能共享串口设备呢?不问不知道,一问吓一跳!果然可以!具体有一下两步:

1.安装 Extersion Packages

  到官网 http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack 下载 Oracle_VM_VirtualBox_Extension_Pack-4.1.12-77245.vbox-extpack,注意选对自己的版本。到 File --> Preferences --> Extensions 安装上这个包。

2.添加 USB 设备

  我使用的是 USB 转串口的,所以到 Settings --> USB,添加对应的 USB 设备(USB2.0-ser![0254]),启动 windows ,装个驱动精灵,把相应的 USB 转串口的驱动装上,发现可以把程序烧进去!太棒了!

下篇:

  也许这并不是最完美的解决方案,但起码能专心研究一下单片机了,完全用的是 win 下的工具。真心希望大牛们能写一份 linux 下的解决方案,从工具的使用到第一个‘hello world’ 程序的实现,这方面的资料实在太少了!

  最后一点小结吧,linux 的发展需要分享,网络,社区……对于新手,千万不要走小众的路线(比如版本选择,工具选择),希望通过写博客,能多帮助一些人。

posted @ 2012-06-17 20:59  xiangzi888  阅读(9912)  评论(2编辑  收藏  举报