《嵌入式系统开发与应用》教学教案.docx

上传人:太** 文档编号:42306921 上传时间:2022-09-15 格式:DOCX 页数:90 大小:156.38KB
返回 下载 相关 举报
《嵌入式系统开发与应用》教学教案.docx_第1页
第1页 / 共90页
《嵌入式系统开发与应用》教学教案.docx_第2页
第2页 / 共90页
点击查看更多>>
资源描述

《《嵌入式系统开发与应用》教学教案.docx》由会员分享,可在线阅读,更多相关《《嵌入式系统开发与应用》教学教案.docx(90页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、学习情境一走入嵌入式世界任务1嵌入式系统概述学习内容1 .嵌入式系统的由来2 .嵌入式系统的概念3 .嵌入式系统的应用新课引入以广州周立功公司开发的MagicARM2200实验箱为开发平台来介绍嵌入式系统的基 础知识。实验箱展示,并进行资源介绍,引导学生分析与前面所学单片机有什么联系和区别?演示8个LED闪烁一一与单片机相同点展示电脑鼠一ARM核心控制芯片型号是Luminau生产的LM3s615 (Cortex -M3) o电脑 鼠走迷宫竞赛视频。一一比单片机能实现更为复杂的功能新课讲授.嵌入式系统的由来微控制器朝着小型、价廉、高可靠性的方向开展,将微型机嵌入到一个对象体系中, 实现对象体系的

2、智能化控制。嵌入式系统是从计算机技术的开展中别离出来的专用计算 机系统。2、嵌入式系统的概念嵌入式系统和通用计算机系统的区别嵌入式系统与单片机的关系嵌入式系统一般是基于32位嵌入式处理器,从事网络、通信、多媒体等的应用可以把嵌入式系统应用分成高端与低端,把单片机应用理解成嵌入式系统的低端应 用什么是嵌入式系统列举生活中使用嵌入式的实例,引出嵌入式系统的概念。学生操作练习:定义一个数据段,段名为Xufe,属性为读写。C0DE16、CODE32语法格式: CODE 16 (或CODE32)举例:(3)ENTRY语法格式:ENTRYENT RY伪指令用于指定汇编程序的入口点。举例:(4)END语法格

3、式:ENDEND伪指令用于通知编译器已经到了源程序的结尾。举例:(5)EQU语法格式:名称EQU表达式,类型EQU伪指令用于为程序中的常量、标号等定义一个等效的字符名称 举例:Test EQU 50任务实施在ADS软件中编写一段完整的汇编语言程序1 .教师演示2 .学生操作操作步骤:建立工程Prog 1. me p 建立新文件testl.s,汇编程序补充完整;给地址0x40003000定义一个别名ADDR;声明代码段EXAM,只读属性 ;标识程序入口;声明下面代码是32位ARM指令RI,# ADDRR0,#20R0, RI LOOPSTART LDRMOVSTRLOOP B ;程序结束添加文件

4、到工程编译点击Make按钮,进行编译连接.小结本节主要介绍汇编语言程序结构和常用的伪指令。作业定义一个数据段,段名为XPdata,属性为读写。定义一个代码段,段名为XPcode,属性为只读。学习情境二 在ADS环境中开发汇编程序任务3寻址方式任务描述正确判断ARM指令的基本寻址方式任务分析及相关知识点L寻址方式概念根据指令中给出的地址码寻找操作数的真实地址的方式。2.寻址方式种类只介绍5种基本寻址方式立即寻址,寄存器寻址,寄存器间接寻址,寄存器移位寻址,基址寻址。想一想,单片机有几种基本寻址方式立即寻址,寄存器寻址,寄存器间接寻址,直接寻址四种基本寻址方式(1)立即寻址什么是立即寻址?举例说明

5、:SUBS RO,RO,#1MOV R0,#0xFF0000标志:#教师演示:在ADS软件中操作,观察操作结果。立即数满足要求:8位位图什么是8位位图:能够由一个8位常数循环移位偶数位得到。以下常数是否是立即数0x3FC(0xFF2) 0 0xF0000000(0xF0 24) OxFFFF OxFOOOOOOlO学生举3个合法的立即数思考题:所有的8位常数都是合法立即数,对吗?(2)寄存器寻址ARM寄存器37个用户可见的寄存器31个通用32位寄存器,6个状态寄存器各模式可访问的寄存器,分析各寄存器的作用什么是寄存器寻址?举例说明:SUBS R0,R0,R2MOV RO,RI标志:寄存器教师演

6、示:在ADS软件中操作,给寄存器赋值,观察操作结果。(3)寄存器间接寻址什么是寄存器间接寻址?举例说明:SUBS R0,R0,R2MOV RO,RI标志:寄存器与单片机寄存器间接寻址方式比照教师演示:在ADS软件中操作,给寄存器赋值,观察操作结果。(4)寄存器移位寻址ARM指令集特有。什么是寄存器移位寻址?移位操作包括:LSL LSR ROR ASR RRX举例说明:SUBS RO,RO,R2,LSR #2MOV RO,RI,LSL R3标志:移位指令教师演示:在ADS软件中操作,给寄存器赋值,观察操作结果。(5)基址寻址什么是基址寻址?用于访问基址附近的存储单元。如查表等举例说明:LDR R

7、l,R2,#0x03LDR R1,RO,R3,LSL #1标志:寄存器,立即数教师演示:在ADS软件中操作,给寄存器赋值,观察操作结果。任务实施正确判断ARM指令的基本寻址方式SUBS RO, RO, #1LDR RI, RO, R3, LSL #1ANDS RI, RI, R2, LSL R3LDR R2, R3 , #0x0CSUB RO, RI, R2ADD RI, RI, R2MOV RO, #1小结了解5种基本寻址方式的执行方式。作业习题1学习情境二 在ADS环境中开发汇编程序任务4跳转指令任务描述利用跳转指令实现程序的循环。任务分析及相关知识点1 .指令格式 S , , 分别解释指

8、令格式中用到的术语号内的项是必需的,什号内的项是可选的举例AND RI, R2, #OxOFvoperand2第二个操作数可用形式举例 LDR RO, R1, #4X 总结第二个操作数可用格式是什么?常数表达式一必须是8位位图。举例 SUB RI, RI, R2X总结第二个操作数可用格式是什么?寄存器举例 ADD RI, RI, RI, LSL #3X总结第二个操作数可用格式是什么?寄存器移位2 .移位指令LSL (或ASL)操作格式:通用寄存器,LSL (或ASL) 操作数其中,操作数可以是通用寄存器,也可以是立即数(031)。图示法解释操作形式举例说明LSR操作格式:通用寄存器,LSR操作

9、数其中,操作数可以是通用寄存器,也可以是立即数(031)。图示法解释操作形式举例说明ASR操作格式:通用寄存器,ASR操作数其中,操作数可以是通用寄存器,也可以是立即数(031) o图示法解释操作形式举例说明(4) ROR操作格式:通用寄存器,ROR操作数其中,操作数可以是通用寄存器,也可以是立即数(031)。图示法解释操作形式举例说明3.跳转指令(重点)ARM分为5大类指令回忆51单片机的跳转指令,分条件跳转指令和无条件跳转指令ARM跳转指令3条(DB指令格式为:B条件目标地址B指令是最简单的跳转指令。举例:见教材P40(2)BL指令带链接的跳转指令BL指令的格式为:BL条件 目标地址举例(

10、51单片机子程序调用指令的例子,假设为ARM那么是)跳转之前,在寄存器R14中会自动地保存PC的当前值,即把跳转指令的下一条指 令的地址复制到R14 (LR)(3)BX指令带状态切换的跳转指令,实现ARM和Thumb状态间的切换。BX指令的格式为:BX条件目标地址如何判断目标地址处是ARM指令还是Thumb指令?看目标地址的位。是1还是 0.注意:三种跳转指令的区别任务实施利用跳转指令实现程序的循环LOOP MOV RI,#3ADD Rl,#lMOV R2,R1B LOOP;让程序跳转到LOOP处循环执行这段代码 小结介绍了指令格式、移位指令和三条跳转指令。作业写出三条跳转指令的区别。学习情境

11、二 在ADS环境中开发汇编程序任务6条件码执行任务描述比拟 RO, R1 的大小,假设 ROR1,那么 RO=RO+1, R0W1,那么 R1=R1+1任务分析及相关知识点1 .比拟指令(DCMP指令CMP指令的格式为:CMP条件寄存器,操作数2CMP指令用于把一个寄存器的内容和另一个寄存器的内容或立即数进行比拟,同时 更新CPSR中条件标志位的值。比拟指令常与条件码一起使用。条件码:当指令的执行条件满足时,指令被执行,否那么指令被忽略。条件码共有16种,每种条件码可用两个字符表示,这两个字符可以添加在指令助记 符的后面和指令同时使用。见教材表3-1.2 2) CMN指令CMN指令的格式为:C

12、MN条件寄存器,操作数2CMN指令用于把一个寄存器的内容和另一个寄存器的内容或立即数取反后进行比 较,同时更新CPSR中条件标志位的值。该指令实际完成操作数1和操作数2相加,并根据结果更改条件标志位。3 .条件码作用 ARM特有指令条件码见教材P49表2-3举例说明注意条件码在指令中的位置:操作码后面,不加空格。执行方式:常结合比拟指令一起使用,当指令的执行条件满足时,指令才被执行, 否那么指令被忽略。任务实施比拟RO, R1 的大小,假设ROR1,那么RO=RO+1, R0W1,那么R1=R1+1操作步骤:在ADS中完成1 .建立工程2 .建立新文件3 .编译4 .调试5 .观察寄存器的结果

13、指令实现CMP RO,R1ADDHI RO,RO,#1ADDLS R1,R1,#1小结掌握比拟指令和条件码的应用方法。作业当R1和。相等时跳转到Lable处执行 答案CMP R1, #0BEQ Label“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。6 .嵌入式系统的应用一视频 在智能仪器仪表上的应用在工业控制中的应用在家用电器中的应用给学生看一段智能家居的视频,体会现代生活的新技术,新体验在计算机网络和通信领域中的应用机器人播放一段街舞机器人视频,感受嵌入式系统ARM的智能体验医疗电子小结介绍了嵌入式系统的概念,特点以及应用等。作业.举出5个嵌入式系统的家电产品1 .什么

14、叫嵌入式系统学习情境二 在ADS环境中开发汇编程序任务5数据处理指令应用任务描述在ADS环境下编程实现RO=R1 *R2 +R3R4相关知识点2 .数据传送指令MOVMOV指令的格式源操作数形式:寄存器,立即数,移位寄存器举例,在ADS中单步运行观察寄存器的结果MVNMVN指令的格式源操作数形式:寄存器,立即数,移位寄存器举例,在ADS中单步运行观察寄存器的结果3 .算术运算指令ADD指令ADD指令的格式操作数2形式:立即数,寄存器,移位寄存器举例,在ADS中单步运行观察寄存器的结果ADC指令ADC指令的格式操作数2形式:立即数,寄存器,移位寄存器举例,在ADS中单步运行观察寄存器的结果SUB

15、指令SUB指令的格式操作数2形式:立即数,寄存器,移位寄存器举例,在ADS中单步运行观察寄存器的结果SBC指令SBC指令的格式操作数2形式:立即数,寄存器,移位寄存器在ADS中单步运行观察寄存器的结果乘法、乘加指令指令中的所有操作数必须为通用寄存器1) MUL指令 32位乘法运算MUL指令的格式2) MLA指令 32位乘加运算MLA指令的格式算术运算指令举例:使用 MVN、SUB 指令实现:R5 = Ox5FFFFFF8 - R8 * 8任务分析分组讨论,找小组代表讲老师汇总:会用到加法指令、减法指令、乘法指令和数据传送指令。任务实施在ADS环境下编程实现R0=RI *R2 +R3 - R4操

