51单片机学习笔记(一)

也说不上来到底为啥吧,因为这些年做的项目都是跟硬件或多或少有打交道的,脑子一热决定单片机学起来。
虽然说以前学的也是嵌入式吧,专业名称有点屌,软件专业(移动通信技术开发方向) (。˘•ε•˘。) 但上课也听不懂老师讲的啥。

废话不说,进入正题:

你需要准备啥


为了能够进行单片机的学习从小白到高手,你得…
1.知道单片机是个啥,起码需要对她感兴趣吧。。
2.具备基础的编程知识,比如C语言。
3.有一台电脑,自己的朋友的都可以,没影响。
4.有一块开发板,某宝搜索 51单片机开发板 一大堆,挑个能接受的价格,买回来。(我买的是那种送一根D口USB线,能下载能供电的)

所有东西齐全,开始吧。

D口USB线一头接开发板,一头接电脑,安装USB转串口驱动(CH34或者FT232视情况而定)。

我网上搜索了一下,好多人推荐使用Keil uVision来作为IDE。 虽然没用过,但是我就是觉得这IDE我不喜欢,听名字就很难听,而且你看这个关联文件的描述。。

简直是我屮艸芔茻。

蒽,是的, 我就是不想用它,但我又要编译,怎么办呢, 好在之前电脑上有安装了Code::Blocks(下文简称CB),我还是挺喜欢她的,但是CB好像不支持生成hex文件。
然后我就去找了一个编译器, 支持生成hex,叫SDCC(全称 Small Device C Compiler)戳我打开传送门, 真是简单粗暴的名字,小型设备的C编译器,蒽。好了就她了。

CB遇上SDCC

好了, CB也有了, SDCC也有了 , 先安装配置吧。
下载SDCC,安装(就是下一步下一步那种安装,很简单)。 直到完成。
打开CB的编译器配置(Settings->Compiler… 菜单,然后在选择编译器那选择Small Device C Compiler,再定位到Toolchain executables选项卡,把SDCC的安装路径填进去,确定就好了)。

然后有个重要的一步,到Other settings选项卡,右下角躲着一个Advanced options.. ,点击它,会提示你一大堆,大概意思就是这个是高级参数配置功能,一般情况下不需要修改,否则可能造成无法编译之类的,别管他,选yes就好,在出来的界面里再定位到Others选项卡,看到 Object file extension (e.g. o): 那个文本框了么, 对, 把o改成rel, 然后确定,确定, 退出来。重启CB。 完事~ 看图。。。

接下来,新建工程 类别那边选择MCS51 Project,填工程名以及相关信息,就好了。就可以编译了, 如果没有问题, 就可以在工程对应的binDebug目录下找到你的hex了。

2018.3.11更新

最新的CodeBlocks (17.12)已经不需要如此繁琐的配置了, 安装SDCC后,再安装CB, 直接在编译器检测环节就可以看到SDCC了。

有什么说的不对的地方,你倒是来打我啊不是欢迎大家批评指正~

原文地址:https://www.cnblogs.com/gucnbar/p/6185781.html