嵌入式实验一教程.doc

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

keil4的安装 一、实验目的 了解keil4软件安装与调试 二、实验内容 安装keil4软件并成功注册 三、实验仪器、设备 计算机、keil4软件 四、实验步骤 1.首先打开keil4破解.rar并解压文件,得到MDK400_mcu123.exe(安装文件)和KEIL_Lic.exe(破解文件)。 2.打开安装文件,根据提示进行下一步操作,一直到安装完成。 Keil4的安装步骤1 Keil4的安装步骤2 Keil4安装完成 3.点击finish后,打开桌面上的Keil uVision4,进入MDK。 MDK界面 点菜单file——license management,会出现以下界面。 注册管理界面 复制图片中的CID码,每个计算机的CID不同,所以必须在本机安装后才能注册。我们再打开一起被解压出来的keil4破解文件KEIL_Lic.exe。将CID码输入,并在Target中选择ARM(选择其他的选项也可以注册,但是遇到大程序时会出现无法编译的情况)。然后点击generate生成注册码,将注册码填入LIC中,点击add lic,显示*** LIC Added Sucessfully ***时,注册成功。,然后重新启动MDK。即完成破解。 Keil4的破解 实验一 闪烁灯与keil4环境下STM32的设置 一、实验目的 熟悉在keil4环境下的STM32的参数设置 完成闪烁灯实验任务 二、实验内容 建立新的工程文件,并根据STM32的设置需求进行配置,配置完成后能顺利执行闪烁灯程序 三、实验仪器、设备 计算机、keil4软件 四、实验步骤 1.首先建立固件库文件夹,将其他例子中的固件库复制到我们所需要的文件夹中(文件名可更改)。 固件库文件夹 CM3:放置系统头文件 User:放置用户工程文件及函数 FWLIB:stm32的函数库 List:编译后产生的各种文件 startup:启动代码文件 obj:放置编译后生成的可执行HEX等文件 2. 新建一个keil 工程文件在目标文件夹中,Project——new uVision project,指定一个工程文件存放地点,自定义工程文件名字后,选择保存。 新建工程文件 点击保存后进入芯片选择,我们选择的是STMicroelectronics下的STM32F103VE芯片 芯片选择 点击OK,在弹出的提示加载startup文件到工程中的选择中选择否(N) 进入新建工程的主界面,接下来,我们需要对编译环境进行定义 点击按钮,对编译文件进行添加 首先添加名称为ARM的启动文件,将startup_stm32f10x_hd.s添加进去。 ASM--startup_stm32f10x_hd.s 由于我们采用的是STM32F103大存储器芯片,因此采用STM32标准库自带的大存储器芯片启动代码,这个文件已经配置好了初始状态,以及中断向量表。可以直接在工程里使用,如果你在以后的应用中采用了中存储器或者小存储器STM32芯片,可以将启动代码换为startup_stm32f10x_md.s 或者startup_stm32f10x_ld.s。 然后添加名称为USR的用户代码,将闪烁灯的主函数main.c添加进去。 USER—main.c 例程的主函数。 RCC_Configuration() 完成对系统时钟的设置,例程中通过系统时钟设置函数,外接晶振采用8Mhz,经过片内频率合成,9倍频,设置为72MHz的时钟。 LED_Config() 对控制3个LED指示灯的IO口进行了初始化,将3个端口配置为推挽上拉输出,口线速度为50Mhz。 在配置某个口线时,首先应对它所在的端口的时钟进行使能。否则无法配置成功,由于3个控制口用到了端口B和端口D, 因此要对这两个端口的时钟进行使能,RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOD , ENABLE); 程序中对各状态LED进行了预定义: #define LED1_ON GPIO_SetBits(GPIOB, GPIO_Pin_5); #define LED1_OFF GPIO_ResetBits(GPIOB, GPIO_Pin_5); #define LED2_ON GPIO_SetBits(GPIOD, GPIO_Pin_6); #define LED2_OFF GPIO_ResetBits(GPIOD, GPIO_Pin_6); define LED3_ON GPIO_SetBits(GPIOD, GPIO_Pin_3); #define LED3_OFF GPIO_ResetBits(GPIOD,

文档评论(0)

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

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

1亿VIP精品文档

相关文档