16、作步骤:1、新建工程 程名称“math”2、建立程序文件并加载程序文件testl.s到工程3、编译连接常见错误和解决方案:常见错误一:Could not open file-*解决方案:点击菜单Projector emove object code,将以前所生成的所有目标文件 删除。常见错误二:unknown opcode解决方案:一种可能是格式问题:EQU指令和标号必须顶格写,其他不能顶格写;另一种可能是操作码输入错误。常 见错误三:bad register name symbol;解决方案:标号输入错误4、选择调试工具,选择ARMUL(软件仿真)5、运行程序,观察寄存器结果小结学会使用AR

17、M的主要数据处理指令,记住指令中的操作数2的格式。指令功能用法。作业习题2,3学习情境二 在ADS环境中开发汇编程序任务7逻辑运算指令任务描述 R0=10, Rl=25, R5=0xF0000001,如果 ROR1,利用逻辑运算指令将R5低8位清零,否那么将R5低8位置1。相关知识点一.逻辑运算指令LAND指令AND指令的格式指令功能操作数2形式:立即数,寄存器,移位寄存器该指令常用于屏蔽源寄存器1的某些位。举例:写出指令保持R0的位0、1不变,其余位清零。4 . ORR指令ORR指令的格式指令功能操作数2形式:立即数,寄存器,移位寄存器该指令常用于设置源寄存器1的某些位。举例:置位R0的0、

