SDCC和Keil之stc89c52资料(纪念51单片机40周年)
使用Linux环境进行单片机教学已经3年了,反馈一般,部分学生给出差评,也在情理之中。
为何选择SDCC,一开始就明确说明了,不是keil不好,但是很贵啊,课程尊重知识产权,不鼓励x行为。
关于代码差异,搜索sdcc keil就能知道。但是目前没有学生发现可以自动转代码工具,在此分享一下。
github.com/ywaby/keil2sdcc
特征
- 将keil c51 转换为 sdcc
安装
git clone git@github.com:ywaby/keil2sdcc.git python3 setup.py install
需要Python 3.7+
用法
使用import
import keil2sdcc keil2sdcc.c51_2_sdcc(keil_file)
无需安装即可直接使用
python3 -m keil2sdcc ./test/reg51.h ./test/test.c
命令行方式使用
usage: keil2sdcc [-h] [-v] [-e ENCODE] [-r] [-j n] [files [files ...]]convert keil c51 to sdccpositional arguments:files keil srcs to convert;supprot globoptional arguments:-h, --help show this help message and exit-v, --version print version-e ENCODE, --encode ENCODEassign keil src encode-r, --replace replace keil src with sdcc src-j n, --jobs n number of parallel jobs; match CPU count if value is 0
例如:
keil2sdcc keil_c51.c # generate keil_c51.sdcc.c at src path keil2sdcc keil_c51.c --replace # replace keil src python3 -m keil2sdcc ./test/reg51.h ./test/test.c # header file is need before c
更多使用参考链接。
下面引用一些供参考:
但是stc89系列轻量级固件库的出现还是非常惊喜的。
- github.com/MCU-ZHISHAN-IoT/HML_FwLib_STC89
- github.com/MCU-ZHISHAN-IoT/HML_FwLib_8051
SDCC和Keil之stc89c52资料(纪念51单片机40周年)相关推荐
- 【STC89C52】学习51单片机的必备电子电路知识基础
电子电路是学习51单片机的基础, 如果能把以下几个模块弄清楚学习51单片机就不成问题啦. 目录 1.电平 2.单片机IO口 3.电阻 4.电容 5.电路原理图 编辑 6.单片机最小系统结构 7.单片 ...
- 51单片机Proteus仿真+Keil工程-实验6-单片机扩展RAM6264实验
实验6-单片机扩展RAM6264实验 之前做的一次实验,51单片机扩展RAM6264实验.如有问题欢迎指正. 实验目的: 掌握单片机扩展芯片的方法:掌握RAM6264的写入和读取: 实验内容: ...
- 基于51单片机的公交车安全智能检测系统、基于51单片机的金属探测仪控制设计、基于单片机的智能电子密码锁系统设计、基于51单片机酒精浓度检测仪设计【资料转发分享】
630基于51单片机的公交车安全智能检测系统-设计资料 本资料是基于单片机的公交车安全监测系统 具有如下功能: 1.监测环境的温度,超标报警.可以设置上下限 2.监测是否有火灾以及有毒气体,超标报警, ...
- 基于51单片机简易数字示波器Proteus仿真
功能介绍: 采用51单片机作为主控CPU:LCD12864可显示方波,三角波,锯齿波,正弦波等,可通过光标对波形进行测量,可以调节显示波形的幅度和频率,也可以将波形进行左右拖拉,完美的仿真出一个51单 ...
- 51单片机 | 单片机工程模板创建
文章目录 一.51 单片机工程模板创建 1.新建工程 2.选择CPU型号 3.给工程添加文件 4.配置魔术棒选项卡 5.修改编程区字体大小 二.reg52.h 头文件介绍 1.头文件作用 2.头文件内 ...
- 51单片机开发系列一-51单片机开发环境搭建以及入门汇编代码
51单片机开发系列一 51单片机开发环境搭建以及入门汇编代码 象棋小子 1048272975 1. 51单片机概述 51单片机是对所有兼容Intel 8031指令系统的单片机的统称.目前教科书基 ...
- linux 8051 编译,[编译] 3、在Linux下搭建51单片机的开发烧写环境(makefile版)
星期二, 10. 七月 2018 01:01上午 - beautifulzzzz 一.SDCC(Small Device C Compiler)编译环境搭建 SDCC是一个小型设备的C语言编译器,该编 ...
- linux中板子烧写环境配置,3、在Linux下搭建51单片机的开发烧写环境(makefile版)...
星期二, 10. 七月 2018 01:01上午 - beautifulzzzz 一.SDCC(Small Device C Compiler)编译环境搭建 SDCC是一个小型设备的C语言编译器,该编 ...
- 51单片机c语言学习感想,学习51单片机心得体会
在这里给大家分享一下学习51单片机心得体会: 1.我从不说51是基础,如果我这么说,也请把这句话理解为微机原理是基础. 2.对51单片机的操作本质上就是对寄存器的操作,对其他单片机也是如此.库只是一个 ...
- 使用51单片机以及数码管来显示十字路口红绿灯
最近老师让我们使用51单片机做一个十字路口红绿灯实验,正好发表一篇文章,希望能给有需要的同学们带来一些帮助,如果有不合理的地方,还请大家帮忙指正. 一. 首先要利用51做一个红绿灯我们需要知道这个红绿 ...
最新文章
- phpStorm如何用FTP,SSH连接到虚拟机linux系统?
- CF24D Broken robot | DP 高斯消元
- 一起谈.NET技术,NHibernate3.0剖析:Query篇之NHibernate.Linq标准查询
- Mysql数据库,项目需求需要数据还原的数据表结构构思方案
- java transient关键字_嗯?你真的会用 Java 序列化机制?
- HDU 5228 ZCC loves straight flush( BestCoder Round #41)
- MS CRM 2011 Audit
- 交换局域网(链路层+以太网+交换机)
- FreeSwitch中,RGB颜色转换为YUV
- 卷积神经网络+用pytorch构建神经网络
- android 自定义view 实现电影选座功能
- 【人工智能】马尔可夫链模型是什么?
- python中property详解
- 摘android手机自带浏览器无法识别apk文件
- linux嵌入式工控机编程,Linux嵌入式工控机的特点
- CorelDRAW快速制作绚丽的彩色透明心形
- OUC-SE-BLOG1
- java graphics2d旋转_反转Java Graphics2D缩放和旋转坐标
- 请列举至少3款B端互联网产品,从产品定位、目标用户需求、竞争优势等方面分析这些产品
- SN_Write_tool 使用说明文档
热门文章
- Win8.1屏幕亮度自动调节关闭方法
- 编程一开始就应该养成的好习惯
- 渗透测试之信息收集漏洞库篇
- 新版标准日本语高级_第12课
- abs函数c语言std,c++ 在std :: abs函数上
- 红米2怎么升android l,红米2的1G内存少装app够用?怎样让1G内存的安卓手机多装app而不卡?...
- 老王的JAVA基础课:第2课 JDK安装和环境变量配置
- 北德克萨斯大学计算机系,美国北德克萨斯大学计算机科学与工程系主任Barrett Bryant访问昆明理工大学...
- 黑马程序员————小牛皮糖学习笔记————IO流之未使用缓冲区读写文件
- Aptos教程-参与官方激励测试网(AIT2 激励测试网)