单片机,特别是MCS-51系列,是电子工程领域广泛应用的微控制器。
MCS-51单片机的内部资源包括一个8位的CPU,4KB的掩膜ROM程序存储器,128字节的内部RAM数据存储器,2个16位的定时器/计数器,1个全双工异步串行口,5个中断源以及两级中断优先级控制器。
此外,还有时钟电路,这对于单片机的运行至关重要。
MCS-51的外部时钟可以通过XTAL1和XTAL2引脚接入外部振荡信号源。
指令周期是以机器周期为基本单位,机器周期由12个振荡周期组成,等于6个状态周期。
在MCS-51中,RAM有两个可寻址区域,分别是20H-2FH的16个单元和字节地址为8的倍数的特殊功能寄存器(SFR)。
参数传递在子程序中通常通过寄存器或片内RAM进行。
中断程序的返回通常使用RETI指令,而在返回主程序前需要恢复现场。
串行口工作方式1的一帧数据包含10位,波特率的设定公式取决于具体应用。
中断响应时间通常在3-8个周期之间,最短响应时间是在CPU查询中断标志的最后一个机器周期后立即执行LCALL指令,需要3个机器周期。
单片机的时钟产生有两种方式:内部和外部。
51单片机的存储器包括ROM和RAM。
在扩展外部存储器时,P0口作为数据和地址总线的低8位,而P3.3口的第二功能是INT1。
中断矢量地址如外部中断0为0003H,外部中断1为0013H。
MCS-51的I/O端口有三种操作模式:读端口数据,读端口引脚和输出。
地址译码方法包括部分地址译码、全地址译码和线选法。
直接寻址可以访问SFR、内部数据存储器低128字节以及位地址空间。
P0口可以作为真正的双向数据总线口或通用I/O口,但作为后者时是准双向口。
在定时/计数器的工作方式中,只有T0能工作于方式三,用于生成波特率。
串行通信的一帧数据包括起始位、数据位、奇偶校验位和停止位。
波特率表示每秒传输二进制位的数量。
中断响应时间是从PC指针到转向中断服务程序入口地址所需的机器周期数。
定时器T0和T1在工作方式1下为16位计数器,范围0-65535。
MCS-51的堆栈是向上生长的,SP始终指向栈顶。
入栈操作是先SP加1再压入数据,而出栈则先弹出数据再SP减1。
MCS51单片机的内部资源包括并行I/O口、定时器/计数器、串行接口和中断系统。
它有8种寻址方式,包括寄存器、直接、立即、寄存器间接、相对、页面、变址和位寻址。
变址寻址是基于16位的程序计数器PC或数据指针DPTR作为基址寄存器,结合8位的累加器A作为变址寄存器。
MCS-51单片机具有111条指令,按长度分为单字节、双字节和三字节指令,并按执行所需的机器周期数进一步分类。
这些指令构成了MCS-51强大的处理能力,使其能够在各种嵌入式系统中发挥关键作用。
理解和掌握这些知识点对于单片机的学习和期末考试至关重要。
2025/3/16 17:44:05 323KB
1
013.VisualStudio2017C#WPF实现的圆形进度条.rar
2025/3/14 14:13:05 222KB wpf
1
关于样条模型的一本基础性的书,PDF版本
2025/3/13 16:51:41 12.42MB spline
1
最新的全国各个城市(460多个)的公交数据,2009年1月5号更新,数据格式为sqlserver2005.内有1.6万多线路信息,50多万线路站点信息,是一份非常详尽的数据。
内容非常详细,每条线路的信息非常丰富。
有票价,首末站距离,车辆类型,首末站早晚班时间等等。
2025/3/13 7:48:34 6.31MB 公交数据 公交换乘 抓取 公交查询
1
CSS3引入jquery实现页面加载的LOADING效果,就是一个载入动画,一个加载的进度条效果,圆形小圆点在不断的旋转,当加载完毕后,自动消失,本页面由HTML5技术和jquery共同实现,LOADING和页面显示两者之间同样也加入了渐变动画效果,可作为一个HTML5Loading应用的例子。
2025/3/12 14:57:11 37KB jquery html css
1
第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。

  第二个模块——Menu()的功能是:显示提示选单。

  第三个模块——Quit()的功能是:退出选单。

  第四个模块——Create()的功能是:创建新的数据记录。

  第五个模块——Add()的功能是:增加新的数据记录,并返回选单。

  第六个模块——Find()的功能是:按要求查询相关的信息,如果找到了,则显示该信息,如果未找到,则提示文件中没有该信息,并返回选单。

  第七个模块——Alter()[的功能是:修改某条记录的信息,如果未找到要修改的记录,则提示系统中无此记录,并返回选单。

  第八个模块——Delete()的功能是:删除某条记录,如果未找到要删除的记录,则提示通讯录中没有,并返回选单。

  第九个模块——List()的功能是:显示所有记录。
一、用链表或者顺序表实现以下系统,完成线性表的建立(至少包括10个结点),以及线性表中信息(结点)的插入、查找、删除、修改、输出等操作,具体的模块要求见上方的“总的模块要求”。
建议用“文件”存储数据。
1.通讯录管理系统的设计与实现(1)通讯者信息包括:编号(charnum[10])、姓名(charname[10])、性别(charsex[10])、电话(charphone[20])(2)除了总的模块要求外,还需统计通讯录中男性人数及女性人数,并求出通讯录中的第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。

  第二个模块——Menu()的功能是:显示提示选单。

  第三个模块——Quit()的功能是:退出选单。

  第四个模块——Create()的功能是:创建新的数据记录。

  第五个模块——Add()的功能是:增加新的数据记录,并返回选单。

  第六个模块——Find()的功能是:按要求查询相关的信息,如果找到了,则显示该信息,如果未找到,则提示文件中没有该信息,并返回选单。

  第七个模块——Alter()[的功能是:修改某条记录的信息,如果未找到要修改的记录,则提示系统中无此记录,并返回选单。

  第八个模块——Delete()的功能是:删除某条记录,如果未找到要删除的记录,则提示通讯录中没有,并返回选单。

  第九个模块——List()的功能是:显示所有记录。
一、用链表或者顺序表实现以下系统,完成线性表的建立(至少包括10个结点),以及线性表中信息(结点)的插入、查找、删除、修改、输出等操作,具体的模块要求见上方的“总的模块要求”。
建议用“文件”存储数据。
1.通讯录管理系统的设计与实现(1)通讯者信息包括:编号(charnum[10])、姓名(charname[10])、性别(charsex[10])、电话(charphone[20])(2)除了总的模块要求外,还需统计通讯录中男性人数及女性人数,并求出通讯录中的男女比例。
男女比例。
2025/3/12 8:27:04 5KB Java 数据结构 链表
1
从百度百科词条知识库中爬取下来的百万条百科知识,可用于自然语言处理、QA问答、知识图谱、实体识别、关系抽取等技术研究
2025/3/11 22:35:45 49.58MB 百度百科 语料库 结构化数据 关系型
1
MATLAB人类行走仿真-human.zip本帖最后由jiaerse于2015-7-120:59编辑一个用MATLAB写的人类行走仿真程序,可以通过界面上的滚动条来调整人的行走姿态,运行压缩包里面的m文件即可。
压缩包human是将该程序生成的.exe文件。
2025/3/11 20:35:58 1.24MB matlab
1
oppo手机解锁国外售后官方专用解锁(适用于所有OPPO手机型号)使用时注意端口的连接1:解压的此解锁.救砖软件包文件夹中.找到"OPPO国外售后解锁恢复专用软件包.exe"运行它2:端口:选你手机连电脑后的COM(用上面三种方法任选一种连电脑)3:速率:460800OPPOunLock:Flash4:打勾:账户/账号锁(如果手机是有账号锁造成开机让输账号锁或者是验证手机邮箱锁的打勾这个)打勾:指纹/屏幕密码锁(如果您手机是设了数字或者九宫格和图案锁.及指纹锁的打勾这个)5:PC处调取此解压包里的"OPPOwipeCHE"6:平台上会显示准备就绪7:.点击平台上的"开始擦除"进行手机解锁.进度条走完后直到显示平台上显示PASS完成提示"恭喜!擦除已成功!"手机此时你按电源键关机再开机.启动完成打电话这些试机即可!
2025/3/9 19:27:21 44.25MB oppo手机解锁
1
项目进度计划表,自动生成甘特图。
修改和删除进度记录,自动根据设置的开始和结束日期,生成甘特图标。
简单实用。
注意:需在右侧图表中,选择设置坐标轴格式-坐标轴选项-设置最小值和最大值,用于匹配设置的计划时间范围。
可以先设置大的范围,然后再根据大小距离调整,使得显示的进度条恰好在右图范围内。
好用
2025/3/9 18:46:44 51KB 项目进度表
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