小白系列之51单片机的入门速成法

51单片机的入门速成法
01-经典51内核资源全览浓缩图
02-重要外设特殊功能寄存器概览
03-程序开发流程与设计要点
04-三大外设的开发与可重用代码
05-应用程序设计入门一例通

01-经典51内核资源全览浓缩图
在这里插入图片描述
<1> 四组8位并行I/O端口:
P0端口:PC门,集电极开路输出,必须接上拉电阻才能输出高电平。
P1端口:无特殊之处。
P2端口:访问外部存储器时,作高8位地址用。
P3端口:功能复用端口,详情看表。
<2> 三大外设:外部中断、定时/计数、串行通信
<3> 五个中断源:2个外部中断、2个定时/计数中断、1个串行通信中断
注意:要记住中断号与中断源的对应关系…编程时会用到
<4> 三大特殊功能寄存器:TCON、SCON、TMOD
不管是复杂的处理器还是简单的单片机,其功能大多通过外设来体现出来,而外设与内核的交互则通过寄存器和中断系统来实现。因此底层的单片机程序开发实际上大部分都在编程操作各种特殊功能寄存器和处理中断的响应。
在这里插入图片描述

02-重要外设特殊功能寄存器概览
1、经典型51单片机的重要外设
不管简单还是复杂的微处理器,其基本架构都是“内核+外设”,而控制外设的重要途径就是特殊功能寄存器。底层的程序开发,绝大部分都在跟各种特殊功能寄存器打交道。
51单片机的外设不多,可以分成三大块:中断系统、定时/计数器和串行接口。
要想把这些外设应用好,首先得把控制这些外设的特殊功能寄存器弄明白:
IE寄存器:中断控制寄存器。
IP寄存器:中断优先级寄存器。
TCON寄存器:中断状态标志寄存器。
TMOD寄存器:定时/技术模式控制寄存器。
THx和TLx寄存器:定时/计数器的技术初值寄存器。
SCON寄存器:串口控制寄存器。
SBUF寄存器:串行接口收据发送和接收缓冲器。
2、重要的寄存器归纳
<1> IE寄存器与IP寄存器(IP用的不多)
在这里插入图片描述
<2> TCON寄存器
在这里插入图片描述
<3> TMOD寄存器
在这里插入图片描述
<4> SCON寄存器
在这里插入图片描述

03-程序开发流程与设计要点
在程序设计过程中,需要注意2点:
<1> 要引入相关芯片的头文件。
<2> 中断服务函数的特殊写法。
开发流程。
<1> 建立新工程或者打开已有工程:Project菜单项。
在这里插入图片描述
<2> 如果是新建工程,单击“New uVision Project”菜单项,输入工程名字。
在这里插入图片描述
<3> 为新工程选择芯片类型。
在这里插入图片描述
<4> 给新建的工程中添加代码文件,如果没有代码文件可以新建一个空文件。
在这里插入图片描述
<5> 配置工程的选项参数,主要的设置输出HEX文件。
在这里插入图片描述
<6> 编写代码,根据不同的芯片引入对于的头文件。
在这里插入图片描述
<7> 编译代码,有时候允许有警告存在。
在这里插入图片描述
<8> 打开ISP下载软件,导入HEX代码文件。
在这里插入图片描述
<9> 将程序代码烧写到芯片中,在断电状态下单击“下载”按钮,然后上电,程序就自动下载到芯片了。
在这里插入图片描述
3、程序设计要点
<1> 引入头文件
在单片机的程序设计中,很多时候需要操作特殊功能寄存器,而这些寄存器实际上就是芯片中的一个内存地址。记住这些地址很难,且代码编写复杂。为方便记忆和使用,给每一个特殊功能寄存器都起了一个名字。在程序设计中想直接使用这些名字,就需要引入对应芯片头文件,如51单片机,需引入“reg52.h”文件。
在这里插入图片描述
特殊功能寄存器P0的地址为80H,引入这个头文件之后,就可使用P0这个名字
P0 = 0x02;
<2> 中断服务函数的格式
在51单片机中有5个中断源,每个中断源都有固定的入口地址(也就是中断向量)和中断号。程序设计的过程中,不要记住中断向量地址,但需知每个中断源对应的中断号
一般情况下,中断的处理函数有两个,其一为中断初始化函数,其二为中断服务函数。初始化函数就是一个普通的函数,而中断服务函数却有特殊的格式要求:
A. 中断函数没有返回值,也不能带参数。
B. 函数名后面要跟一个关键字interrupt,说明这是一个中断服务函数。
C. 在关键字interrupt后面要跟上中断号,说明这个中断服务函数是为那个中断服务的。
中断服务函数的格式为:
void函数名()interrupt中断号
{----函数体----}
如定时器0的中断服务函数,C语言可这样写:
在这里插入图片描述