18、1位,其余位保持不变。5 .EOR指令EOR指令的格式指令功能:与1进行异或实现反转操作数2形式:立即数,寄存器,移位寄存器举例:反转R0的0、1位,其余位保持不变。6 . BIC指令BIC指令的格式操作数2可以是一个寄存器,被移位的寄存器,或一个立即数。指令功能:用于清除源寄存器1的某些位举例:清除R0中的位0、1、和3,其余的位保持不变。二.移位指令移位操作在ARM指令集中不作为单独的指令使用,它只能作为指令格式中是一个 字段,在汇编语言中表示为指令中的选项。LSL逻辑左移 ASL 算术左移 LSR 逻辑右移 ASR 算术右移 ROR 循环右移图示法举例任务分析分组讨论教师提出指导性建议任

19、务要实现R0和R1比拟,可以使用比拟指令CMP,假设ROR1,将R5中的低8位 清零,可以使用逻辑与指令来实现,即R5和。xFFFFFFOO相与,OxFFFFFFOO不是合法 立即数,需要将它取反再和R5相与;或者使用BIC指令也可以实现清零。假设R0WR1, 将R5中的低8位置1,可以使用逻辑或指令来实现,即R5和。xOOOOOOFF相或。而且 逻辑操作是满足某些条件执行,因此要使用条件码。根据分析画出流程图和程序代码。任务实施1 .新建工程翻开ADS集成开发环境,点击【File】菜单,选择【New.】即弹出New对话框,在 New对话框选择【Project】页建立新工程,在【Locatio

