登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 电子信息类 > 通信工程 > 正文

在ARM中实现IAP功能(软件)毕业论文

 2022-07-18 10:07  

论文总字数:18817字

摘 要

随着电子技术的迅速发展,日常生活中嵌入式的应用越来越广泛。STM32作为一款高效稳定的芯片,在单片机领域占有一定地位。而IAP使得用户无需离开软件,便可无缝升级软件或者扩展软件功能。因此,当单片机封装好之后,难以再次烧入APP时,利用IAP便可方便有效的更改或者升级APP程序,为日常应用提供很大的便利。本文便是在SMT32的开发平台上,以SD卡作为数据传输通道,实现IAP的功能,解决了用串口实现时不便利,必须与PC机联通的弊端。

关键词:STM32 IAP SD卡

Abstract

With the rapid development of electronic technology, the application of embedded in daily life was more widely.STM32 chip as a highly efficient and stable, occupy a certain position in the field of SCM. The function of IAP makes users are able to upgrade software seamlessly and extend the function of software while they don’t have to leave the software.Therefore when the microcontroller have been packaged and it is difficult to burn into the APP,it is convenient and effective to change or upgrade the APP program by the IAP,which providing great convenience for everyday applications.This article states how to achieve IAP function on SMT32 development platform by the SD card as a data transmission channel and it solved the problem which the chip had to link with computer when achieved IAP function by serial ports.

Key words: STM32;IAP;SD card

目录

第一章 绪论 4

1.1 背景与研究的意义 4

1.2 发展历程与现状 4

1.3 开发平台 5

1.4 主要研究的内容 5

第二章 关键系统技术和理论基础 6

2.1 处理器和内核 6

2.1.1 单片机选择 6

2.1.2 STM32 7

2.1.3 理论基础 9

2.2 IAP原理 9

2.3 Flash中断过程 10

2.4 Bootloader起始位置设置 11

2.5 bin文件生成 12

第三章 硬件电路介绍 14

3.1 最小系统电路 14

3.2 POWER模块 15

3.3 SD模块 15

3.4 JTAG接口模块 17

3.5 LED、KEY模块 18

3.6 LCD接口 18

3.7 硬件实物 19

第四章 关键程序设计 20

4.1 主程序设计 20

4.2 时钟及外设初始化 21

4.3 闪存四步操作 25

4.4 IAP功能的程序设计 26

4.5 APP跳转功能的程序设计 28

第五章 总结和展望 30

5.1 总结 30

5.2 展望 30

参考文献: 31

致 谢 32

第一章 绪论

1.1 背景与研究的意义

随着电子信息技术与经济的越来越紧密的发展,嵌入式系统在人们的日常生活中已经处于举足轻重的地位。然而嵌入式电子产品的升级换代一般都是以硬件的整体更换为代价的,哪怕嵌入式系统的硬件还很完好,由于软件的问题,使得很多产品也逃脱不了被整体换掉的厄运。造成这类问题的主要因为就是在早期设计的嵌入式系统中软件的升级往往是由专业人员利用专业工具才能进行的,普通人们即使拥有新版软件本身也无法操作。IAP,即在应用程序中编程的功能,由于此升级方式简单便利,甚至可以通过无线编程的方式来实现,因此极大地方便了电子产品的软件升级。另外随着集成电路的快速发展,在单片机产品中32位的ARM系列的单片机从性价比上越来越被大家所认同。为了让同学在本次毕业设计中对使用ARM单片机实现IAP有一定的了解,同时为了提高同学的实际动手能力和进入社会的竞争能力,在毕业设计中做些具体的东西将有助于加强同学的理性认识和感性认识,帮助同学在将来的社会竞争中打下良好的基础。

1.2 发展历程与现状

IAP完全有别于ICP或者ISP技术:ICP是利用仿真器进行程序烧录,ISP技术是在单片机内部烧录bootloader程序,再间接引导烧写。然而这两种技术,都是需要机械操作,例如跳帽的更改,连接线的操作等。若产品已经封装完成,二次烧录便存在很大的困难,甚至当产品处于特殊环境例如楼顶等危险点,更新其内部程序无疑成本消耗太大。但是IAP技术则完全不同,不仅可以进行数据传输和程序编写,甚至可以进行在线升级和编程。这绝对是ICP或ISP技术无法做到的。

STM32芯片烧写程序最常见的两种方式分别是串口和JTAG烧写。JTAG烧写过程需要使用专门的j-link线,这种方式的优点是可以进行对软件的测试工作。串口烧写也就是在系统编程,利用STM32芯片中出厂自带的bootloader程序,通过通用接口擦除flash和下载APP代码。在进行ISP即在系统编程过程中,需要将芯片引脚boot0以及boot1设置为1和0,然后在ISP结束后运行APP时,需将boot0改为0,类似的机械操作使得ISP在相对IAP时显得不适合特殊环境下的软件更新,也显示出IAP的存在对于单片机而言,其应用范围广,操作简易的特性更加适合如今的社会。[3]

嵌入式的发展以性能简单突出有针对性为特点,在医疗,检测,电器等各个领域中广泛存在。而大部分嵌入式系统出厂之后,程序便固话在芯片中,IAP的出现,使得芯片可实现在线升级,远程编程等操作,其应用范围可随着用户需求而进行调整,使得嵌入式的发展更加广泛。[3]

1.3 开发平台

Keil uVision4

本次编写软件的平台为KEIL软件,该软件是KEIL Software公司开发的软件系统,其编程语言接近C,因此对于编程能力的要求相对较低,可提高开发过程的效率。KEIL的界面充分利用了屏幕空间,对于各个界面窗口进行了有效合理的规划,使得在开发过程中,编程人员得心应手的进行操作。同时,KEIL软件可识别汇编语言,在特殊语句的处理上,使用汇编语句可使操作更有效简洁,大幅度提高程序的运行速度。

请支付后下载全文,论文总字数:18817字

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图