04-三大外设的开发与可重用代码
1、外部中断模块
51单片机有INT0和INT1两个中断模块,外部的触发信号可以是电平,也可以是边沿,由寄存器TCON的IT0和IT1位来决定。
在这里插入图片描述
2、定时/计数模块
51单片机有T0和T1两个定时器,对内部可以定时,对外部可以计数。初始化时,需要确定该模块是定时功能还是计数功能,工作模式是什么,最大计数值是多少。
在这里插入图片描述
3、串行接口模块
51单片机的串行接口中,产生波特率需要占用定时器T1,发送数据时,将内容放到SBUF中,数据发送完毕,TI会置1。当完整接收到一个数据后,RI会置1,这时从SBUF中将内容读出即可。不管是TI还是RI标志位,都需要人工清0。一般情况下,发送数据采用查询方式,接收数据采用中断方式。
在这里插入图片描述

05-应用程序设计入门一例通
1、题目需求
在这里插入图片描述
2、基本思路
我的设计模式是自上而下,从整体到局部。所以,在编写代码之前,我的脑子里面基本上已经有了比较完整的轮廓,包括应该定义那些变量,应该安排那些函数,程序框架大致如何。
从本题的需求分析中,我们可以获得以下的信息:
<1>秒闪功能,需要使用定时器0,得安排一个初始化函数Init_Timer0()和一个中断服务函数SeviceTimer0()。
<2> 定时器0使用16位模式,在12MHz晶振情况下,最大的定时值也只有65.535ms,因此要定时500ms不能够直接实现,那么就需要多次定时进行累加。把定时器0的间隔定时确定为50ms比较方便,累计10次就是500ms了,那么就需要一个定时累计变量t_count。
<3> 按键功能,首先要定义一个按键扫描函数ScanKeys(),在扫描过程中需要做去抖动处理,那么就要安排一个简易的延时函数Delay()。
<4> 再检查思考一下,还有什么吗?没有了。
3、程序框架
严格来说,在开始编写代码之前,应该将程序的流程图和数据定义表做出来。不过,对于简单的功能,可以通过编写代码搭建整体框架的方式来体现。这就跟建设框架结构的房子一样,先把毛坯建好,再去做个单元进行装修。我比较喜欢这做。本题在基本思路分析指导下,可以搭建出程序框架结构。
在这里插入图片描述
4、逐个填充
<1> 定时器初始化函数:这个代码是可以重用的,直接拷贝过来就行了。
在这里插入图片描述
<2> 定时器中断服务函数。
在这里插入图片描述
<3> 按键扫描函数。
在这里插入图片描述
就这样,一个简单的51单片机应用程序开发就完成了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344780.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】广东开放大学 工程经济 形成性考核

选择题 题目&#xff1a; 单选 下列是年金现值系数表示符号的是&#xff08;&#xff09; 答案&#xff1a;看左侧 题目&#xff1a; 单选 某施工企业现在对外投资200万元&#xff0c;5年后一次性收回本金和利息&#xff0c;若年基准收益率为8%&#xff0c;则总计可以收回资…

Hibernate事实:集成测试策略

我喜欢集成测试&#xff0c;这是检查Hibernate生成哪些幕后花絮SQL查询的好方法。 但是集成测试需要运行的数据库服务器&#xff0c;这是您必须要做的第一选择。 1.使用类似生产的本地数据库服务器进行集成测试 对于生产环境&#xff0c;我始终喜欢使用增量DDL脚本&#xff0c…

【渝粤教育】广东开放大学 插画与漫画 形成性考核 (27)

选择题 题目&#xff1a;先从整体开始绘制的一般顺序是 题目&#xff1a;正常头身比角色转化为Q版角色&#xff0c;基本可以用几个词说完&#xff0c;那就是 题目&#xff1a;影响衣服皱褶的的因素有 题目&#xff1a;关于女性漫画人物正面面部特征&#xff0c;以下说法正确的是…

蓝桥杯基础模块1:LED跑马灯

