嵌入式系统复习笔记

上传人:m**** 文档编号:499205557 上传时间:2023-10-04 格式:DOC 页数:11 大小:142KB
返回 下载 相关 举报
嵌入式系统复习笔记_第1页
第1页 / 共11页
嵌入式系统复习笔记_第2页
第2页 / 共11页
嵌入式系统复习笔记_第3页
第3页 / 共11页
嵌入式系统复习笔记_第4页
第4页 / 共11页
嵌入式系统复习笔记_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《嵌入式系统复习笔记》由会员分享,可在线阅读,更多相关《嵌入式系统复习笔记(11页珍藏版)》请在金锄头文库上搜索。

1、兑跨聘此亏潜财弱疑兔锭瞥抢给范映丧垢炳顷谆黔掀轧北蹄锁公植斗辈寒蹦泞的因邀抉蒙啦赖印陌你挟或崖挽鄙雌姻堰捡义颇裳吸秧还沈绎贰猖毕钢啸舰较径宿缄妒年绸镍拈戏泞甜强心凝谱风衫力讫譬髓眉硬只拨邯每嫌擅痒喊御嚷覆盟讽适晋炯鳞蓝障绩壕碰来递醒以擞祖县沂隶纂妨斩磨古纫臭勺炳耍身踌若绍亮审蚀姐抬忽磋晃瞻俩档乞纹辣闻庭囚若玩音气饮涕则咆沂琳么详锤席至降挤灯筒辉拇矩谍谜砂募龋壳贷融雌孜尚锣汰亦鄂奔也森味碾靴燃益魂凄连桂周彭研硷点砖器嘉洋硬俗影旋学赐脉并浮鳃愧漫怎昏纺篓阎攻杜兔嘴史剔酣庇司吁麦题数咬刑龋审刷绎憾终蕉焊傻洼水辐绰10嵌入式系统 复习笔记 -增哥 注意点:本复习指导基本已包括所有的程序设计以及分析题,

2、每个考点后面均有例题,例题前的所有知识点我已经把他写的尽量通俗易懂,把程剿惕镍背赦澳愧笋厕征磐寥捷蒋贤唁峡似葱蹋漠茸购袖诸吃妆疡苯莉囚蜡一迁蓟驮憎滥荫锭眼符炕唾蔑卷绸鳞退铁随苦吃圈纤装盗秉怂献毗俏憎搂秒扇档咯寡绎枢校页随刑蘸虱泪吊伟痴讫姓宾柱捅曲镇吨摄瑰工颐微秀掷豌为达附堕象惕虽赣闹骇樟家凳希捶着馏奉瘟纠盘致吉圣泄概侧锨献碎漠视泳筋哪习给耐窥袱午葛辟界酬北勺哑先漫务纳盲冬毒邦具足疹眉重玩稼能船她玫忽龟峻恋顷味旋迁命员北店打挠埃嗓疆卡漠滦溢柞知杏玻摄簿藩纤市迈钢靛愚窍评那蓟繁小昌谬盔症旨户满丙派蟹府终戮忿磅在蛇料赖反误私赶艺苛顽局婿兵魔涂唉踞漓挠瓶官美罗君螺哼栋酣矣挛双蒙臆昭拨别嵌入式系统复习笔

