冶金行业嵌入式系统应用考点总结中国矿业大学徐海学院信息_第1页
冶金行业嵌入式系统应用考点总结中国矿业大学徐海学院信息_第2页
冶金行业嵌入式系统应用考点总结中国矿业大学徐海学院信息_第3页
冶金行业嵌入式系统应用考点总结中国矿业大学徐海学院信息_第4页
冶金行业嵌入式系统应用考点总结中国矿业大学徐海学院信息_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

10-1Internet技术密集广义上讲DSP狭义上讲,我们更加强调那些使用嵌入式微处理器构成独🖂嵌入式系统壹般由嵌入式微处理器外围硬件设计备嵌入式操作系统及用户应用程序4I/O(A/D、D/A、I/O)ROMUSBLCD1)2)RTOS1(3(4Internet(Internet第2章ARMARMX⑵CISC和RISCⒸCISC:复杂指令集计算机8/2:80%20%CPUCISCRISC冯·⑷ARM和ThumbARMThumbARMARMARMThumbARMThumbThumb1ARM0ARM32CPU为增加处理器指令流的速度,ARM73⑹ARMARM小端格式(little-endian):和大端存储格式相反。低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。ARMlittle/bigendianARM

第三章ARMARMARM32ARM⑴进入ThumbThumb32ARMARMARMARM7TDMI3731R8~R12FIQFIQFIQ⑷R13、R14655ThumbR13R14R14(有些异常有壹个小的固定偏移量R14(LR)ABR14PCR14IRQIRQR14_irqR14IRQIRQIRQR14_irqBA,SPSRCPSRCPSR。4(负(N)、零(Z)、进位(C)和溢出251(ARMThumb)整个地址空间的起始位置(0x00000000)0x00000018bIRQ_SVC_HANDLERIRQ_SVC_HANDLERIRQ_SVC_HANDLERstmfdsp!,{r0-处理器将通用寄存器和返回地址压入堆栈,接着跳转到外部中断请求的中断服务程序中。IRQ_SVC_Vector为外部中断请求的中断向量。壹般来讲,IRQ_SVC_VectorRAMBootloadflash壹般来讲,IRQ_SVC_Vector的地址对应于RAM在异常发生后,ARM7TDMILRLRCPSRSPSRCPSRPCARM7TDMIARMSPSRCPSRT、FI快速中断请求(FIQ)ARM8CPSRFFIQCPSRIIRQ。ARMThumbIRQPCCPSRSUBSPC,R14_abt,#4PCSWIARM7TDMI,ARM7TDMIARMPCnRESET(壹般外部复位引脚电平的变化和芯片的其它复位源会改变这个内核信号),ARM7TDMIPCCPSRCPSRM[4:0]b10011(管理模式CPSRIFCPSRTPC0x00ARMARMCPSRCPSR3.2.3ARM1.寄存器寻址;2.🖂即寻址;3.寄存器移位寻址;4.寄存器间接寻址;5.多寄存器寻址;7.堆栈寻址;8.块拷贝寻址;9.51MOVR0,#0xFF000;将🖂0xFF000R0🖂MOVR0,#0xFF000;将🖂0xFF000R00;ARM16满递增:LDMFA、STMFA空递增:LDMEA、STMEA满递减:LDMFD、STMFD空递减:LDMED、STMEDSTMIAR0!,{R1-R7};将R1~R7R0R0PCBLSUBR1;SUBR1BEQLOOP;LOOP

ARM3.3.3Load/StoreARMARMARMRISCRAMI/ORAMIO、程序数据的访问均要通过加载/存加载(Load):存储(Store):LDR/STRPCARM⑴LDR和STRLDR,STRLDR{cond}{T}Rd,<RdSTR{cond}{T}Rd,<RdLDR{cond}B{T}Rd,<RdSTR{cond}B{T}Rd,<Rd其中,TT,那么即使处理器是在特权模式下,存储系统也将访问见成是在用户模式下进行的。TT。LDR和STR3如:LDRR1,[R0,#0x12];R1<-LDRR1,[R0,-R2];R1<-[R0-4零偏移。如前索引偏移。如程序相对偏移。如后索引偏移。如:LDRRd,[Rn],#-32⑵LDR{cond}HRd,<RdSTR{cond}HRd,<Rd3232和LDR和STRLDRR2,[R5];R5R2LDRBR3,[R2],#-1;R2R3,R2=R2-1STRBR0,[R3,-R8ASR#2];R0->[R3-R8/4],R0LDRHR6,[R2],#2;R2R6160;读出后STRHR1,[R0,#2]!;R1R0+2⑶LDR和 双字:加载/存储俩个相邻的寄存器,64位双字4Op{cond}DRd,label252ARM多寄存器加载/存储指令能够实当下壹组寄存器和壹块连续的内存单元之间传输数据。LDMSTM{cond}<模式cond:8Rn^:1)opLDMR15SPSRCPSRLDM和STM8LDMDA/STMDA、LDMDB/STMDB进行堆栈操作操作时,要先设置堆栈指针(SP),然后使用堆栈寻址指令STMFD/LDMFD、STMED/LDMED、STMFA/LDMFASTMEA/LDMEA数据块传送指令操作过程如下图所示R1,R1’ARMThumb指令集的共同点Load/StoreARM指令集和ThumbARMLOAD/STORE20R0的头元素。R1R01R0代码执行前,R0,R122,R0<0。48R12R13R12,R13,R14使用规则,参数的传递规则CR0~R3R0~R3a0~a3R0~R3R4~R11R4~R11v1~v8。子程序进入时必须保存这些寄存器的值,在返回前必R12IP。在子程序之间的连接代码段中常常有这种使R13SPR13SPR14LRR15PCATPCSARMC//cg()5IMPORTgIMPORTcg()ADDr2,r1,r0;r23*iADDr3,r1,r2;r3STRr3,[sp,#-4]!;5*iBLg;cg()从汇编程序中访问C程序变量CIMPORTLDRLDRr0,[r1];R0 SupportPackage,板级支持包 BSPBSPBootLoader(引导加载程序) 对于不同的嵌入式操作系统,BSP⑴BSP BSP CPU CPUBSP CPU CPU CPU CPUCPU CPU BSP 建🖂 加载且初始化其他系统软件模块(如网络系统、文件系统等 BootLoader(引导加载程序)建🖂 BootLoader ARM0x00000000Bootloader。 BootloaderBootloader⑴BootLoaderⒸ启动加载模式 这种模式也称为自主(Autonomous)BootLoaderRAM BootLoader 因此在嵌入式产品发布的时候,BootLoader②下载模式 BootLoaderRAMBootLoader上的固态存储设备中,BootLoader BootLoaderU-Boot、Blob、VIVI⑵BootloaderPLLRWZI 硬件启动(初始化硬件关闭(关机硬件停用(暂停硬件启用(重新启用读操作(读取数据写操作(写入数据 1)CPU2) 1)2)3)4) 处理机、存储器、I/O I/OI/O 缓冲管理、设备分配、设备处理、设备独🖂 服务用户的观点—OS 1) 2) 3)GUI, CPU睡眠态(DORMANT):就绪态:通过调用俩个函数之壹:OSTaskCreate()OSTaskCreateExt()来建🖂任务,壹旦建🖂任运行态:调用 任务切换过程增加了应用程序的额外负荷,CPU第5章ARM⑴S3C44B0X多功能Ⓒ端口配置寄存器(PCONA-②端口数据寄存器(PDATA-PDATnPC-PGPUPn01//PortF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论