嵌入式系统与开发技术复习要点.ppt_第1页
嵌入式系统与开发技术复习要点.ppt_第2页
嵌入式系统与开发技术复习要点.ppt_第3页
嵌入式系统与开发技术复习要点.ppt_第4页
嵌入式系统与开发技术复习要点.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式系统与发技术重点内容,计算机科学与技术学院,马维华 ,第1章 概念及基本方法 第2章 工作模式、存储模式、流水线 第3章 基本常用指令的使用 第6章 端口组件、UART、PWM定时器、 WDT、ADC组件,嵌入式系统及三要素,定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 简单定义:嵌入到对象体系中的专用计算机系统。 三要素:嵌入式系统的三个基本要素是嵌入性、专用性与计算机系统。 (1)嵌入性是把软件嵌入到Flash存储器中, (2)专用性是指针对某个具体应用领域和场合,量体裁衣式的定制适用该场合的专用系统, (3)计算机系统是指必须具有计算机系统的组成,核心是计算机系统。 三个要素决定了嵌入式系统是嵌入到对象体系中的一种专用的计算机系统。,嵌入式系统設計与开发原则与步驟,1.設計与开发原則 既然嵌入式系统是嵌入到对象体系中的专用的计算机系统,因此嵌入式系统设计的基本原则:物尽其用。这一原则表明,嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,以最小成本实现更高的性能,同时尽可能采用高效率的设计算法,以提高系统的整体性能,换句话说同,“物尽其用”就是“够用就好”,以最高性价比来设计嵌入式应用系统。 2、设计与开发步骤 嵌入式系统的设计步骤包括需求分析、体系结构设计、硬件设计,软件设计,执行机构设计、系统集成和系统测试。各个阶段之间往往要求不断的修改,直至完成最终设计目标。,ARM存储模式,关于存储模式:大端模式和小端模式,靠GPE8(ENDIAN)高低电平决定,高电平大端模式,低电平小端模式。让GPE8工作于功能1模式控制。掌握大小端模式存储结构。 已知一个32位的一个字0x87654321,存放在内存0x120000040x12000007中,指出对于大端模式和小端模式下,字节0x65存放的地址。,ARM指令流水线,关于指令流水线: ARM采用指令流水线技术。不同内核指令流水线的级数不同。采用指令流水线的作用是提高指令执行效率。有3、5、6、7、8级不等。 对于一个具有1条8级指令流水线的ARM处理器,假设每1级所需要的时间为1ns,求这种ARM处理器执行4000条指令最快所需要的时间。如果有两条这样的指令流水线那?,ARM常用指令,熟悉常用ARM汇编指令,能阅读简单程序回答问题:需要掌握的指令。 MOV MNV LDR、LDRB、LDRH STR ORR AND B 注意条件域 ARM伪指令 LDR,ADD MUL CMP TST B BCC BHI BEQ BCS BLS BGE BLT BGT BLE,ARM指令条件域,ARM芯片选型,基本方法:根据需求,对照ARM芯片的技术要点去按照够用就好,略有余量的基本原则来选择。,S3C44B0的端口組件及應用,多功能GPIO的配置方法: 1、端口配置寄存器PCONAPCONG决定AG端口的功能 2、端口数据寄存器PDATAPDATG端口AG的数据,可输入输出 3、上拉电阻寄存器PUPCPUPG决定CG端口是否内部上拉 4、特殊上拉电阻寄存器 SPUPR决定数据总线是否上拉,S3C44B0的UART开发應用,对于S3C44B0,已知MCLK60MHz,阅读程序回答问题: ARM汇编语言如下,试说明完成的功能。 LDR R0,=rPCONA LDR R1,=0x3FF STR R1,R0 ;A口功能2 LDR R0,=rPCONB LDR R1,=0x7FF STR R1,R0 ;B口功能2 LDR R0,=rPCOND MOV R1,=0x0055 STR R1,R0 ;D口中GPD7GPD4输入,GPD3GPD0输出 LDR R0,=rPCONF LDR R1,=0x120000 STR R1,R0 ;GPF6,7为UART1RXD和TXD,其余GPF为输出 LDR R0,=rPCONG MOV R1,#0xFFFF STR R1,R0 ;F口为外部中断 解答:具体功能见注释!,S3C44B0的UART組件及开发應用,常用UART寄存器 1、UART线路控制寄存器ULCON0和ULCON1 决定字符格式(数据位数、停止位、奇偶校验位,红外和正常模式) 2、UART控制寄存器UCON0和UCON1 决定中断类型、发送和接收触发方式、接收和发送中断允许等) 3、UART发送接收状态寄存器UTRSTAT0和UTRSTAT1反映接收和发送状态 4、 UART发送接收数据寄存器UTXH0和UTXH1保持发送和接收的数据 5、UART波特率发生器决定通信波特率 UBRDIVn =INT(MCLK/(波特率16)+0.5)-1,S3C44B0的UART开发應用,利用S3C44B0进行串行通信,已知MCLK60MHz,阅读程序回答问题: LDR R0,rPCONE ORR R1,R0,#0x28 00 10 10 00 STR R1,R0;写PCONE使GPE1GPE2为TXD0和RXD0用于串行通信功能 LDR R0,rUFCON0 MOV R1,0 STR R1,R0 ;UFCON00禁止FIFO LDR R0,rULCON0 ORR R1,0x23 ;00100011 STR R1,R0 ;字符格式为:8位数据,1位停止位,奇校验 LDR R0,rUCON0 ORR R1,R0,#0xC1 STR R1,R0 ;写UART0控制寄存器使允许接收中断正常接收发送 LDR R0,rUBRDIV0 LDR R1,=325 STR R1,R0 ;设定波特率为11520BPS 1、说明本程序完成的功能 2、串行通信波特率是多少? 3、对程序进行注释 解答:1、本程序段完成的是对UART0进行初始化,使用GPE1和GPE2用于UART0的TXD0和RXD0进行串行通信,通信字符格式为8位数据,1位停止位,奇校验,禁止FIFO,允许接收中断,正常接收和发送。 2、串行通信波特率根据UBRDIV0MCLK/(波特率16)0.5怪整数 所以:波特率MCLK/(UBRDIV0+0.5)*16)=60000000/(325.5*16)=11520bps 3、注释如上。,S3C44B0的PWM組件及开发應用,常用PWM寄存器 1、定时器配置寄存器TCFG0决定输入给定时器的时钟频率的预分频系数 2、定时器配置寄存器TCFG1决定输入给定时器的时钟频率的除数值 3、定时器控制寄存器TCON决定定时器是否自动重装、是否开始定时停止定时,是否输出反转,是否允许死区控制等。 4、 定时器计数寄存器TCNTB0TCNTB5和比较寄存器TCMPB0TCMPB5,S3C44B0的PWM开发應用,用PWM的TOUT1和TOUT2分别控制两个指示灯LED1和LED2,要求TOUT11时LED1亮,TOUT21时LED2亮,编程让LED1以0.5秒闪亮(即0.5秒亮,0.5秒灭,循环),LED2以2秒闪亮。T1/T2定时器指定预分频系数199,除法器值16,MCLK60MHz。 解答:LED1闪亮0.5秒:T1设置0.5S定时且反转;LED2闪亮:T2设置2S定时且反转配置寄存器TCFG00xC7C7 (T1和T2为1990xC7预分频) 配置寄存器TCFG10x330 (T1和 T2除法器值为16) 定时器输入时钟频率MCLK/(预分频值1)/(除法器值)60000000/(199+1)/16=18750Hz 定时0.5秒,T1计数缓冲寄存器TCNTB1的值0.5187509375 定时2秒,T2计数缓冲寄存器TCNTB2的值21875037500 LDR R0,rTCFG0 MOV R1,#0xC7C7 或LDR R1,0xC7C7 STR R1,R0 ;写TCFG0,分频系数为1990xC7 LDR R0,=rTCFG1 LDR R1,=0x330 STR R1,R0 ;写TCFG1,除法器值16 LDR R0,=rTCNTB1 LDR R1,=9375 STR R1,R0 ;写TCNTB1 LDR R0,=rTCNTB2 LDR R1,=37500 STR R1,R0 ;写TCNTB2 LDR R0,=rTCON ; ORR R1,R0, #0xDD00 ;T1和T2自动重装/反转、启动定时器 STR R1,R0 ;写TCON,S3C44B0的WDT組件及开发應用,常用WDT寄存器 1、WDT控制寄存器WTCON决定是否允许复位、是否允许中断以及决定预分频系数和时钟因子 2、WDT数据寄存器WTDAT和计数寄存器WTCNT 3、WDT定时输入时间: T_WDT=1/(MCLK/预分频系数1)/分频系数 4、WDT复位时间: T_RST=WTCNTT_WDT,S3C44B0的WDT开发應用,如果MCLK=40 MHz,采用预分频值为99,分频系数为64,要使WDT的定时时间为10秒,允许复位,禁止中断,写出WDT初始化程序片段。 解答:t_watchdog = 1/( MCLK / (预分频值1) /分频系数 ) = 1/(40000000/100/64) = 160us 溢出时间t = WTCNT*t_watchdog10S = WTCNT*160us10000000us WTCNT62500 LDR R0,rWTCON LDR R1,=0xF939 STR R1,R0;写WDT控制寄存器使禁止中断,允许复位,预分频系数99,分频系数64 LDR R0,rWTCNT LDR R1,=62500 STR R1,R0 ;写WDT计数寄存器使计数值为62500,定时10秒,S3C44B0的ADC組件及开发應用,常用ADC寄存器 1、ADC控制寄存器ADCCON决定是否允许启动、选择ADC通道、反映ADC转换状态 2、ADC预分频寄存器ADCPSR决定预分频系数 3、ADC转换时间: TADC2(ADCSPR的值1)16/MCLK 4、ADC数据寄存器寄存转换后的10位数字量 5、对ADC操作三要素: (1)选择通道并启动AD变换 (2)查询状态(是否转换结束) (3)读取转换结果,S3C44B0的ADC开发應用,如果MCLK64MHz 1、让ADC转换时间为10uS,写出程序片段 解答:ADC转换时间: TADC2(ADCSPR的值1)16/MCLK ADCPSR=10/32*64-1=19 主要是写ADCPSR寄存器,写寄存器三条指令: LDR R0,=rADCPSR MOV R1,#19 STR R1,R0,S3C44B0的ADC开发應用,如果MCLK64MHz 2、将ADC通道3转换的结果存入R2中,如果结果小于30让R3=0,大于90,让R30xFFFFFFFF,其余让R3R2。 解答:用三步骤完成转换结果的提取: ADCCON0x0F START: LDR R0,rADCCON MOV R1,#0x0F STR R1,R0 ;写AD

温馨提示

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

评论

0/150

提交评论