51单片机从零开始入门教程 第一章(51单片机基础知识与工程创建)

本文围绕51单片机的基础知识展开,包括单片机概念、KeilC51编程工具的数据类型、运算及基本语句,还介绍了新建51单片机项目和编译的步骤。建议先学习相关课程如数电、模拟电路和微机原理以更好地理解内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

重要的内容写在前面:

  1. 该系列是以up主江协科技的51单片机视频教程为基础写下去的,大部分内容都参考了老师的课件,对于一些个人认为比较难懂且重要而课件写得并不是很清晰的地方,笔者都在正文尽量用文字详细地描述了一遍(正文没有的话就是在代码的注释里)。
  2. 文中的图片基本都来源于老师的课件以及开发板和芯片的手册,粘贴过来是为了方便阅读。
  3. 个人把这个教程学完之后,整体感觉是很好的,如果有条件的可以先学习一些相关课程再来看51单片机的教程,学起来会更加轻松(零基础开始直接学51单片机也可以,老师讲得很清晰),相关课程有数字电路(强烈推荐先学数电,不然可能会有很多地方理解起来很困难)、模拟电路、计算机组成原理(像寄存器、存储器、中断等在这门课里有很详细的介绍)、计算机网络、微机原理等。
  4. 文章的原创部分很多都是笔者个人的理解,如有错漏欢迎指出。

视频链接:

[1-1] 课程简介

一、单片机基本知识

(1)单片机,英文Micro Controller Unit,简称MCU。

(2)单片机内部集成了CPU、RAM、ROM、定时器、中断系统、通讯接口等一系列电脑的常用硬件功能。

(3)单片机的任务是信息采集(依靠传感器)、处理(依靠CPU)和硬件设备(例如电机,LED等)的控制。

(4)跟计算机相比,单片机算是一个袖珍版计算机,一个芯片就能构成完整的计算机系统。但在性能上,与计算机相差甚远,但单片机成本低、体积小、结构简单,在生活和工业控制领域大有所用。

(5)单片机的命名规则如下图所示。

二、计算机相关基础知识

1、进制转换

2、Keil(C51)中的常见数据类型

3、Keil(C51)中的数据运算

4、Keil(C51)中的基本语句

5、C51的sfr、sbit

(1)sfr(special function register):特殊功能寄存器声明

例:sfr P0 = 0x80;  //声明P0寄存器,物理地址为0x80

(2)sbit(special bit):特殊位声明(使用频率较高)

例:sbit P0_1 = 0x81;    //或  sbit P0_1 = P0^1;  声明P0寄存器的第1位

6、可位寻址/不可位寻址

        在单片机系统中,操作任意寄存器或者某一位的数据时,必须给出其物理地址,又因为一个寄存器里有8位,所以位的数量是寄存器数量的8倍,单片机无法对所有位进行编码,故每8个寄存器中,只有一个是可以位寻址的。对不可位寻址的寄存器,若要只操作其中一位而不影响其它位时,可用“&=”、“|=”、“^=”的方法进行位操作

三、新建一个项目的流程

(1)打开Keil5后,在“Project”一栏找到“New μVision Project”,点击它。

(2)建议在桌面单独为51单片机建一个新文件夹,在该文件夹中存放不同的51单片机项目,每个项目再独自命名一个文件夹,生成的项目文件放在这个文件夹中(项目文件命名建议命为“project”)。

(3)单击“保存”后,会弹出如下对话框供我们选择型号。

(4)单击“OK”后,会弹出另一个对话框,建议选择否(选择是也没关系),然后就完成了工程的创建。

(5)右键选择“Source Group 1”文件夹,在这里创建编写代码的源文件(头文件也是在这里创建)。

①在Keil(C51)中可以使用c语言、C++和汇编语言,一般都是选择c语言,也就是创建.c文件,第一个.c文件通常命名为main。

②下图所示选项则是将文件夹中已有的代码文件导入项目中。

(4)有了代码文件后可以进行编译(点击下图橙框的按钮即可进行编译)。

从零开始 单片机 语言 刘建清 出版社: 国防工业出版社 发行时间: 2007 年01月 内容简介: 本书定位于让初者从零起步,轻松单片机高级编程C语言以及实战技术。书中首先简要介绍了8051单片机的主要构成,然后重点介绍了单片机Cx51高级编程语言开发仿真环境的使用方法,透彻地分析了Cx51的语法结构,并给出了大量实例。书中大多数实例和全部实验都经过了实验板的验证。 本书可供具有一定单片机基础的初者,以及广大从事单片机应用系统开发研制的工技术人员阅读,也可以作为有关院校相关专业的教参考用书。 目录: 第一章 单片基础知识  第一节 51系列单片机概述  第二节 80C51单片机的内部结构和外部引脚  第三节 80C51单片机的内部结构和外部引脚  第四节 51系列单片机的并行输入/输出接口  第五节 80C51单片机的时钟电路和复位电路 第二章 单片机C语言入门  第一节 认识C语言  第二节 简单C语言  第三节 单片机C语言开发步骤 第三章 单片机实验硬件环境的建立  第一节 单片机实验板  第二节 单片机仿真器  第三节 单片机编程器 第四章 Keli Cx51软件的使用  第一节 Keil Cx51简介  第二节  Keil Cx51软件的安装   第三节 uVision2集成开发环境  第四节 常用窗口介绍 第五章 Cx51数据运算  第一节 标识符和关键字  第二节 数据类型  第三节 常量  第四节 变量   第五节 运算符和表达式 第六章  Cx51的基本语句  第一节 表达式语句和复合语句   第二节 条件选择语句   第三节 循环语句 第七章 Cx51函数  第一节 函数的分类和定义   第二节 函数的参数和返回值  第三节 函数的调用  第四节 函数变量的存储方式和种类 第八章 Cx51构造数据类型  第一节 数组  第二节 指针  第三节 结构  第四节 共用体  第五节 枚举 第九章 单片机中断、定时器串行口的C语言编程  第一节 单片机中断系统C语言编程   第二节 定时/计数器及实验  第三节 串行数据通信技术及实验  第十章 单片机实用接口C语言编程技术  第一节 LED显示器接口   第二节 链盘接口   第三节 LCD显示器接口   第四节 I2C总线接口  第五节 A/D和D/A转换接口   第六节 单片机应用技术综合实例 附录一 运算符的优先级和结合性 附录二 Keil Cx51编译器常见警告错误信息的解决方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zevalin爱灰灰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值