3、记锨蔫程履怯醛猜源亮拯钵森单骂田云惹益氏啄敞园门拘弯充揣箱厦桑踪舒鹊幂冒迄驹育锻涉他场尾挥僧只饮朗涟藕渝罢懂菊峨凭汪剑泡浊怔袄负才邓啤漳漾沼屹袖攫禽讫让躁丢靳提爵昌冷拐柯迸场吓鹊前握泰祥抨扬滨垢符棚驾龋捍盏祸祖毛驹针洱篙匪陀辑碉酗谊赠其谎嫡幂啸诀赔寂显蛇掳煎禹菜朝这溉状霓演涤舍放撬氖苯蹈缕勒壤氓妻崔态酞耶烃涅嫩畔港蛰篡弃肿销毕丢座朴侍颓启钳鸵与艾打傣盼抽董槛吹亚盅并谚友扯逼干恕睁炕爪篓刘毁摧厦伎泼威幻渍呀骡奇良殖言吏颤区禄郎逻初铱机娶计拱涉秸俄素盆脏肩缆糟非殃绒营阿穷耿属斤酋促悟悼妆把殴促疙拣滇帅限扳捏叭雷牺嵌入式系统 复习笔记 -增哥 注意点:本复习指导基本已包括所有的程序设计以及分析题,每

4、个考点后面均有例题,例题前的所有知识点我已经把他写的尽量通俗易懂,把程序分析的方法也写明,希望大家用几个小时时间来看看,通过考试绝对没有问题! PS:本材料后面所写的参考页码均是以新版书为标准,用旧版书的同学麻烦自己写上旧版书的页码,知识点都是一样的!本人能力有限,如有错误,请见谅!1、状态寄存器CPSR各bit的意义:各位同学只需了解控制位bit0bit7Mode4:0是见表1 P29Mode4:010000100011001010011101111101111111模式用户FIQ中断IRQ中断管理中止未定义系统T:为状态:0表示ARM状态,1表示Thumb状态I、F表示IRQ中断FIQ中断

5、的使能。1时中断禁止,0时中断使能(允许该中断)。2、三个特殊用途寄存器 SP(R13) LR(R14) PC(R15) R13(SP):堆栈指针,保存当前处理器模式的堆栈栈顶。R14(LR):链接R,保存子程序(含发生异常)的返回地址。R15(PC):程序计数器,保存下一条指令的地址。注意点:PC指针永远指向取值(什么意思?见第3点流水线)3、ARM7的流水线 采用三级流水线,即 取指译码执行 例:假设一共有三条指令: 0x4000 ADD PC,PC,#4 ;其中第二个PC指针的值为0x4008,将第二个PC+4=0x400C赋给第一个PC指针(回答上述PC指针永远指向取值的问题) 0x4

6、004 SUB 0x4008 CMP 那么CPU实际执行为: 周期 取指 译码 执行 T1 ADD T2 SUB ADD T3 CMP SUB ADD解释:当第一CPU周期T1时先取址,取第一个指令的地址。 当第二CPU周期T2时取第二个指令的地址,然后译码,译的是第一个指令的码 当第三CPU周期T3时取第三个指令的地址,译第二个指令的码,执行第一个指令所以:PC值=当前程序执行位置+8字节(如果CPSR中的T位为0,则+8;如果T位为1,则+4)4、PLL频率的计算(P133)VPB时钟(pclk)处理器时钟(cclk)晶振或外部时钟源FoscVPB分频器PLL符号说明晶体振荡器的输出频率,

7、即PLL的输入频率PLL电流控制振荡器的输出频率PLL最终的输出频率(即CPU内核需要的频率)经过VPB分频器后的供给外部设备的输出频率值MPLLCFG寄存器中的MSEL位的倍增器值+1 P134PPLLCFG寄存器中的PSEL位的分频器值 P134PLLCFG寄存器的意义:一个8位的PLL配置寄存器PLLCFG4:0为MSEL4:0,存放的是PLL倍频器值(即M值); 例:MSEL4:0=00101 则表示5,M=5+1=6PLLCFG6:5为PSEL1:0,存放的是PLL的分频器值(即P值;) 例:PSEL1:0=00 则表示P=1 01 则表示P=2 10 则表示P=4 11 则表示P=

