该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
自从01年家里有了电脑,一直用windows系统,也算是熬过了95,98,xp,vista,win7到现在的win10。实话说一下基本开电脑只为了玩游戏而已。偶尔悔恨浪费时光痛定思痛的时候,还会换一换linux系统。02年的红旗linux版本,第一次接触唯独钟情右下角菜单栏的工作区切换,感觉很酷,可以在不同工作区开各种界面,虽然当时懵懂除了知道晃晃鼠标点点不会的软件外,但那感觉不亚于dos用户第一次接触win95时感觉惊为天人一般。然而痛定思痛的时间屈指可数,还不如玩玩cs,红警来的更实在。谁让小伙伴总喜欢拉着我去镇上唯一一个 吧联机玩cs半条命呢。
高中有了自己的一个笔记本,联想g450。那也是我暑假辛辛苦苦跳街舞,跟着舞团出去接商演,辛辛苦苦赚了200块钱,加上我妈给我的3000块钱买的呢,深感赚钱不易,所以下定决心要好好学点厉害的技术,去校外住的小伙伴家里安装了ubuntu 8.04,从那以后,整个高中三年,一共开电脑4次。到了大一,换回了win后,偶尔宿舍打打cs,更多的还是跑外边 吧撸啊撸。至于软件专业所学的内容,都是在win下完成的。
系统学习linux应该是在毕业后参加工作时,上班做服务器运维,也是小地方电话销售类服务器,winserver系统,小问题不用我,大问题上面有人。一天除了上班lol开黑到下班,回家和同事骑山地车山上遛个弯回家外。感觉一个月拿着4k多工资混吃等死了。偏偏自己还总是想搞出点技术的东西。饭后就会打开我的惠普pavilion 13笔记本,学ubuntu linux。这时候的版本是14.04。
一直想有一款macbook笔记本,奈何价格实在是自己不能接受的,原因嘛,拿了5个月运维的工作后就跑去当咖啡学徒去了,月薪一千多不敢花的太过。直到16年自己开咖啡店,顺手入了15款macbookpro。初次使用,仿佛又找回了dos换95,linux换win时的感觉。不用说,mbp的外观是我最心仪的样式,其次系统的丝滑程度,比德芙用热水化掉还丝滑。unix系统是学linux历史的时候就知道的,linux软件都可以在mac的brew下找到。然而当时开店繁忙,每天也只有晚上拿出来,上了steam玩会csgo就收起来了。
直到现在换了17款mac,我又来痛定思痛了,决定要好好学学感兴趣的单片机。一个骑行过羌塘和5条进藏线懂咖啡的单片机工程师,听着也蛮酷的嘛。废话不多说了,开始正题:
硬件:
macbookpro 13 版本10.13.6
51开发板 串口芯片为CH340G 51单片机为STC89C52RC
所需软件:
sdcc
stcgal
CH340驱动
一、sdcc编译软件
sdcc(Small Ddevice C Compiler)是一个优化的ANSI-C交叉编译器。当写好51单片机的c文件后,在终端输入sdcc *.c即可编译程序,默认会编译出很多目标文件,我们只需要.ihx后缀的文件即可。
安装方式有两种:
通过终端Homebrew直接安装,前提是系统安装过Homebrew(官 :https://brew.sh/index_zh-cn)
只需要在终端输入:brew install sdcc
2.通过sdcc官 安装(http://sdcc.sourceforge.net/)
左侧Snapshots选择Mac OS X,下载所需版本
下载文件为.tar.bz2格式压缩包,在终端中进入Download目录下,输入:tar -jxvf ***.tar.bz2
解压完成,Download目录下会出现sdcc文件夹。
查看adcc安装文档:cat ~/Downloads/sdcc/share/doc/sdcc/INSTALL.txt
查看安装文档后,只需将解压的sdcc文件夹拷贝到/Library/Developer目录下即可
注意:/Library文件夹为系统目录文件夹,执行复制时需要管理员权限,所以要加sudo,执行过程中需要输入密码,终端下输入密码是不显示的。sdcc为文件夹,cp复制命令复制文件夹需加参数-r。
查看sdcc版本:/Library/Developer/sdcc/bin/sdcc -v
版本为3.4.3,比brew安装的3.7要低。
末尾添加如下:PATH=”/Library/Developer/sdcc/bin:${PATH}”
即可在终端直接输入sdcc -v查看版本 ,无需每次输入/Library/Develper/sdcc/bin/sdcc -v
以上编译工具sdcc即安装完毕。推荐新手直接brew安装,对软件有强烈的控制欲的可以尝试官 下载工具包,安装包位置可随意放置,并不一定放到Library/Developer目录下。
删除sdcc,第一种终端输入:brew uninstall sdcc 即可。第二种删除/Library/Developer/目录下的sdcc文件夹即可:sudo rm -r /Library/Developer/sdcc
二、安装stcgal工具
stcgal是针对STC单片机的命令行烧录脚本,基于python。
根据安装介绍,stcgal需要python3.2以上。mac自带python2.7,而且很多mac系统功能需要使用自带的python2.7。所以自带python最好不要动。python官 (https://www.python.org/getit/)下载
python3.7 for mac
安装成功后终端输入python3 -V。输出版本为3.7即安装成功。
github下载stcgal(https://github.com/grigorig/stcgal)
解压压缩包:tar xvf ~/Downloads/stcgal-master.zip后进入解压的文件夹内
根据安装介绍,终端内先执行:./setup.py build 然后执行:./setup.py install
stcgal的位置在/Library/Frameworks/Python.framework/Versions/3.7/bin/下,进入该目录执行./stcgal会出错,提示:
错误:ModuleNotFoundError:No module named ‘tqdm’ 解决办法:安装tqdm模块
pip3 install tqdm
输入./stcgal -P stc89 -p /dev/tty.wchusbserial1460(tty.wch******为CH340驱动的设备 ,下文介绍)
连接成功,stcgal就安装好了。每次进入stcgal目录下执行./stcgal来烧录太麻烦,那么直接将./stcgal的环境变量添加到.bash_profile文件中。
alias stcgal=/Library/Frameworks/Python.framework/Versions/3.7/bin/stcgal
保存后,终端输入:source ~/.bash_profile
以后在烧录的时候直接输入stcgal -P stc89 -p /dev/tty.w***** *.ihx就可以了。
三、CH340驱动
因为mac下找不到CH340驱动,win下好像也是,所以安装CH341驱动,根据文档,这个驱动兼容CH340芯片。所以官 可直接下载安装
http://www.wch.cn/download/CH341SER_MAC_ZIP.html
安装完成后电脑需重启。重启后电脑连接单片机后,终端输入:ls /dev |grep tty.*
tty.wchusbserial1460就是驱动的设备 ,说明安装成功并识别CH340芯片了。
至此编译,烧录环境就都安装好了。
接下来烧录一个已经写好的程序试验一下:t1.c //adc0832
sdcc adc0832.c //编译后输出多种文件,51单片机需要的文件后缀为.ihx。即stcgal工具将adc0832.ihx烧录到单片机中。
stcgal格式为:stcgal -P stc89 -p /dev/tty.wchusbserial1460 adc0832.ihx
-P参数后接单片机类型,有以下几种:
烧录stc89系列为-P stc89,由于stcgal并不是官方工具,所以只对部分单片机支持烧录。一下是支持的单片机种类:
亲测不支持stc89c52。上电也无法检测出单片机。
虽然可以烧录部分单片机,但mac系统还是有所不足。因为喜欢mac系统,才会如此不遗余力的折腾下去。
每天都要在咖啡店看店,没有太多的时间构思文章组织语言。你们就当我语文是体育老师教的就好啦~如有错字,请
海涵。
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览210289 人正在系统学习中 相关资源:GLONASS卫星位置计算与程序实现_葛奎_glonass_卫星位置__matlab…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!