20、n】项选择工程存放路径,并在【Project name项输入工程名称Luoji”2 .建立程序文件并加载程序文件到工程在New对话框选择【File】页来建立程序文件,在【File name项输入程序名称 “test2.s 选中“Add to Project”项,选中 Debug, Debug Rei, Release 三项,点 击“确定”按钮。3 .编译连接点击“Make”编译连接。4 .选择调试工具点击Debug,进入AXD,点击菜单【Options】选择【Configure Target】, 即弹出Choose Target窗口,选择ARMUL(软件仿真)。5 .加载可执行文件关闭AXD界

21、面,重新进入ADS界面,点击“Debug”图标按钮进入 AXD调试环境。6 .翻开寄存器窗口翻开处理器寄存器窗口,点开“Current”前面的加号,会出现所有通用寄存器,便 于观察寄存器的值。单步运行,观察R5寄存器的值。小结学会使用ARM的逻辑运算指令和移位指令,指令功能用法。作业使用CMP指令判断(5*Y/2)(2*X)吗?假设大于那么R5 = R5&0xFFFF0000,否那么R5 二R5|0x000000FF学习情境二 在ADS环境中开发汇编程序任务8存储、加载指令应用任务描述将寄存器R1中的数据传送到存储器的0x30000000地址单元中。新课引入前面讲的数据操作指令是对寄存器的操作

22、,没有对存储器进行操作。 而加载存储指令是对寄存器和存储器之间传输数据。新课讲授相关知识点1 .存储指令功能:是将寄存器中的数据保存到存储器。与加载指令操作相反。存储指令分类:STR, STRB, STRH(1) STR指令格式,功能描述,指令举例(2) STRB指令格式,功能描述,指令举例 STRH指令格式,功能描述,指令举例2加载指令功能:是将存储器中的数据加载到寄存器。加载指令分类:LDR, LDRB, LDRH(1) LDR指令格式,功能描述,指令举例(2) LDRB指令格式,功能描述,指令举例(3) LDRH指令格式,功能描述,指令举例思考题:MOV和LDR指令有何不同?MOV是把数

