我是靠谱客的博主 健忘香氛,最近开发中收集的这篇文章主要介绍linux开发 stc_Linux 下上手 STC89C52RC,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第一次接触单片机,自然选择了简单的51单片机。然而我的操作系统是 Linux 。在 Windows 下上手51似乎很容易。但是 Linux 上搭建 51 开发环境不是很顺。

那么谈谈 Linux 我如何搭建 STC89C52RC 的开发环境吧。

(一)

选择自己喜好的代码编辑器即可。vim , emacs , gedit 等都可以。

(二)

安装编译器。一般选择 sdcc 。一般可从发行版的包管理器中直接安装。

如Arch中:

$ sudo pacman -S sdcc

如果不行,需要自行下载编译。

简单介绍使用sdcc:

假如当前目录有一个写好的源文件 main.c 。 使用如下简单方式即可编译。

$ sdcc main.c

生成的若干个文件中 main.ihx 是一个生成的16进制可执行文件。后面便可以将其烧录到单片机中。

(三)

将生成的可执行程序烧录到单片机是需要一条下载线的。一般说来使用 USB 转串口的下载线。插上之后,在 /dev 里面有个设备叫 ttyUSB* 说明可以进行后面内容。

否则你可能需要安装 USB 转串口的驱动。

选择烧录工具。网上大部分使用的是 gSTCISP 这个工具烧录。但是在我尝试之后,总是卡在 We are trying to connect your MCU...这个地方。

起初我还以为下载线出现问题了。后来发现不是。你可以尝试。注意 gSTCISP 需要的是二进制文件,因此需要把 main.ihx 转换为二进制文件。

一个转换例子:

$ makebin < main.ihx > main.bin

你需要把文件名更改成你自己相应文件名。其他方法还有很多,自行搜索。

通过我测试的一个烧录工具 stcflash 。这是一个 python 脚本。因此你需要安装 python 环境。大部分 Linux 发行版安装了 python 。但是你需要安装一个额外的运行库 python-serial 。

$ sudo pacman -S python-serial

将下载好的 stcflash.py 放入源文件目录。接下来开始烧录。

首先关闭板子。执行

$ sudo python ./stcflash.py ./main.ihx

打开开发板即可烧录进去。成功结果如下:

Connect to /dev/ttyUSB0 at baudrate 2400Detecting target...doneFOSC:11.996MHz

Model: STC89C52RC (ver4.3C)

ROM: 8KB

Baudrate:38400Erasing target...doneSize of the binary:218Programming: ####################done

另外二进制文件使用 stcflash 也可以烧录进入。

最后

以上就是健忘香氛为你收集整理的linux开发 stc_Linux 下上手 STC89C52RC的全部内容,希望文章能够帮你解决linux开发 stc_Linux 下上手 STC89C52RC所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部