Linux(Ubuntu12.04)上玩儿STC单片机(转)

操作系统:Ubuntu16.04 TLS

单片机:STC的STC89C52RC系列及 Atmel的AT89S52...

所需工具:

1.编辑器- Vim(不钟情于IDE,个人喜好,高手勿喷)

2.编译器- SDCC(sudo apt-get install sdcc安装)

3.转换程序 - hex2bin(http://sourceforge.net/projects/hex2bin/files/?source=navbar)源码安装

4.烧录程序 - gSTCISP(http://sourceforge.net/projects/gstcisp/files)源码安装

安装步骤:

1.sdcc----命令行下输入sudo apt-get install sdcc。编译led.c:

$ sdcc led.c

生成led.ihx,使用sdcc自带命令packihx led.ihx > led.hex,生成led.hex。2.Hex2bin-----百度或者Google,在SourceForge上,下载Hex2bin-1.0.10需从源码安装,

$ tar jxvf Hex2bin-1.0.10.tar.bz2,然后

$sudo make install即可。因为gSTCISP只能烧录bin格式文件,所以使用hex2bin将led.hex转换成led.bin:

$ hex2bin led.hex 生成led.bin,完成编译和文件转换之后,就差把bin文件刷入单片机了。

3.gSTCISP-----百度,下载gSTC-ISP_v1.0.tar.gz源码安装,

$ tar xvf gSTC-ISP_v1.0.tar.gz

,解压后进入gSTC-ISP_v1.0目录,源码安装一般都是./configure, make, make install , 不过安装时会提示vte.h无法找到等错误,需

$ sudo apt-get install libvte-dev

,然后复制/usr/include/vte-0.0/vte/中的与vte有关的所有文件到解压后的目录gSTC-ISP_v1.0/src/中,并将gSTC-ISP_v1.0/src/main.c中的#include <vte/vet.h>改为#include <vte.h>,然后

$ ./configure

$ make

$ make install

编译完成后,把单片机的电源关掉,把串口接上电脑,然后以管理员身份运行gSTCISP,即: $ sudo gSTCISP 运行,选择bin文件,下载程序到单片机上,如图:


SDCC 的语法格式和Keil不同,编程格式比较具体用法见附件,初学,敬请批评指正。

原文地址:https://www.cnblogs.com/jikexianfeng/p/6507699.html