23、据从一个寄存器传送到另一个寄存器或者把一个常数传送到一个寄存器。但不能访问存储器。LDR可以访问存储器。任务分析小组讨论,教师指导将寄存器R1中的数据传送到存储器指定的0x30000000地址单元中,可使用STR存 储指令,在传送到存储器之前,根据STR指令格式,应该把0x30000000先放到一个寄 存器(如R0)中。为了软件仿真运行时能够更加方便观察0x30000000存储地址中数据 的结果,给寄存器R1赋一个值OxlOOOOOOF。根据以上分析画出流程图和写出程序代码。任务实施操作步骤:1 .在ADS中建立新工程rw2-7,编写程序文件rw2-7.s,编译。2 .点击Debug,进入调试

24、界面。 翻开处理器寄存器窗口,翻开存储器(memory)窗口。 根据程序中给定的存储器地址,存储器起始地址设置为0x30000000,存储器显 示的起始地址就变成0x30000000,目的是能够看见此地址中的数据。查看存储器中的数据。小结掌握加载指令和存储指令。作业复习,操作实践学习情境二 在ADS环境中开发汇编程序任务9阶段考核1.常用汇编指令(1)程序补充题 ;定义X的值为11Y EQU 8AREA Examples, READONLY ;声明代码段Example3 ;标识程序入口 ;声明32位ARM指令MOV RO, #YADDRO, RO, RO, LSL ;计算RO=Y+4*Y =

25、5*YADDRO, RO, LSR;计算RO=5*Y/2MOVR1,#XMOVRI, RI, LSL #1比拟RO和RI,即(5*Y/2)和(2*X)进行比拟LDRHI Rl,=0xFFFF0000;假设R0RL 那么假设=Rl&ROORRLS Rl,Rl,#0x000000FF;假设R0CR1,那么RI = RllOxOOOOOOFF;程序结束;程序结束END(2)程序分析题 加注释10. MLA RI, R2, R4, R31.ADD RI, RI, RI, LSL#22.SUB RI , R2 , LSR#23.MOV PC, RO4.LDR RO, RI , #45.CMP RI, R

26、2BEQ LABLE6.BL DELAY7.MVN RI, #OXFF8.RSB RI, R2, R3 ,LSL#19.MUL RI, R4, R211. ORRLS RI, R3, #3;12. BIC RI, RI, #0X01;13. EOR RO, RO, #0X05;14. LDRLO RO, R6;15. LDR RO, RI, R7;(3)写出指令执行的结果1) MOV RI, #0X01MOV RO, #0X23CMP RO, RIANDHI RI, RI, #0X00ORRLS RI, RI, #OXFFFFFFFF回答RI的值是.2) MOV RI, #0X38BIC RI

27、, RI, #0X20回答RI的值是3) MVN RI, ttOXFFOOOOOOAND R1,R1,#OXFOOOOOOF回答RI的值是4) 汇编语言编程题(1)使用汇编指令实现:R0=0x2FRl=OxlER2=RO+R1在ADS软件中编程,编译,调试。观察R2的值。(2)用逆向减法指令完成R0=0x7FR1=0x56R2=RO-R1在ADS软件中编程,编译,调试。观察R2的值。作业熟练操作以上第2题。学习情境三 嵌入式最小系统电路任务1 LPC2000芯片简介学习内容1. LPC2000系列芯片简介2. LPC2000系列芯片的应用产品3. LPC2000系列芯片的内部资源新课讲授1.

28、LPC2000系列芯片简介ARM7TDMI-S CPU 内核支持ARM和Thumb指令集具有丰富的外设应用广泛展示芯片外观图,图片展示2. LPC2000系列芯片的应用产品图片展示芯片控制模块LPC2213核心控制模块-控制电机,温度采集电力线通信诱导通风控制器公路车流量网络传输数据GPRSGPS导航系统烟火探测器火灾报警控制器医疗器械 血压计,血糖仪,B超仪机器人灭火机器人火星探路机器人跳舞机器人智能家居看视频3. LPC2000系列芯片的内部资源(1) LPC2000系列芯片的各种型号学习情境一走入嵌入式世界任务2嵌入式系统组成旧课回顾嵌入式系统的概念举出3个嵌入式系统的产品任务描述1 .

