Bootstrap

蓝桥杯单片机-零基础入门(一)


链接: B站视频出处
链接: 蓝桥杯单片机-零基础入门(二)

1.开发软件

在这里插入图片描述在这里插入图片描述在这里插入图片描述

2.新建工程

1.养成良好的编程习惯,每一个不同的工程项目对应一个不同的文件夹

在这里插入图片描述
在这里插入图片描述
在Keil里新建
在这里插入图片描述
这个会自动弹出来,选择刚才创建的文件夹的位置再新建文件Led

2.芯片选择AT89C52

在这里插入图片描述
在这里插入图片描述
选是或否都行,一般点否

PS:keil没有相应对应芯片
在这里插入图片描述
找到要添加的,如果单片机型号里找不到再在上面添加Keil的按照路径在这里插入图片描述

3.点开“品”字形工具栏,修改相关信息

在这里插入图片描述
在这里插入图片描述
双击改名字
在这里插入图片描述
效果如上

4.点开魔术棒,勾选生成HEX文件

在这里插入图片描述
在这里插入图片描述
把这个勾上

3.认识LED原理图

在这里插入图片描述用DB1~DB8去对应寻找
在这里插入图片描述
相当于P10-P17对应连接D1-D8。

PS:后续写程序的时候会写成P1,P1_0这种,应该对应的是P10~P17。有点出入。

4.编写程序

1.右键点击User栏添加用户主程序(main.c)

在这里插入图片描述
在这里插入图片描述

2.右键引用51头文件

在这里插入图片描述在这里插入图片描述

3.编写程序主题框架

在这里插入图片描述

PS:遇到注释乱码
在这里插入图片描述
在这里插入图片描述

4.按照原理图编写程序

方式一:对P1进行整体赋值,控制所有LED灯

在这里插入图片描述
这里0低电平为亮
在这里插入图片描述
编译
在这里插入图片描述
这样算是编译成功

之后打开仿真软件
在这里插入图片描述
双击打开
在这里插入图片描述
在这里找生成的hex文件
在这里插入图片描述
User-Object-hex
在这里插入图片描述
在这里插入图片描述
效果

PS:为什么亮的是后面两个?
在这里插入图片描述
计算机是由右往左存储的

方法二:对P1的八个IO口单独赋值,控制单个LED灯

在这里插入图片描述
重新编译然后导入hex(要重新导入)
在这里插入图片描述

在这里插入图片描述

5.进阶点灯

1.LED灯闪烁

在这里插入图片描述
在这里插入图片描述
这样是不会亮的,亮灭太快,需要延时函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重新在仿真里导入,就会闪烁了

2.LED流水灯

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这样有点烦
在这里插入图片描述
比如1111 1110变成1111 1101
在这里插入图片描述

在这里插入图片描述

重新烧录就可以了

3.流水灯闪烁越来越快

在这里插入图片描述
生成1毫秒的延时函数
在这里插入图片描述
注意复制的函数要改成这样,将基础的1毫秒函数循环调用,包括i和j每次也要重新赋值。
在这里插入图片描述

;