1.概述

操作系统作为计算机系统的掌上明珠,一直是我们国家极力想要掌握的核心技术之一。随着这几年国际关系动荡,地缘政治风云突变的缘故,开发和应用国产操作系统热情空前高涨。尤其基于 Linux 的国产操作系统百花怒放,方兴未艾。执其牛耳者非武汉深之度公司开发的 deepin 莫属 。虽已习惯 windows 下开发 51 单片机,初次尝试 Linux 下开发,便耳目一新,体验非凡,个中原由不一而足。

鉴于此,本文详细讲解如何在国产 Linux 操作系统 deepin 下搭建 51 单片机开发环境。

软硬件需求:

  • 51 单片机开发板(选配)

  • 安装好 deepin 的笔记本或台式机

  • 串口转 USB 驱动 CH341

  • 51 内核编译器 sdcc

  • 程序下载工具 stcgal

  • 代码编辑器 visual studio code

    2. 51 单片机开发板

小编使用的 51 单片机开发板为 nebula-Pi,主单片机型号为 STC89C52RC,并且搭载了 CH340C 串口转 USB 芯片,通过该串口实现程序的下载。

3.操作系统 deepin 安装

官方网站下载,操作系统 u 盘制作工具及源码镜像,具体安装请自行研究,不是本文的介绍重点。

操作系统界面如下,非常简洁,类似 windows 操作系统,上手非常简单。

4.串口转 USB 驱动 CH341 安装

操作系统自带 CH341 驱动,无需安装,51 开发板插入能自动识别。将 51 单片机开发板连接至 PC,在命令行终端输入下列代码查看串口:

dmesg | grep tty

如下图所示,表明串口识别成功!

5.程序下载工具 stcgal 安装

无需安装,visual studio code 插件自带。

6.内核编译器 sdcc 安装

无需安装,visual studio code 插件自带。

7.代码编辑器 visual studio code 安装

deepin 应用商店搜索 visual studio code,一键安装,方便快捷。

安装完成启动软件,按下图所示搜索,并安装 platformIO IDE 插件:

按下图所示,搜索嵌入式平台 Intel MCS-51 ,并点击进入 install。

到这里,代码编辑环境准备就绪了。

8.新建工程

step1: 新建项目流程如下所示:


step2: 设置项目名称,选用 Generic STC89C52RC 平台。


step3: 编辑代码
step3.1添加符合 sdcc 编译器要求的头文件,需要打开工程目录将头文件添加至 include 文件夹下,头文件下载链接如下:

https://pan.baidu.com/s/1wSZKHhlElO6w2nwQIMfXuQ 密码: in94

step3.2 src 文件夹下添加.c 格式文件如下图 2,3 所示,并编辑代码如下:

#include"8051.h"
#define LED0 P1_0void main()
{LED0 = 0;//点亮 LED0
}

step3.3 指定下载串口,打开 platformio.ini 文件,添加如下代码,如下图 5 所示:

upload_port = /dev/ttyUSB0

注意: 代码中的串口号就是安装 USB 串口驱动时的串口号,正常情况下,在下载时软件会自动寻找并打开串口,但有时打开不正确,造成下载不成功,因此,我们在这里指定好固定的串口。

具体流程如下图所示,其中,6,7 所示为编译下载按钮。


step4 按上图的 6 编译按钮开始编译,结果如下:

step5 按上图 7下载按钮,并给开发板上电,下载过程如下图所示。

到这里便完成了 51 单片机的开发环境的搭建,并完成了一个小的试验项目。

注意事项: 如果下载过程中提示串口 permission denied,表明当前用户权限不够,终端输入代码更改权限即可:

sudo chmod 777 /dev/ttyUSB0

9.其他重要事项

大家是否注意到我们在新建工程的step2: 选用 Generic STC89C52RC 平台,如果我们板子的平台不在可选之列怎么办?例如单片机 STC12C5A60S2。此时,我们需要自行建立板子平台模版,具体操作方法请参考: RY-Teach STC12C5A60S2 Mac 环境搭建 。

10.总结

本文详细介绍了 基于 visual studio + platformIO + stcgal + sdcc 的 51 单片机开发环境搭建。