29、嵌入式系统的开展历史和工作岗位2 .嵌入式系统的基本组成任务分析及相关知识点1 .嵌入式系统的开展历史和工作岗位1 .嵌入式系统的开展历史和工作岗位嵌入式开展阶段第一阶段是以单芯片为核心的可编程控制器形成的系统。比方:51单片机系统第二阶段是以嵌入式CPU为基础、以简单操作系统为核心的嵌入式系统。比方:ARM7TDMI-S为内核的芯片构成的系统,支持UCOS- II, uClinux小操作系统。第三阶段是以嵌入式操作系统为标志的嵌入式系统。比方:以ARM9为内核的芯片-一S3c2410芯片构成的系统,支持Linux,WinCE 操作系统。第四阶段是以Internet为标志的嵌入式系统。嵌入式设

30、备与Internet的结合将代表嵌入式系统的未来。嵌入式系统的工作岗位嵌入式工作岗位对人才的需求通过数据统计表讲解。2.嵌入式系统组成嵌入式系统基本组成首先请同学们回答一下计算机的组成和单片机的组成计算机系统组成:总体说,硬件和软件。单片机系统组成弓I脚数片内RAM空间片内Flash空间A/DCAN控制器等比照几种常见型号的内部资源(2)芯片内部结构框图展示总体包括四大局部ARM7TDMI-S CPU1) ARM7局部总线和相关器件SRAMFLASHAHB高性能总线及相关部件AHB总线快速总线VIC中断向量控制器,EMC外部存储控制器4)外设总线及相关部件外设总线速度低UART串行接口I2C串

31、行接口SPI串行接口 同步CAN总线接口看门狗定时器ADCPWM控制器定时器0,1外部中断等小结主要介绍LPC2000系列芯片的特点及内部结构。作业习题1学习情境三 嵌入式最小系统电路任务2时钟部件任务描述1 .PLL相关寄存器的设置方法2 . PLL频率计算方法相关知识点1. PLL相关寄存器的设置方法(1)唤醒定时器与时钟关系思考问题:1)芯片上电后,处理器就开始执行用户程序吗?不是2)芯片执行用户程序之前,寄存器的初始值为零。什么时候进行的初始化? 在上电后,执行用户程序前的一段时间。3)芯片上电后,在处理器执行用户程序前,都做了哪些工作?硬件初始化如寄存器,存储器,复位电路复位等,这些

32、都需要在处理器执行用户 程序前有一段时间进行初始化。唤醒定时器作用:唤醒定时器能够确保振荡器和芯片内部硬件电路在 处理器开始执行指令之前有足够的时间初始化。唤醒定时器与时钟关系:唤醒定时器检测到有效时钟信号后,计数4096个时钟脉冲, 并在这段时间里初始化系统硬件。如芯片满足运行条件(Flash初始化完成、外部复位信号 已撤除等),接通系统时钟,处理器开始执行指令。工作原理见教材图5.11所示。图示法PLL工作原理作用:升频组成:由相位频率检测、流控振荡器、2P分频器、M分频器构成。锁定过程:图示法输出所需频率的过程不是一蹴而就的,而是一个拉锯反复的过程。CCO的输出频率 在高低起伏一段时间后

33、渐渐稳定在了预期的频率值,输出频率稳定后即“锁定”成功。(2) PLL相关寄存器1) PLL控制寄存器PLLCON寄存器包含使能和连接PLL的位。2) PLL 配置寄存器(PLLCFG -0xE01FC084) PLLCFG寄存器包含PLL倍频器和分频器值。3) PLL 状态寄存器(PLLSTAT - 0xE01FC088)从PLLSTAT寄存器读出的是正在使用的真实PLL参数和状态。4) PLL 馈送寄存器(PLLFEED -0xE01FC08C)必须将正确的馈送序列写入PLLFEED寄存器才能使PLLCON和PLLCFG寄存器 的更改生效。馈送序列如下:一将值OxAA写入PLLFEED一将

