单片机,特别是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
前言1引言11.1什么是操作系统?31.1.1所有延长机器的作业系统41.1.2作为一个资源管理器的作业系统61.2操作系统的历史71.2.1第一代(1945年至1955年)真空管71.2.2第二代(1955年至1965年)晶体管和批处理系统81.2.3第三代(1965年至1980年)的集成电路101.24第四代(1980年至今)个人电脑151.3计算机硬件检查19l.3.1处理器191.3.2内存231.3.3磁盘261.3.4胶带271.3.5I/O设备27(I/O即输入输出)1.3.6总线3013.7启动计算机331.4操作系统动物园331.4.1大型机操作系统341.4.2服务器操作系统341.4.3多处理器的操作系统341.4.4个人电脑操作系统351.4.5掌上电脑操作系统351.4.6嵌入式操作系统.351.4.7传感器节点的操作系统361.4.8实时操作系统361.4.9智能卡操作系统371.5操作系统的概念371.5.1流程381.5.2地址空间401.5.3文件401.5.4输入/输出431.5.5保护441.5.6壳牌441.5.7系统发育个体发育重演461.6系统调用491.6.1流程管理系统调用521.6.2文件管理系统调用561.6.3目录管理系统调用571.6.4杂项系统调用581.6.5在Windows的Win32API591.7操作系统结构621.7.1单片系统621.7.2分层系统631.7.3微内核641.7.4客户-服务器模型671.7.5虚拟机671.7.6出的内核711.8根据C的WORLD721.8.1C语言721.8.2头文件731.8.3大的编程项目741.8.4运行时模型751.9操作系统上的研究761.10本书的其余部分的概要771.11公制单位781.12概要792进程和线程2.1工序832.1.1过程模型842.1.2进程创建862.1.3进程终止882.1.4流程层次结构892.1.5进程国家902.1.6实施流程912.1.7多多建模的建模932.2螺纹952.2.1线程使用情况952.2.2古典的线程模型1002.2.3POSIX线程1042.2.4在用户空间中实现的线程1062.2.5在内核中实现的线程1092.2.6混合实现1102.2.7调度激活1112.2.8弹出式线程1122.2.9使单线程代码中使用多线程技术1142.3进程间通信1172.3.1静态条件1172.3.2关键区域1192.3.3忙等待的互斥1202.3.4睡眠和唤醒1252.3.5信号灯1282.3.6互斥1302.3.7显示器1342.3.8消息传递1402.3.9壁垒1442.4调度1452.4.1调度1452.4.2批处理系统的调度1522.4.3调度互动系统1542.4.4调度实时系统1602.4.5政策与机制1612.4.6线程调度1622.5经典的IPC问题1632.5.1哲学家就餐问题1642.5.2读者和作者的问题1672.6进程和线程的研究1682.7概要169习题95  第3章存储管理99  3.1无存储器抽象99  3.2一种存储器抽象:地址空间101  3.2.1地址空间的概念101  3.2.2交换技术103  3.2.3空闲内存管理104  3.3虚拟内存106  3.3.1分页107  3.3.2页表108  3.3.3加速分页过程109  3.3.4针对大内存的页表111  3.4页面置换算法113  3.4.1最优页面置换算法114  3.4.2最近未使用页面置换算法114  3.4.3先进先出页面置换算法115  3.4.4第二次机会页面置换算法115  3.4.5时钟页面置换算法116  3.4.6最近最少使用页面置换算法116  3.4.7用软件模拟lru117  3.4.8工作集
2025/2/26 1:24:41 84.5MB 操作系统
1
C#开发Unity3D飞机大战源文件和发布文件,带GUI登录界面,用户名密码都是111
2025/1/21 10:24:57 14.81MB Unity3D 飞机大战
1
用西门子1200PLC带V90走EPOS模式时,用111报文时需要用到FB284功能块,本文档详细介绍了FB284的应用
2024/11/28 9:50:15 973KB 西门子
1
初始IP地址是192.168.1.111,通过对PB7的操作来实现缺省值和flash之间的切换,设置好的参数写入flash,w5500接的是SPI2,单片机是stm32f103c8t6。
第一个网页没有任何修改权限,只有输入登录密码(初始密码:123456或者万能密码:765997)进入修改页面,可以修改参数,包括登录密码都可以修改。
浏览器用的是IE,程序编译会有20个warning,请忽略,不是语法错误,不影响任何使用。
2024/11/15 1:42:20 4.69MB web
1
倾情奉献,完全可以照抄。
实验一运算器实验实验二移位运算实验实验三存储器读写和总线控制实验附加实验总线控制实验实验五微程序设计实验一、实验目的:1. 掌握运算器的组成及工作原理;
2. 了解4位函数发生器74LS181的组合功能,熟悉运算器执行算术操作和逻辑操作的具体实现过程;
3. 验证带进位控制的74LS181的功能。
二、预习要求:1. 复习本次实验所用的各种数字集成电路的性能及工作原理;
2. 预习实验步骤,了解实验中要求的注意之处。
三、实验设备:EL-JY-II型计算机组成原理实验系统一套,排线若干。
.........八、行为结果及分析:实验数据记录如下表:DR1 DR2 S3S2S1S0 M=0(算术运算) M=1 Cn=1无进位 Cn=0有进位 (逻辑运算) 理论值 实验值 理论值 实验值 理论值 实验值04H 06H 0000 F=(04) F=(04) F=(05) F=(05) F=(05) F=(05)04H 06H 0001 F=(0A) F=(0A) F=(0B) F=(0B) F=(FC) F=(FC)04H 06H 0010 F=(FD) F=(FD) F=(FE) F=(FE) F=(00) F=(00)04H 06H 0011 F=(FF) F=(FF) F=(00) F=(00) F=(FD) F=(FD)04H 06H 0100 F=(04) F=(04) F=(05) F=(05) F=(F9) F=(F9)04H 06H 0101 F=(0A) F=(0A) F=(0B) F=(0B) F=(F9) F=(F9)04H 06H 0110 F=(FD) F=(FD) F=(FE) F=(FE) F=(FD) F=(FD)04H 06H 0111 F=(FF) F=(FF) F=(00) F=(00) F=(00) F=(00)经过比较可知实验值与理论值完全一致。
此次实验的线路图的连接不是很难,关键是要搞清楚运算器的原理,不能只是盲目的去连线。
在线路连接完成后,就按照要求置数,然后查看结果,与理论值比较。
如果没有错误就说明前面的实验中没有出现问题;
否则,就要重新对照原理图检查实验,找出错误,重新验证读数。
九、设计心得、体会:这次课程设计我获益良多,平时我们能见到的都是计算机的外部结构,在计算机组成原理的学习中,逐步对计算机的内部结构有了一些了解,但始终都停留在理论阶段。
而在本次实验,让我们自己设计8位运算器并验证验证运算器功能发生器(74LS181)的组合功能,让我对运算器的内部结构有了更深的了解,并且对计算机组成原理也有了更深层次的理解,同时这次课程设计还锻炼了我的实验动手能力,也培养了我的认真负责的科学态度。
这次课程设计要求连线仔细认真,不能有半点错误,在刚做这个实验的时候,我就由于粗心没有正确的设置手动开关SW-B和ALU-B,导致存入的数据不正确。
 我在连线过程中也自己总结出了避免出错的方法,就是在接线图上将已经连接好的部分作上记号,连接完后再检查一遍各个分区的条数是否和实验接线图上的一样,如果一样就可以进行下面的实验步骤,就算出错了,改起来也容易多了。
