嵌入式系统参考资料.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统参考资料

画出基于ARM-Cortex M3内核最小系统的电路图,并进行简要说明启动引脚所对应的启动模式。(10分) 答:(1)最小系统的电路图,能正确画出图或者用文字描述得(6分) (2)启动模式说明,能正确画出图或者用文字描述得(4分) 画出基于CMSIS标准的应用程序的基本结构,并简述其所包含的三个基本功能层。(10分) 答:(1)基于CMSIS标准的应用程序的基本结构,能正确画出图或者用文字描述得(7分) (2)CMSIS标准的三个基本功能层:(3分) 1. 内核设备访问层:包含用于访问内核寄存器设备的名称定义、地址定义和助手函数。同时也为RTOS定义了独立于微控制器的接口,该接口包括调试通道定义。 中间设备访问层:为软件提供了访问外设的通用方法。芯片供应商应当修改中间设备访问层,对于中间设备访问层,芯片厂商需要根据自己的设备特性进行更新。 微控制器外设访问层:提供了片上所有外设的定义。 3. 画出STM32内部的总线结构。并简要说明AHB总线与SRAM、DMA及APB总线之间的关系。(10分) 答:(1)能正确画出图或者用文字描述得6分。 FLITF为Flash控制器。 (2)AHB总线与SRAM、DMA及APB总线之间的关系(4分): STM32的内部SRAM和DMA单元直接与AHB总线相连,外部设备则使用两条APB总线相连,每一条APB总线又都与AHB总线矩阵相连。 4. 在基于ARM-Cortex M3内核的芯片上编写程序实现如下功能。通过GPIO口引脚实现2个LED 灯交替实现闪烁,2个灯持续时间闪烁时间持续为1秒。(25分) 1) 画出所需要的电路图。(5分) 2) 画出程序的流程图。(5分) 3) 配置Systick定时器,并使用Systick定时器实现1秒钟的延时功能,写出相应的程序。(5分) 方法:1: SysTick_Config 2000); void Delay(uint32_t nTime) { TimingDelay = nTime; while(TimingDelay != 0); } void TimingDelay_Decrement(void) { if (TimingDelay != 0x00) { TimingDelay--; } } 方法2: Systick_Configuration(); void Systick_Configuration(void) { /* 失能Systick定时器 */ SysTick_CounterCmd(SysTick_Counter_Disable); /* 选择HCLK为Systick时钟源 */ SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); /* 清除Systick计数器 */ SysTick_CounterCmd(SysTick_Counter_Clear); /* 主频为72/8MHz,配置计数值为9000 * 1000可以得到1s定时间隔*/ SysTick_SetReload(9000 * 1000); } void Delay_Second(void) { /* 启动Systick计数 */ SysTick_CounterCmd(SysTick_Counter_Enable); /* 等待Systick计数至0 */ while(SysTick_GetFlagStatus(SysTick_FLAG_COUNT) == 0); /* 失能Systick定时器 */ SysTick_CounterCmd(SysTick_Counter_Disable); /* 清除Systick计数器 */ SysTick_CounterCmd(SysTick_Counter_Clear); } 4) 写出整个交替LED灯闪烁的程序。(10分) #include stm32f10x_lib.h void RCC_Configuration(void); void GPIO_Configuration(void); void Systick_Configuration(void); void Delay_Second(void); int main(void) { RCC_Configuration(); GPIO_Configuration(); /* 设置SyTtick定时器 */ Systick_C

文档评论(0)

dashewan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档