34、值0x55写入PLLFEEDVPB分频器作用:将PLL升频后的频率(Fcclk)经VPB分频供给外设器件时钟 VPBDIV寄存器见教材表5-192. PLL频率计算方法PLL输出频率(当PLL激活并连接时)由下式得到:Fcclk = M * FOSC 或 Fcclk = FCCO / (2*P)任务实施1 .PLL相关寄存器的设置方法(1)设置寄存器激活PLL并允许其锁定到指定的频率(2)写入馈送序列使PLLCON和PLLCFG寄存器的更改生效2 . PLL频率计算方法(1)确定PLL设定的过程1)选择处理器的操作频率(Fcclk) o这可以根据处理器的整体要求、UART波特 率的支持等因素来

35、决定。外围器件的时钟频率可以低于处理器频率。 2)选择振荡器频率(FOSC) o Fcclk 一定要是FOSC的整数倍。 3)计算M值以配置MSEL位。M=Fcclk/FOSC, M的取值范围为132。写入MSEL 位的值为M-1。见表5-18。 4)选择P值以配置PSEL位。通过设置P值,使FCCO在定义的频率限制范围内, FCCO可通过前面的等式计算。P必须是1,2,4或8其中的一个。写入PSEL位的值对应 的P值见表5-17。(2) PLL输入和设定必须满足下面的条件: 1) FOSC 的范围:10MHz25MHz2) Fcclk 的范围:10MHzFmax (LPC2114/2124/

36、2210/2212/2214 的最大允许频率) 3) FCCO 的范围:156MHz320MHz(3)操作任务系统要求Fosc = 10MHz, Fcclk =60MHzo根据这些要求,求出M和P的值,并设置配置寄存器的值。小结分析PLL工作原理,介绍相关寄存器的设置方法,PLL频率计算方法.作业习题5,6学习情境三 嵌入式最小系统电路任务3最小系统任务描述搭建LPC2290芯片的最小系统电路。任务分析及相关知识点1 .电源电路电源作用:给整个系统供电(1)前级电源电路把输入的9V电进行整流降压,输出+5v电采用电源芯片:78L0578M05前级电源电路见教材P89(2)末级复位电路把+5v变

37、为+3.3v,供给微控制器。采用电源芯片:SPX1117末级电源电路 见教材P882 .时钟电路作用:给微控制器提供时序时钟电路组成:第一种,使用微控制器内部的晶体振荡器加外部电路第二种,使用外部振荡器见教材图6.63 .复位电路作用:微控制器上电时状态不确定,加复位电路,使微控制器处于一个确定状态。复位电路:阻容复位电路图示法复位芯片复位电路图示法芯片:SP706/7084 .完整最小系统由微控制器,复位电路,时钟电路,电源电路组成。任务实施1 .电源电路在Proteus中完成电路,包括前级电源电路,末级电源电路2 .时钟电路在Proteus中完成使用内部晶体振荡器的时钟电路3 .复位电路在

38、Proteus中完成阻容复位电路4 .完整最小系统在Proteus中完成完整最小系统小结分析LPC2000系列芯片的最小系统组成及电路构成。作业习题1, 3学习情境四LPC2000基本输入输出控制任务1 EasyJTAG-H仿真器的应用任务描述使用H-JTAG调试器在实验箱上运行LED流水灯的程序。相关知识点.配置HJTAG仿真器软件H-JTAG配置H-Flasher配置加载LPC2200. hfc配置文件H-Flasher菜单. EasyJTAG-H仿真器的使用任务实施操作步骤:1 .仿真器的硬件连接将计算机并口与EasyJTAG-H仿真器相连,再将EasyJTAG-H仿真器的JTAG连接

39、口连接到开发板上,再连接电源线,并给开发板上电。注意连接顺序,因为仿真器不支持热插拔。2 .配置H-JTAG, H-Flasher软件H JTAG配置1)单击任务栏的H提示图标,将看见II JTAG的主窗口,单击放大镜图标按钮后 应能看见调试代理发现ARM7处理器。2)选择【Flasher】- Auto Download选择自动下载项,翻开自动下载功能。H-Flasher配置H-Flasher的配置有两种方法,直接加载配置文件与手动配置。加载配置文件配置单击任务栏的F提示图标将看见H Flasher的主窗口。单击Load菜单装载目标板配置文件,如LPC2200.hfc3 .启动AXD调试1)启

