本书是在第3版《MCS:51单片机应用设计》一书的基础上,从应用的角度,详细地引见了MCS:51单片机的硬件结构、指令系统、各种硬件接口设计、各种常用的数据运算和处理程序、接口驱动程序以及MCS:51单片机应用系统的设计,并对MCS:51单片机应用系统设计中的抗干扰技术以及各种新器件也作了详细的引见。
本书突出了选取内容的实用性、典型性。
书中的应用实例,大多来自科研工作及教学实践,且经过检验。
内容丰富、详实。
本书可作为工科院校的本科生、研究生、专科生单片机课程的教材以及毕业设计的参考资料,也可供从事自动控制、智能、仪器、仪表、电力、电子、机电一体化以及各类MCS:51单片机应用的工程技术人员参考。
第1章单片机概述1.1什么是单片机1.2单片机的历史及发展概况1.38位单片机的主要生产厂家和机型1.4单片机的发展趋势1.5单片机的应用1.6MCS-51系列单片机思考题及习题第2章MCS—51单片机的硬件结构2.1MCS-51单片机的硬件结构2.2MCS-51的引脚2.2.1电源及时钟引脚2.2.2控制引脚2.2.3I/O引脚2.3MCS-51的微处理器2.3.1运算器2.3.2控制器2.4MCS-51存储器的结构2.4.1程序存储器2.4.2内部数据存储器2.4.3特殊功能寄存器(SFI{)2.4.4位地址空间2.4.5外部数据存储器2.5并行L/O端口2.5.1P0口2.5.2P1口2.5.3p2口2.5.4P3口2.5.5PO-P3口电路小结2.6时钟电路与时序2.6.1时钟电路2.6.2机器周期和指令周期2.6.3MCS-51的指令时序2.7MCS-51的复位和复位电路2.7.1复位操作2.7.2复位电路思考题及习题第3章MCS—51单片机指令系统3.1指令系统概述3.2指令格式3.3指令系统的寻址方式3.4MCS-51单片机指令系统分类引见3.4.1数据传送类指令3.4.2算术操作类指令3.4.3逻辑运算指令3.4.4控制转移类指令3.4.5位操作指令3.5MCS-51汇编语言的伪指令思考题及习题第4章MCS—51的中断系统4.1中断的概念4.2MCS-51中断系统的结构4.3中断请求源4.4扣断控制4.4.1中断允许寄存器m4.4.2中断优先级寄存器IP4.5中断响应4.6外部中断的响应时间4.7外部中断的触发方式选择4.7.1电平触发方式4.7.2跳沿触发方式4.8中断·清求的撤消4.9中断服务程序的设计4.10多外部中断源系统设计4.10.1定时器/计数器作为外部中断源的使用方法4.10.2中断和查询结合的方法4.10.3用优先权编码器扩展外部中断源思考题及习题第5章MCS—51的定时器/计数器5.1定时器/计数器的结构5.1.1工作方式寄存器TMOD5.1.2定时器/计数器控制寄存器TCON5.2定时器/计数器的4种工作方式5.2.1方式05.2.2方式15.2.3方式25.2.4方式35.3定时器卅数器对外部计数输入信号的要求5.4定时器卅数器编程和应用5.4.1方式0应用5.4.2方式1应用5.4.3方式2的应用5.4.4方式3的应用5.4.5门控制位CATE的应用—测量脉冲宽度5.4.6实时时钟的设计5.4.7运行中读定时器/计数器思考题及习题第6章MCS—51的串行口6.1串行口的结构6.1.1串行口控制寄存器SCON6.1.2特殊功能寄存器PCON6.2串行口的4种工作方式6.2.1方式06.2.2方式16.2.3方式26.2.4方式36.3多机通讯6.4波特率的设定6.4.1波特率的定义6.4.2定时器T1产生波特率的计算6.5串行口的编程和应用6.5.1串行口方式1应用编程(双机通讯)6.5.2串行口方式2应用编程6.5.3串行口方式3应用编程(双机通讯)思考题及习题第7章MCS—51扩展存储器的设计7.1概述7.2系统总线及总线构造7.2.1系统总线7.2.2构造系统总线7.2.3单片机系统的串行扩展技术7.3读写控制、地址空间分配和外部地址锁存器7.3.1存储器扩展的读写控制7.3.2存储器地址空间分配7.3.3外部地址锁存器7.4程序存储器EPROM的扩展7.4.1EPROM芯片引见7.4.2程序存储器的操作时序7.4.3典型的EPRO
1
本资源为网传资源,为一套比较全的电商项目,系统架构采用SOAdubbo+EasyI实现,资源过大上传乃是下载链接,如有侵权请联系/留言,不多说下面上目录:1.01电商系统介绍2f%Z/C0z%{1l"q+R2.02电商类型介绍6r6J'|.a2F,t6y;_.v#p2J#`3.03电商系统演示介绍!D$C$a1K(q,c4.04电商数据结构介绍5.05电商数据结构设计器8q9r1t3Q(A#T"?#P0w+n6.06电商数据准备7.07后台管理框架搭建8.08spu管理跳转9.09分类下拉列表的加载10.10商品发布的业务逻辑11.1.建表12.2.导数据13.3.统一环境14.4.生成js文件0~*z9y2K/u;k+N8S#l*H:V!Y15.01商品spu参数提交-Q(T&z*U-B,^:q)_16.02商品spu图片上传服务介绍'],M1{0w-x;Z'L.y17.03文件上传工具18.04spu信息发布功能)G'ERg0B(\*X+N&D7p19.05spu动态图片追加%N0H)M.o8~+A20.06spu动态图片追加21.07属性功能管理介绍22.08属性功能管理介绍23.09属性保存功能跳转24.10属性双重集合参数3Z4[5|4D,k,M-G25.11属性保存功能业务层代码3E:v6D1y:N*t5X&Q,|26.12属功能业异步内嵌页8t-|*|7r#@27.13属性集合查询)q&~/W)_9c*r+d:D5Z%Y28.01属性的双重集合查询语句29.02sku功能介绍!m-K+b0K7U*B!o*g3S30.03sku功能跳转31.04客户端js函数中的el表达式32.05异步加载spu列表数据#M&R,\7\3yz-w+a%}(g"^33.06用复选框操作属性列表显示D+k(T;J.J"`2u34.07属性参数的提交)O0o,s0X\!P!@0b&H35.08sku的数据结构说明8m!S+i9k)W4F#?7U36.09sku添加的业务实现1|'bG%[!w/J*Cn;N37.10easyui的介绍38.11easyui的layout初始化介绍-v-C+z#J)e-O*I!G39.12easyui手风琴控件介绍1X/X#\'k%x2N40.13tree控件41.14tab控件:U,|:a!S7?:A$t1?,G42.1.properties%C2@d!}9Z&^2c43.2.主键9D3f9W4J*C"B4M44.3.锚点.F(v2C8q-I#F+G45.01数据表格的用法:e:S'z.T0@8T(`6L46.02combobox的用法;_6}2p3v:O7l*}47.03嵌套布局的用法%L!U!L0]%B48.04easyui同步提交后跳转问题49.05乱码问题!{6|(X*i)u;w!Y'B50.06首页初始化51.07用户登录方法k,`)e/R(F&m5X52.08通过cookie取得用户的个性化信息,J7?0]'A)\6E7n5K53.09通过客户端cookie取得用户的个性化信息0i7],O/}#H:t6@:j)I+i54.10用户个性化信息9b%h5O%p;I"P7z55.11任务总结56.01商品检索介绍57.02商品分类检索介绍7J%Q6L&r:T6N.H8a-E6Y%f"d"S4I58.03商品分类检索sql:Z-N/w:k;}2b9E(w8I59.04商品分类检索列表60.05商品属性检索介绍61.06ajax字符串数组传参62.07ajax字符串json传参&i'g9\7^!e7_63.08表单序列化传参64.09动态sql的设计方法"o#D.?#R%_1X65.10动态sql的实现66.11任务67.1.项目演示
1
汇编写的.LED显示;*****************************;*万年历程序*;*****************************;67H(高两位年)66H(低两位年)65H(月)64H(星期);63H(日)62H(小时)61H(分)60H(秒)57H(农历月)56H(农历日);显示缓冲单元7CH~7BH(4CH~4BH)年低位,7AH~79H(4AH~49H)月,;78H(48H)星期,77H~76H(47H~46H)日,75H~74H(45H~44H)时,;73H72H(43H~42H)分,71H~70H(41H~40H)秒,5EH~5DH(55H~54H)农历年;5CH~5BH(53H~52H)农历月,5AH~59H(51H~50H)农历日;闰年标志为F0,定时器T1为调整时候闪烁用;;
1
%PM调制figure('Name','信号调制进程中波形及其频谱','NumberTitle','off')a0=2;f0=10;fc=50;fs=1000;snr=5;t=linspace(-20,20,60001);pm1=cos(2*pi*f0*t);%信息信号t1=cos(2*pi*fc*t);%载波s_pm=cos(2*pi*fc*t+1*pm1);PM1=fft(pm1);T1=fft(t1);S_PM=fft(s_pm);f=(0:60000)*fs/60001-fs/2;subplot(3,2,1);plot(t(19801:20200),pm1(19801:20200));title('信息信号波形');
2019/6/3 6:16:14 2KB matlab
1
车载以太网规范,1000MBASE-T1,PhysicalLayerSpecificationsandManagementParametersfor1Gb/sOperationoveraSingleTwisted-PairCopperCable
2017/7/7 6:58:43 4.07MB 1GBASE 802.3 a Sing
1
完整的编译原理实验报告关于语法、语义和词法分析器三部分的很全哦一、实验题目表达式两头代码生成二、实验目的熟悉算术表达式的语法分析与两头代码生成原理。
三、实验内容1. 构造算术表达式的四元式翻译文法2. 设计算术表达式的递归下降子程序分析算法3. 设计算术表达的四元式生成算法4. 实现代码并调试运行四、实验要求1、采用递归下降语法制导翻译法,对算术表达式,赋值语句进行语义分析并生成四元式序列.2、输入是语法分析后提供的正确的单词串,输出四元式序列.例如:对于语句串 Begina:=2+3*4;x:=(a+b)/cend#输出的指令如下:(1) t1=3*4(2) t2=w+t1(3) a=t2
1
编译原理-龙书-习题答案,word版。
内容举例:第二章部分习题答案2.1考虑文法 S→SS+|SS*|a证明文法可生成符号串aa+a*解:S→SS*→SS+S*→aS+S*→aa+S*→aa+a*为此符号串构造语法树解:文法生成什么样的语言?证明结论解:将a看作运算数,文法生成语言L={支持加法、乘法的表达式的后缀表示方式} 证明类似2.2题b)=====================================2.2下列文法生成什么样的语言?证明你的结论。
是否有二义性?S→0S1|01解:生成语言L={0n1n|n>=1}证明:1)证文法推导出的符号串都在L中考虑最小语法树,推导出的符号串01显然∈L假定结点数<n的语法树对应的符号串都∈L,考虑结点数=n的语法树S,其结构必为,子树S1结点数<n,因此对应符号串t1∈L,S对应符号串为t=0t11,因此t∈L综合i)、ii),1)得证
2022/9/8 10:37:03 252KB 编译原理 龙书 习题答案
1
附录c编译程序实验实验目的:用c语言对一个简单语言的子集编制一个一遍扫描的编译程序,以加深对编译原理的理解,掌握编译程序的实现方法和技术。
语法分析C2.1实验目的编制一个递归下降分析程序,实现对词法分析程序所提供的单词序列的语法检查和结构分析.C2.2实验要求利用C语言编制递归下降分析程序,并对简单语言进行语法分析.C2.2.1待分析的简单语言的语法实验目的通过上机实习,加深对语法制导翻译原理的理解,掌握将语法分析所识别的语法成分变换为中间代码的语义翻译方法.实验要求采用递归下降语法制导翻译法,对算术表达式、赋值语句进行语义分析并生成四元式序列。
实验的输入和输出输入是语法分析提供的正确的单词串,输出为三地址指令方式的四元式序列。
例如:对于语句串begina:=2+3*4;x:=(a+b)/cend#输出的三地址指令如下:(1)t1=3*4(2)t2=2+t1(3)a=t2(4)t3=a+b(5)t4=t3/c(6)x=t4算法思想1设置语义过程(1)emit(char*result,char*arg1,char*op,char*ag2)该函数功能是生成一个三地址语句送到四元式表中。
四元式表的结构如下:struct{charresult[8];charag1[8];charop[8];charag2[8];}quad[20];(2)char*newtemp()该函数回送一个新的临时变量名,临时变量名产生的顺序为T1,T2,….Char*newtemp(void){char*p;charm[8];p=(char*)malloc(8);k++;itoa(k,m,10);strcpy(p+1,m);p[0]=’t’;return(p);}(2)主程序示意图如图c.10所示。
(2)函数lrparser在原来语法分析的基础上插入相应的语义动作:将输入串翻译成四元式序列。
在实验中我们只对表达式、赋值语句进行翻译。
语义分析程序的C语言程序框架intlrparser(){intschain=0;kk=0;if(syn=1){读下一个单词符号;
schain=yucu;/调用语句串分析函数进行分析/if(syn=6){读下一个单词符号;
if(syn=0&&(kk==0))输出(“success”);}else{if(kk!=1)输出‘缺end’错误;
kk=1;}else{输出’begin’错误;
kk=1;}}return(schain);intyucu(){intschain=0;schain=statement();/调用语句分析函数进行分析/while(syn=26){读下一个单词符号;
schain=statement();/调用语句分析函数进行分析/}return(schain);}intstatement(){chartt[8],eplace[8];intschain=0;{switch(syn){case10:strcpy(tt,token);scanner();if(syn=18){读下一个单词符号;
strcpy(eplace,expression());emit(tt,eplace,””,””);schain=0;}else{输出’缺少赋值号’的错误;
kk=1;}return(schain);break;}}char*expression(void){char*tp,*ep2,*eplace,*tt;tp=(char*)malloc(12);/分配空间/ep2=(char*)malloc(12);eplace=(char*)malloc(12);tt=(char)malloc(12);strcpy(eplace,term());/调用term分析产生表达式计算的第一项eplace/while(syn=13or14){操作符tt=‘+’或者‘—’;
读下一个单词符号;
strcpy(ep2,term());/调用term分析产生表达式计算的第二项ep2/strcpy(tp,newtemp());/调用newtemp产生临时变量tp存储计算结果/emit(tp,eplace,tt,ep2);/生成四元式送入四元式表/strcpy(eplace,tp);}return(eplace);}char*term(void)/仿照函数expression编写/char*factor
1
1、 训练数据准备所有数据均放置于Sample\Build\下,其中Build为数据类型,根据本人需要进行修改,本示例数据为512*512大小GF2建筑,训练数据按照:Sample\Build\train\IMG_T1-----------------------\IMG_LABEL-----------------\val\IMG_T1-----------------------\IMG_LABEL2、 训练参数设置参数和运行皆在dp0_train.py中,主要参数包括:(1) num_epochs,训练批次(2) learning_rate,学习率(3) dataset,步骤一本人构建的数据集名称(4) band,输入数据通道数(波段数)(5) n_class,模型输出通道数(类别)设置好后点击run即可3、 训练模型位置模型结构放与net文件中,生成模型文件pt位于Checkpointspath\4、 预测使用填写参数Checkpointspath,模型位置名称Dataset,待预测数据文件夹Outputpath,输出数据文件夹
2021/11/14 23:13:06 526.96MB pytorch 人工智能 深度学习 语义分割
1
实例1:工业生产线的Petri网模型 有一工业生产线,要完成两项操作,分别为变迁t1和t2表示,变迁t1将进入生产线的半成品s1s2用两个部件s3固定在一起,后构成中间件s4。
然后第2个变迁t2将s4和s5用3个部件s3固定在一起构成中间件s6。
完成t1和t2都需要用到工具s7 假设受空间限制s2s5最多不能超过100件,s4最多不能超过5件,s3最多不能超过1000件。
*
2019/1/2 3:56:26 11.83MB Petri网
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