一、模块题目 二、原理简述 1、74HC138:三八译码器(3个输入,8个输出) 2、74HC573:锁存器(20个引脚,D1D8是数据输入端,Q1Q8是数据输出端&#

【渝粤教育】广东开放大学 文学概论 形成性考核 (31)

选择题 题目&#xff1a;对创作个性与文学风格这两个概念的关系理解正确的是&#xff08; &#xff09; 题目&#xff1a;审美意象总是以表达哲理和观念作为存在的目的和最高审美理想&#xff08; &#xff09; 题目&#xff1a;西方典型论发展的三个阶段是&#xff08; &#…

如何使用Hibernate将PostgreSQL枚举映射到JPA实体属性

介绍 开源的hibernate-types项目允许您映射JSON&#xff0c;ARRAY&#xff0c; YearMonth &#xff0c; Month或数据库特定的列&#xff08;例如INET地址&#xff09;。 在本文中&#xff0c;我们将看到使用JPA和Hibernate时如何将PostgreSQL Enum类型映射到Java数组。 Maven…

【渝粤教育】广东开放大学 物权法 形成性考核 (43)

选择题 题目&#xff1a;下列哪一选项不是民法上的物?&#xff08;&#xff09; 题目&#xff1a;甲有一套别墅&#xff0c;甲的下列何种行为不能体现物权的性质&#xff08;&#xff09; 题目&#xff1a;根据物权是否具有独立性不同&#xff0c;物权可以分为&#xff08;&am…

蓝桥杯基础模块2:蜂鸣器继电器

一、模块题目 二、原理简述 1、74HC138(参见模块1) 2、74HC02(参见模块1) 3、74HC573(参见模块1)

【渝粤教育】广东开放大学 管理会计 形成性考核 (33)

选择题 题目&#xff1a;固定成本和变动成本是根据成本按其( )分类的 答案&#xff1a;看左侧 题目&#xff1a;下列成本项目中&#xff0c; 属于变动成本的是 答案&#xff1a;看左侧 题目&#xff1a;企业某产品本月消耗各项费用如下:直接材料50000元&#xff0c;直接人工200…

蓝桥杯基础模块3_1:数码管静态显示

一、模块题目 二、原理简述 1、数码管 CT107D单片机综合实训平台上使用的数码管是F3461BH(倒数第二个字母是A则共阴,是B则共阳)。 F3461BH是一个4位8段的数码管,其中a、b、c、d、e、f、g、dp引脚分别对应8个段码,该8个引脚通过74HC573锁存器与单片机的P0端口相连。另外有…

【渝粤教育】广东开放大学 计算机导论 形成性考核 (51)

选择题 题目&#xff1a;Excel 2003所属的套装软件是______。 题目&#xff1a;下面说法正确的是&#xff08; &#xff09; 选择一项&#xff1a; a. 数据是加工之前的信息 b. 信息是数据加工的结果 c. 数据就是数字 d. 数据就是信息 题目&#xff1a;用流程图描述算法形象、直…

【渝粤教育】广东开放大学财务会计2 形成性考核 (34)

选择题 题目&#xff1a; 下列属于其他业务收入的是&#xff08;  &#xff09;。 选择一项&#xff1a; 答案&#xff1a;看左侧 题目&#xff1a; 下列各项中&#xff0c;应计入管理费用的是&#xff08;  &#xff09;。 选择一项&#xff1a; 答案&#xff1a;看左侧…

jersey客户端_项目学生:带有Jersey的Web服务客户端

jersey客户端这是Project Student的一部分。 其他职位包括带有Jersey的Webservice Client&#xff0c; 带有Spring Data的 业务层和持久性 。 RESTful Web应用程序洋葱的第一层是Web服务客户端。 它可以用于模仿包含AJAX内容的网页&#xff0c;也可以被webapp的编程用户用来模…

蓝桥杯基础模块3_2:数码管动态显示

一、模块题目 二、原理简述 动态显示的基本原理与实现思路(转载) 动态显示实质上就是轮流点亮单个数码管实现多位数码管整体显示的效果。在轮流显示过程中,每位数码管点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但…

【渝粤教育】电大中专中医基础知识 (2)作业 题库

1.下列表述中属于证的是 A.头痛 B.麻疹 C.风寒犯肺 D.恶寒 E.水痘 正确 正确答案&#xff1a;左边查询 学生答案&#xff1a;C 2.下列表述中属于症的是 A.水肿 B.消渴 C.咳嗽 D.肺痈 E.恶寒 错误 正确答案&#xff1a;左边查询 学生答案&#xff1a;未作答 3.“阳损及阴,阴损及…

Java:使用Toxiproxy模拟各种连接问题

用Toxiproxy和Java的HttpURLConnection模拟各种连接问题&#xff0c;以查看产生了什么样的错误&#xff1a;连接超时vs.读取超时vs.连接被拒绝…。 结果&#xff1a; 系统&#xff1a;openjdk 11.0.1 2018-10-16 (.setConnectTimeout 1) > java.net.SocketTimeoutExceptio…

蓝桥杯基础模块4_1:独立按键

一、模块题目 二、原理简述 1、独立按键的处理思路(转载) 一般情况下,独立按键有两个引脚,其中一个通过上拉电阻接到单片机的I/O端口,另外一端接地。也就是说,平时按键没有动作的时候,输出的是高电平,如果有按下动作发生,则输出的是低电平。那么,我们在程序设计的时…

【渝粤教育】广东开放大学 行政管理 形成性考核 (35)

选择题 题目&#xff1a; ( )是从行政过程的角度来看待行政职能的 选择一项&#xff1a; 答案&#xff1a;看左侧 题目&#xff1a; 经过1993年的机构改革&#xff0c;国务院机构减少到59个&#xff0c;其中部委40个&#xff0c;直属机构13个&#xff0c;办事机构5个和1个办公…

【渝粤教育】广东开放大学 Photoshop 图像处理 形成性考核 (24)

选择题 题目&#xff1a; 使用变换命令中的缩放命令时&#xff0c;按住哪个键可以保证等比例缩放&#xff1f;&#xff08; &#xff09; 答案&#xff1a;看左侧 题目&#xff1a; 将前景色和背景色恢复为默认颜色的快捷键是&#xff08;&#xff09;&#xff1f; 答案&#…