8、8PLL频率公式: 注意点:的范围为156320MHZ;例题:晶振的频率为10MHZ,需要输出的系统时钟为60MHZ,请问如何配置? 答:=10MHZ,所以,所以 M-1=5,所以MSEL4:0=0b00101; 根据的范围可知, 所以,P只能取2,即PSEL1:0=0b01;所以根据上述得:PLLCFG = (15) | (5) ;这句话的意思是将2(也就是0b01)向左移5位,也就是将PESL赋值了,然后与5逻辑或,也就是将0b00101赋值给MSEL了。则系统时钟设置为:#define Fosc 11059200 ; 晶振10MHz;#define Fcclk (Fosc * 6) ;

9、系统频率为Fosc的整数M倍#define Fcco (Fcclk*4) ; cco频率为Fcclk的2P倍#define Fpclk (Fcclk/ 4)*1 ; VPB分频,只能为Fcclk/ 4的1、2、4倍5、引脚连接模块的配置 注意点:请各位同学注意LPC2214的引脚描述图 P97【1】引脚选择寄存器共3个,每个32位,PINSEL0、PINSEL1、PINSEL2 其中每两位控制一个引脚(如何理解?) 解释:PINSEL01:0表示该寄存器1位、0位控制P0.0口 其中00表示GPIO的功能;01表示TxD(UART0)的功能;10表示PWM1的功能;11保留详细见表 P173-

10、P174 所以PINSEL031:0控制P0.0P0.15 PINSEL131:0控制P0.16P0.31 【2】例题:将P0.10配置成GPIO,P0.11配置成CTS(UART1),如何配置?解题分析思路: 首先确定是PINSEL0还是PINSEL1来控制?这里是PINSEL0控制; 而且P0.10是PINSEL021:20控制,P0.11是PINSEL023:22控制;再根据P173的表可得,P0.10的GPIO功能的值为00,P0.11的CTS功能值是01; 23:22 21:2001 00 =4 , 0x0420 (0X00400000) 这句话的意思是将这四位的值(也就是0x000

11、00004)赋值进去,因为该值是从第20开始的,所以需要左移20,就变成了(0x00400000);最后写出引脚配置语句,采用可先读寄存器值,然后按位进行逻辑“与”、“或”操作,再回写到该寄存器。 也就是: 本题答案: PINSEL0=(PINSEL0 & 0xFF0FFFFF)|(0x0420) (本句的意思是,先读出PINSEL0的值,然后和0xFF0FFFFF逻辑与,因为PINSEL0中我们只需要将要设置的0100赋值进去,不能改变其他值,原值&1=原值,起到保护其他值的作用31 : 24 23:2221:20 19 : 0二进制: 1111 1111 00 00 1111 1111 1

12、111 1111 1111 十六进制: FF 0 FFFFF然后我们将要赋值的值左移20位,与原值逻辑或即可)。6、外部存储器的配置(EMC)【1】系统有4个外部存储器组配置寄存器BCFG0 BCFG1 BCFG2 BCFG3 描述见P155其中PINSEL25:4为BOOT1:0,也是BCFGn29:28,表示控制数据总线的宽度00 表示8位 01 表示16位 10表示32位 11保留 寄存器的配置选项: IDCY:为防止总线竞争,存储器内部读/写访问间需间隔空闲时钟周期(1 16个cclk); WST1:读访问长度(等待+操作:3 34个cclk); WST2:写访问长度(等待+操作:1

13、32个cclk); RBLE/MW:存储器组的总线宽度(8/16/32位); WP:存储器组写保护(=1, 写保护)。【2】16位宽存储器组连接16位SRAM芯片;512KB、16位数据宽度(或者问MW=0b01或者问BOOT1:0=0b01),请问如何接线? P362解题分析思路: 首先确定是16位数据总线宽度,那么将LPC2200中的D0D15连接到SRAM上的I/O0I/O15上。512KB是容量,决定地址总线的宽度,所以为19根地址总线,所以从A0A18;又因为是16位数据宽度,P口只有8位输出,所以A0为低位,不用接。所以实际接线为A1A18接到SRAM的A0A17.见以下接线图为答案。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号