NFT元宇宙模式系统开发Demo(技术理念)NFT链游项目系统开发流程详情

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: NFT元宇宙模式系统开发Demo(技术理念)NFT链游项目系统开发流程详情

文件开头是关于文件的描述,先粘过来后面解释:

/**

  • @file startup_stm32f407xx.s
  • @author MCD Application Team
  • @brief STM32F407xx Devices vector table for GCC based toolchains.
  • This module performs:
    • Set the initial SP
    • Set the initial PC == Reset_Handler,
    • Set the vector table entries with the exceptions ISR address
    • Branches to main in the C library (which eventually
  • calls main()).
  • After Reset the Cortex-M4 processor is in Thread mode,
  • priority is Privileged, and the Stack is set to Main.

  • @attention

*

  • © COPYRIGHT 2017 STMicroelectronics

*

  • Redistribution and use in source and binary forms, with or without modification,
  • are permitted provided that the following conditions are met:
    1. Redistributions of source code must retain the above copyright notice,
  • this list of conditions and the following disclaimer.
    1. Redistributions in binary form must reproduce the above copyright notice,
  • this list of conditions and the following disclaimer in the documentation
  • and/or other materials provided with the distribution.
    1. Neither the name of STMicroelectronics nor the names of its contributors
  • may be used to endorse or promote products derived from this software
  • without specific prior written permission.

*

  • THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  • AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  • IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  • DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
  • FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  • DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
  • SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
  • CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  • OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  • OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

*

*/
复制
开头部分描述了文件的用途及版权声明:基于GCC编译链的STM32F407xx设备中断向量表,主要描述了

初始SP,PC寄存器的初始值。
PC的初始值即Reset_Handler
设置中断向量表入口地址,并用异常地址初始化向量表。 向量表里面保存的是异常响应的时候服务例程的入口地址。STM32把向量表放在0地址开始的code区。
转到C库的__main(最后调用mian())
复位CortexM4之后,处理器处于线程模式,特权优先级。
定义
继续往下看

.syntax unified
.cpu cortex-m4
.fpu softvfp
.thumb

.global g_pfnVectors
.global Default_Handler
复制
.syntax unified 是一个指示,默认值divided(分裂的) 旧样式,下面的指令使用ARM和THUMB各自独立的语法。unified (统一的)新样式,下面的指令使用ARM和THUMB通用格式。
.cpu表示后面用到的CPU平台为cortex-M4
.fpu表示后面使用的是软浮点,软浮点即Soft-float,浮点单元即VFP,(vector floating-point),相关资料可据此查询
.thumb使用thumb模式等价于.code 16;gcc -mthumb
.global定义了全局符号(symbol),.global使该符号对.ld(连接文件)可见。g_pfnVectors即中断向量表,Default_Handler我们这里先不解释,后面再看

相关文章
|
Java 开发工具 Android开发
Android Studio OpenCV 4.5.2环境搭建
Android Studio OpenCV 4.5.2环境搭建
845 0
|
存储 监控 物联网
物联网:怎么组建流量池
物联网(IoT)中组建流量池主要涉及到如何有效地管理和分配设备间产生的数据流,特别是在大规模物联网部署中,确保数据的稳定传输、存储和处理至关重要。以下是一些步骤和建议,用于在物联网环境中组建流量池:
|
11月前
|
Linux API C语言
Linux基础IO
Linux基础IO操作是系统管理和开发的基本技能。通过掌握文件描述符、重定向与管道、性能分析工具、文件系统操作以及网络IO命令等内容,可以更高效地进行系统操作和脚本编写。希望本文提供的知识和示例能帮助读者更深入地理解和运用Linux IO操作。
229 14
|
缓存 开发工具 git
Git创建分支以及合并分支
在Git中,创建分支使用`git branch [branch_name]`,切换分支使用`git checkout [branch_name]`。修改文件后,通过`git add [file]`添加到暂存区,然后`git commit`提交到本地仓库。如果是新建分支的第一次推送,使用`git push origin [branch_name]`推送到远程仓库,之后可以简化为`git push`。合并分支时,使用`git merge [branch_name]`将指定分支的更改合并到当前分支。
469 2
Git创建分支以及合并分支
|
存储 缓存 算法
分布式缓存有哪些常用的数据分片算法?
【10月更文挑战第25天】在实际应用中,需要根据具体的业务需求、数据特征以及系统的可扩展性要求等因素综合考虑,选择合适的数据分片算法,以实现分布式缓存的高效运行和数据的合理分布。
|
前端开发 应用服务中间件 API
|
机器学习/深度学习 人工智能 自然语言处理
人工智能的发展现状如何?
【10月更文挑战第16天】人工智能的发展现状如何?
|
存储 前端开发 JavaScript
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
【10月更文挑战第4天】本文探讨了从 Web 2.0 到 Web 3.0 的前端开发演变过程。Web 2.0 时代,前端开发者从静态网页设计走向复杂交互,技术框架如 jQuery、React 和 Vue 带来了巨大的变革。而 Web 3.0 以区块链技术为核心,带来了去中心化的互联网体验,前端开发者面临与区块链交互、去中心化身份验证、分布式存储等新挑战。文章总结了 Web 2.0 和 Web 3.0 的核心区别,并为开发者提供了如何应对新技术的建议,帮助他们在新时代中掌握技能、设计更安全的用户体验。
403 0
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
|
Linux 开发工具 C语言
centos7编译安装python3
centos7编译安装python3
|
安全 网络协议 测试技术
安全测试工具之nmap使用指南
【2月更文挑战第7天】安全测试工具之nmap使用指南
804 4
安全测试工具之nmap使用指南