2024/10/14 9:05:06 1.22MB 计算机实验
1
GDI+SDK参考(翻译版本)序言 4目标 4适用范围 4适用读者 4运行环境 4文档组织 4相关主题 4GDI+的安全考虑 6检验构造函数调用成功与否 6分配缓冲区 6错误校验 8线程同步 9相关主题 10关于GDI+ 11GDI+介绍 11GDI+概览 11GDI+的三个组成部分 11基于类的接口架构 12GDI+提供了哪些新东西? 12新特征 12编程模式的改变 15线条、曲线和图形 19矢量图概览 19钢笔、线条和矩形 20椭圆和弧 22多边形 22基数样条 23贝塞尔样条 24路径 25画刷和填充图形 27开放与闭合曲线 29区域 30裁剪 31路径平直化 32线条和曲线的抗锯齿功能 32图象、位图和图元文件 33位图类型 34图元文件 37绘制、定位和复制图片 39裁剪和缩放图象 40坐标系统和转换 42坐标系统类型 42以矩阵来表示转换 44全局和局部转换 48图形容器 51使用GDI+ 56使用入门 56绘制线条 56绘制字符串 58使用钢笔绘制线条和形状 59使用钢笔绘制线条和矩形 59设置钢笔的宽度和对齐方式 60绘制具有线帽的线条 61联接线条 62绘制自定义虚线 62绘制用纹理填充的线条 63使用画笔填充形状 63用纯色填充形状 64用阴影图案填充形状 64用图像纹理填充形状 64在形状中平铺图像 65用渐变色填充形状 68使用图像、位图和图元文件 68加载和显示位图 68加载和显示图元文件 69记录图元文件 69剪裁和缩放图像 71旋转、反射和扭曲图像 72缩放时使用插值模式控制图像质量 73创建缩略图像 75采用高速缓存位图来提高性能 76通过避免自动缩放改善性能 76读取图像元数据 77使用图像编码器和解码器 83列出已安装的编码器 83列出已安装的解码器 84获取解码器的类标识符 86获取编码器的参数列表 88将BMP图像转换为PNG图像 100设定JPEG的压缩等级 101对JPEG图像进行无损变换 102创建和保存多帧图像 105从多帧图像中复制单帧 107Alpha混合线条和填充 109绘制不透明和半透明的线条 109用不透明和半透明的画笔绘制 110使用复合模式控制Alpha混合 111使用颜色矩阵设置图像中的Alpha值 112设置单个象素的alpha值 114使用字体和文本 115构造字体系列和字体 115绘制文本 116格式化文本 117枚举已安装的字体 120创建专用的字体集合 122获取字体规格 126对文本使用消除锯齿效果 130构造并绘制曲线 131绘制基数样条曲线 131绘制贝塞尔样条 133用渐变画刷填充形状 134创建线性渐变 134创建路径渐变 137将Gamma校正应用于渐变 144构造并绘制路径 145使用线条、曲线和形状创建图形 145填充开放式图形 147使用图形容器 147管理Graphics对象的状态 148使用嵌套的Graphics容器 151变换 154使用世界变换 154为什么变换顺序非常重要 155使用区域 156对区域使用点击检测 156对区域使用剪辑 157对图像重新着色 158使用颜色矩阵对单色进行变换 158转换图像颜色 160缩放颜色 161旋转颜色 164剪取颜色 166使用颜色重映射表 168打印 169将GDI+输出至打印机 169显示一个打印对话框 172通过提供打印机句柄优化打印 173附录:GDI+参考 176
2024/10/10 11:31:03 1.75MB GDI+ GDI+中文 GDI+帮助
1
VisualBasic.NET提供了大量的工具和语言方面的功能。
当然,不可能用一本书包含VisualBasic.NET的所有内容,这些内容要用一个书库来容纳。
本书的目的是让您尽快入门,它相当于一个路标,可以指导您的学习。
在介绍完创建应用程序的基础知识后(如创建窗口和对话框,如何用代码处理突发事件,什么是面向对象的程序设计,以及如何在应用程序中使用它等)。
目录:第1章初识VisualBasic.NET11.1Windows和DOS编程11.2安装VisualBasic.NET31.3VisualBasic.NET集成开发环境71.3.1配置文件设置页71.3.2Projects选项卡71.3.3菜单81.3.4工具栏91.4创建简单的应用程序101.4.1VisualStudio.NET集成开发环境中的窗口121.4.2工具箱141.4.3改进型匈牙利表示法171.4.4代码编辑器181.5使用帮助系统211.6小结231.7练习23第2章Microsoft.NETFramework242.1Microsoft的信心来自于Windows242.1.1MSN1.0252.1.2.NET理念252.1.3.NET与Java有些类似262.1.4现在所处的阶段272.2为Windows编写软件272.2.1.NETFramework类282.2.2执行代码292.3公共语言运行库302.3.1载入并执行代码312.3.2应用程序隔离312.3.3安全性312.3.4互操作322.3.5异常处理322.4通用类型系统和公共语言规范322.5小结332.6练习33第3章编写软件343.1信息和数据343.1.1算法343.1.2编程语言353.2变量363.3注释和空白383.3.1注释383.3.2空白393.4数据类型393.4.1使用数字393.4.2使用字符串453.4.3使用日期523.4.4布尔型583.5存储变量583.5.1二进制593.5.2位和字节593.5.3值的表示603.5.4值的转换613.6方法633.6.1使用方法的原因633.6.2创建方法673.6.3选择方法名称693.6.4作用域703.7小结723.8练习72第4章流程控制734.1做出决策734.2If语句734.2.1Else语句754.2.2可进行多重选择的ElseIf语句764.2.3嵌套的If语句774.2.4单行If语句784.2.5比较运算符784.2.6字符串比较864.3SelectCase语句874.3.1使用SelectCase语句884.3.2不区分大小写的SelectCase语句914.3.3多重选择934.3.4CaseElse语句954.3.5SelectCase中的不同数据类型964.4循环964.4.1For…Next循环964.4.2ForEach…Next循环1004.4.3Do…Loop循环1014.4.4嵌套循环1074.4.5提前退出循环1084.4.6死循环1104.5小结1114.6练习111第5章处理数据结构1125.1数组1125.1.1定义和使用数组1125.1.2用值初始化数组1205.2枚举1215.2.1使用枚举1215.2.2确定状态1245.2.3设置无效值1275.3常量1275.3.1使用常量1285.3.2改变常量1295.3.3各种常量类型1305.4结构1305.4.1创建结构1305.4.2为结构添加属性1335.5集合和列表1335.5.1使用数组列表1345.5.2从数组列表中进行删除操作1375.5.3显示数组列表中的项1405.5.4集合1415.6用散列表创建查询表1445.6.1使用散列表1455.6.2Remove.RemoveAt和Clear方法1485.6.3区分大小写1505.7高级数组操作1525.8小结1545.9练习155第6章构建Windo
2024/8/26 10:30:34 11.93MB VB.NET 入门经典 (第三版) vb.net
1
《VisualC++MFC编程实例》配套代码目录译者序前言第一部分基础知识第1章窗口 21.1窗口和API环境 21.1.1三种类型窗口 21.1.2客户区和非客户区 31.2窗口和MFC环境 41.3怎样应用MFC创建一个窗口 51.4怎样使用MFC销毁一个窗口 91.4.1捆绑到一个已有的窗口 91.4.2窗口类 101.4.3窗口进程 101.5怎样使用MFC创建一个窗口类 111.5.1使用AfxRegisterWndClass()函数注册一个窗口类 111.5.2使用AfxRegisterClass()函数创建一个窗口类 121.6怎样销毁一个MFC窗口类 141.7厂商安装的窗口类 141.8其他类型窗口 151.9桌面窗口 161.10小结 16第2章类 182.1基类 182.1.1CObject 182.1.2CCmdTarget 192.1.3CWnd 192.2应用程序、框架、文档和视图类 192.2.1CWinApp(O/C/W) 202.2.2CView(O/C/W) 212.3其他用户界面类 222.3.1通用控件类 232.3.2菜单类 232.3.3对话框类 242.3.4控制条类 242.3.5属性类 252.4绘图类 252.4.1设备环境类 252.4.2图形对象类 252.5文件类 262.6数据库类 262.6.1ODBC类 262.6.2DAO类 272.7数据集类 272.8其他数据类 272.9通信类 282.10其他类 292.11小结 31第3章消息处理 323.1发送或寄送一个消息 323.1.1发送一个消息 323.1.2寄送一个消息 323.1.3发送一个消息与寄送一个消息的比较 323.2怎样使用MFC发送一个消息 333.3怎样用MFC寄送一个消息 333.4三种类型的消息 343.4.1窗口消息 343.4.2命令消息 343.4.3控件通知 343.5MFC怎样接收一个寄送的消息 363.6MFC怎样处理一个接收到的消息 363.7处理用户界面的对象 443.8创建自定义窗口消息 453.8.1静态分配的窗口消息 453.8.2动态分配的窗口消息 463.9重定向消息 473.9.1子分类和超分类 473.9.2用MFC子分类窗口 483.9.3重载OnCmdMsg() 493.9.4使用SetWindowsHookEx() 493.9.5使用SetCapture() 493.9.6专有的消息泵 503.10小结 50第4章绘图 514.1设备环境 514.2在MFC环境中创建一个设备环境 524.2.1屏幕 524.2.2打印机 534.2.3内存 544.2.4信息 544.3绘图例程 554.3.1画点 554.3.2画线 554.3.3画形状 554.3.4形状填充和翻转 554.3.5滚动 564.3.6绘制文本 564.3.7绘制位图和图标 564.4绘图属性 564.4.1设备环境属性 574.4.2画线属性 584.4.3形状填充属性 584.4.4文本绘制属性 584.4.5映像模式 594.4.6调色板属性 624.4.7混合属性 624.4.8剪裁属性 634.4.9位图绘制属性 644.5元文件和路径 654.5.1元文件 654.5.2路径 664.6颜色和调色板 664.6.1抖动色 674.6.2未经抖动色 674.6.3系统调色板 674.6.4使用系统调色板 684.6.5动画色 714.7控制什么时候在哪里绘图 714.7.1处理WM_PAINT 714.7.2只绘制被无效化的
2024/7/20 14:29:27 4.61MB Visual C++ MFC编程实例源代码
1
自然语言处理综论中文第2版PDF以及最新的英文第3版pdf
2024/7/19 9:04:22 165.1MB nlp 自然语言处理
1
共 76 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