Linux操作系统搭建51单片机开发环境(国产桌面操作系统deepin)相关推荐

  1. 零基础 Ubuntu 20.04.01 下搭建51单片机开发环境[开源编译器SDCC]

    原创首发于CSDN,转载请注明出处,谢谢! 文章目录 为何会在Linux下开发单片机 个人系统环境与所用开发板 安装开源编译器 sdcc STC MCU ISP 闪存工具 stcgal 的安装 单片机 ...

  2. 51单片机支持python么_macOS搭建51单片机开发环境

    1.概述 鉴于好多朋友平常工作电脑为苹果,再配一台 Windows 机器来开发 51 单片机,略显多余.为此,本文详细讲解在 macOS 搭建 51 单片机开发环境. 软硬件需求:macOS 笔记本或 ...

  3. vscode+platformio IDE+sdcc搭建51单片机开发环境(win764)

    vscode+platformio IDE+sdcc搭建51单片机开发环境,使用的单片机是STC89C52RC,最终我们使用单片机引脚的pwm输出实现两颗led拖尾交替输出,模拟警车上的灯的一个效果. ...

  4. 基于Mac OS系统搭建51单片机开发环境

    基于Mac OS系统搭建51单片机开发环境 Reason 本人是杭电计科学生,参加的智能小车队伍平时需要大量基于单片机的操作,目前使用的是MBP(冤种mac),网上大多又是基于Windows系统等开发 ...

  5. linux 下51单片机开发环境搭建

    linux 下51单片机开发环境搭建(arch linux) 编译sdcc 软件: sdcc 命令:sdcc file.c 得到一堆文件需要( .inx) 命令: packihx file.inx & ...

  6. linux 8051 编译,[编译] 3、在Linux下搭建51单片机的开发烧写环境(makefile版)

    星期二, 10. 七月 2018 01:01上午 - beautifulzzzz 一.SDCC(Small Device C Compiler)编译环境搭建 SDCC是一个小型设备的C语言编译器,该编 ...

  7. linux中板子烧写环境配置,3、在Linux下搭建51单片机的开发烧写环境(makefile版)...

    星期二, 10. 七月 2018 01:01上午 - beautifulzzzz 一.SDCC(Small Device C Compiler)编译环境搭建 SDCC是一个小型设备的C语言编译器,该编 ...

  8. 51单片机开发系列一-51单片机开发环境搭建以及入门汇编代码

    51单片机开发系列一 51单片机开发环境搭建以及入门汇编代码 象棋小子    1048272975 1. 51单片机概述 51单片机是对所有兼容Intel 8031指令系统的单片机的统称.目前教科书基 ...

  9. Linux 下搭建 Java Web 开发环境

    Linux 下搭建 Java Web 开发环境 我的小站.Github Java Web,是用Java技术来解决相关web互联网领域的技术栈,下方为 Linux 下搭建 Java Web 开发环境教程 ...

最新文章

  1. 中国AI已进入迷茫阶段!从技术到科学,AI该何去何从?
  2. java 中线程的创建方式
  3. 《ASP.NET4 从入门到精通》学习笔记4
  4. 只开窗不镀锡_平开窗选购时有哪些误区
  5. 打开eclipse出现an error has occurred.see the loh file
  6. 问题:二进制数中1的个数。
  7. hdu 1500 Chopsticks
  8. c++类指针赋值表达式必须是可修改的左值_C++学习刷题8--复制构造函数和赋值运算符重载函数...
  9. java中方法的_Java中的常用方法
  10. Android升级WebView浏览器内核版本
  11. 折腾黑苹果的正确潜入姿势(系统版本:macOS Catalina 10.15)
  12. matlab求取状态方程的传递函数并实现系统解耦
  13. 计算机储存单元中的储存的内容是什么,什么是存储单元的地址?什么是存储单元的内容?...
  14. 博通网卡管理软件Linux,博通网卡管理软件
  15. 外链建设的22种方法
  16. Java后端防止频繁请求、重复提交
  17. 小程序支付“”商户号该产品权限未开通,请前往商户平台产品中心检查后重试“”解决方案
  18. Qt学习之解决linux下qt构建出现cannot find -lGL的问题
  19. 串ababaaababaa的next和串ababaabab的nextval
  20. 使用WT工具恢复MongoDB数据

热门文章

  1. 中国中药提取物市场深度研究分析报告
  2. 初学者入门:软件测试从零开始
  3. ubuntu16.04安装intel集显驱动过程问题总结
  4. 王者荣耀 让好友看到的括号中不显示默认备注
  5. SQL Server 2008+ 性能调优
  6. 统计找出一千万以内,一共有多少质数?(优化过程,效率更快)
  7. 电机学——磁感应强度和磁场强度区别
  8. 275、从零开始教你配置H3C路由器
  9. python中result函数用法_python中函数的参数和返回值
  10. 在线ps html源码,PSD to HTML5 - 专业前端切图(PSDoHTML.com)