本人从年初开始学习51单片机,前期有复习了一下C语言,有基本的基础。在这里我记录我学习单片机的几个例程与感想。
我使用的参考书籍是《手把手教你学51单片机 C语言版 宋雪松 清华大学出版社出版》,我认为这是一本很适合初学者的书籍,非常非常推荐学习单片机的朋友去阅读。
我使用的单片机是普中科技的V4开发板,原理图如下:
编程软件是KeilC51,软件可以在微信小程序 /软件管家/ 中下载。烧录软件是STC-ISP,可以在官网上下载。
个人感觉单片机很容易入门,我从点灯开始,做到了加法器这个例程,但是我发现前面的有些东西不是很牢固,所以想借此对前面所学的东西做一个复习总结。
第一个程序是点灯程序,从这里可以看出,我们的LED灯的控制引脚为P2.x。根据发光二极管的发光原理可知,当我们的引脚为低电平(即为0)时,线路导通,二极管就会被点亮。
我们的程序在编写之前都需要建立一个工程,并把我们的主程序包含到我们的工程之中。具体步骤如下:
程序如下:
#include<reg52.h> //包含特殊功能寄存器定义的头文件
sbit LED = P2^0; //位地址声明,注意:sbit必须小写,P必须大写
void main() //任何一个C程序都必须有且仅有一个main函数
{
unsigned int i = 0;
LED = 0; //点亮小灯
for(i=0;i<30000;i++); //延时
LED = 1; //熄灭小灯
for(i=0;i<30000;i++);
LED = 0; //点亮小灯
for(i=0;i<30000;i++);
LED = 1; //熄灭小灯
for(i=0;i<30000;i++);
LED = 0; //熄灭小灯
while(1);//程序在这里停止
}
在完成主程序编写之后我们就直接将这个工程编译为汇编语言,步骤如下:在Target Option中选择Output选项,勾选Create HEX File。我们下载到板子上的文件就是这个 h文件。完成设置之后,我们回到主界面点击按钮,编译成功后会显示0错误0警告。(需要注意的是,这里如果有警告的话可能你的程序还是存在错误,可能是名字错了一个单词,编程的时候要特别注意这个问题,检查起来很麻烦。)
然后就是下载到板子上看我们的程序是否正确,打开我们的STC软件,我目前使用的版本只支持冷下载,就是说需要我们先关闭板子,点击下载,然后再打开板子,程序才能正常下载到我们的板子上面。
在这里我们需要安装一个驱动器,驱动器都是买板子配套的,CH340驱动程序。安装完成后连接板子可以自动选择端口,波特率选择默认的即可。