40、动ADS软件,翻开程序并编译,编译完成后,点击调试按钮,翻开AXD,在AXD 软件中,翻开【Options】- Configure Target.,弹出Choose Target 对话框, 单击Add添加仿真器的驱动程序,在添加文件窗口选择如C:Program Fi lesH-JTAG VO. 3. 2目录下的H-JTAG.dll仿真器驱动程序,添加完HJTAG驱动后,选择该驱 动程序H-JTAG.dll ,然后单击0K。2)仿真调试:关闭AXD窗口。以后调试就直接在ADS中翻开LED流水灯工程,编译链接通过后,单击Debug启动AXD调试软件,进行JTAG仿真调试。小结掌握H-JTAG调试器

41、的应用。作业使用H-JTAG调试器在实验箱上运行电机的程序。学习情境四LPC2000基本输入输出控制任务2选择LPC2000引脚功能为GPIO任务描述选择LPC2000弓|脚P0功能为GPIO相关知识点1 .引脚选择寄存器功能LPC2000系列微控制器的大局部管脚都具有多种功能,即管脚复用但是同一引脚在同一时刻只能使用其中一个功能,通过配置相关寄存器控制多路开关来 连接弓I脚与片内外设。2 .引脚选择寄存器。设置三个32位宽度PINSEL寄存器 包括PINSELO和PINSEL1控制端口 0, PINSEL2根据 芯片的不同,控制的端口数量也不同。见表格PINSELO控制P0 口的低16位寄存

42、器的每2位确定一个引脚功能一个引脚最多具备4个功能通过设置寄存器的值来确定引脚的功能。寄存器LPC2100LPC2200PINSELOP00:15PINSEL1P0 16:31PINSEL2Pl16:31Pl0:lPl16:31P20:31 P30:313 .设置引脚选择寄存器1设置见表格5-9PINSEL1控制P0 口的高16位寄存器的每2位确定一个引脚功能一个引脚最多具备4个功能通过设置寄存器的值来确定引脚的功能。寄存器LPC2100LPC2200PINSEL1P0 16:31PINSEL2Pl16:31Pl0:l、Pl16:31hP20:31 P30:31任务实施分析:通过查阅PINSE

43、LO和PINSEL1寄存器设置表,应该将寄存器值设置为0。因此PINSELO = 0x00;PINSEL1 = 0x00;技能拓展L要求将P0.8、P0.9设置为TxDl、RxDl分析:通过查阅PINSELO寄存器设置表,得到P0.9和P0.8的控制位为PINSEL019:16, 当该域设置为0101 (0x05)时选择RxDl和TxDl。编写指令PINSELO = 0x05 16;假设其他引脚也在使用,不能影响别的管脚连接设置,通常选择下面的 设置方法。PINSELO =(PINSELO & OxFFFOFFFF)| (0x05 16);2 .把P0. 10设置为TIMER1功能。PINSE

44、L0=0x02 20或 PINSELO= (PINSELO & OxFFFEFFFF) | (0x0220)3 .把P0. 18设置为GPIOoPINSELl=OxOO4 .把 P0.30 用作 EINT3PINSEL1 =0x20000000小结主要介绍LPC2000系列芯片引脚选择寄存器的设置方法。作业设置P0.21引脚为捕获1.3设置P0.25为GPIO功能嵌入式系统组成嵌入式处理器介绍嵌入式处理器和普通微处理器的区别分类嵌入式操作系统什么是操作系统作用:管理和协调各项工作。常用嵌入式操作系统嵌入式uCLinux 举例Windows CE 举例pc/os-n 举例小结本节课重点介绍了嵌入式系统的组成,操作系统的概念和作用,嵌入式操作系统的概念 和作用,及其嵌入式的开展等。作业习题2, 3学习情境四LPC2000基本输入输出控制任务3 GPIO输出控制蜂鸣器蜂鸣任务描述利用LPC2000的GPIO输出功能控制MagicARM2200教学实验开发平台上P0.7引脚连 接的蜂鸣器蜂鸣从而实现报警控制。新课引入学生回答以下问题1 .单片机GPIO有哪些功能?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