一、前言
单片机入门,我们从最简单的蜂鸣器开始。
二、开发
2.1 代码
#include
2.2 编译
sdcc 1.c
编译结果
共计三个错误
第一二个错误表示reg51.h在Linux平台上已经过时了,我们采用8051.h。
所以将
#include <reg51.h>
修改为
#include <8051.h>
第三个错误表示,Linux下标识符不能这样定义。
我们从sdcc的头文件中查看相关代码,
代码位置是
/usr/share/sdcc/include/mcs51/8051.h
我们可以看到
将
sbit sound=P3^7;
修改为
#define sound P3_7
也就是说Linux下与Windows下的开发以及定义有一定区别。
2.3 格式转换
将ihx文件转换为hex格式文件
packihx 1.ihx > 1.hex
三、写入设备
使用stcflash工具,原本想用Qt/C++自己写一个,后来发现技术有限,还是熟悉了再说。
Manjaro 下直接安装
pacman -S stcflash
写入设备
stcflash 1.hex
四、运行结果
至此,Linux下单片机开发有一个良好的开始。
五、参考文档
[1]https://blog.csdn.net/thinkerleo1997/article/details/53145972