@TOC
写在前面的话
沉寂了这么长时间,我终于回来了。复习周结束了,我又可以继续学我喜欢的东西了。这次的记录和以往不太一样,考完放假后我和系里的一部分同学来到中兴协力实训基地进行了十天的单片机培训。之前已经来过一次,感觉很不错,尤其是培训老师让我久久不能忘~ 老师非常耐心,很专业,上次没和老师合个影太遗憾了,于是这次我又来了。哈哈 ~~
这次实训主要是学习单片机的编程以及串口的各种常用的通信协议,我打算将其放在单片机的小专栏里,一是当做留念,二来可以当做笔记回顾,思考。
keil(pj版)安装
这里本来不打算写的,但是既然也当做回顾留念,就留下来吧。 我所用的keil5(pj版) 链接:https://pan.baidu.com/s/1ThcDTGaia7_nJqSINBvekA 提取码:A0G4 需要的自取
小贴士
在安装keil的时候在你的安装路径里不要带有中文汉字,不然会出现打出来的代码关键字等没有颜色变化,全是黑色。
配合按键点亮一个led灯
由于刚刚来到基地,在第一天并没有讲太深的东西还是一些比较基础的知识,我们写了一个用按键点亮一个led灯的小代码。
代码段
在单片机的代码中一定会至少有一个while循环。
#include <STC15F2K60S2.H>
sbit LED0 = P5^5;
sbit key = P6^0;
void delay(unsigned int x);
main(){
key = 1;
while(1)
{
if(key == 0)
{
delay(100);
if(key == 0)
{
LED0 = ~LED0;
}
}
while(!key);
delay(100);
}
}
void delay(unsigned int x)
{
unsigned int k;
for(k = 0;k<x;k++);
}
按键去抖
在这里主要需要注意的就是按键去抖,这里套用了两个if语句;其中第一个if检查是否按键去抖,之后接着用一个delay延时函数,再进行第二个if检查是否有按键按下,完成按键去抖。
电路原理图
TM1650(LED驱动)
第二天要点亮一个数码管,先讲了一点LED驱动。其中主要是IIC协议。
电路原理图
IIC通信协议
写在最后
另外我想在后面的博文当中,每一篇文章最后都放一句我比较喜欢的话,与君共勉。 知小乃谋强,律己克人生。
|