IAR编译器问题的总结

2023-10-26

之前做项目都是用keil编译器比较多,也基本上用得很顺手,但是最近又开始用IAR编译器,结果这次真是被它折磨得快要崩溃,现在把问题总结如下:(IAR编译器版本:IAR2.10.4)

  1. IAR编译器默认的优化设置一定要注意!这个是之前做的一个项目,也是印象深刻,编译之后在线单步调试时,程序完全不按照正常流程执行,一度还以为时仿真器出了问题。最后才发现原来IAR编译器默认优化选择是中;

  2. IAR编译器的memcpy()函数调用的问题!这个是今天调程序发现的,本来想用内存复制的方式将一个浮点数复制到uchar型数组中,编译完全正确,也没有报错或者是警告,结果运行起来就跑飞了,CAN通信无法正常工作,最后是用联合体的方法实现的;

  3. IAR编译器的强制类型转换!真的搞不清楚IAR的强制转换规则?感觉真的是有点莫名其妙。例子如下:
    int a;
    int b;
    int c;
    u8 d;
    u8 e[4];
    d= a+b; 不报错,但是跑飞
    d=(u8)(a+b);不报错,但是跑飞
    e[0] = a+b; 不报错,运行正常
    c = a+b;
    e[0] = c; 不报错,运行正常

  4. IAR编译器在线调试时,明明定义的int型变量,为什么在watch中却显示的是浮点值!我确定只定义了一个int型!WHY!

  5. IAR的函数仅定义未

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IAR编译器问题的总结 的相关文章

  • Docker安装Elasticsearch的遇到的那些坑

    1 根据百度到的一篇文章 https segmentfault com a 1190000004376504下载其最新镜像 hangxin1940 docker elasticsearch cn v2 1 0 使用 docker run d
  • esp8266 串口乱码

    编码问题 波特率问题 这里提一下波特率问题 8266的启动信息波特率为 74880 一般的串口调试工具没有 这里可以使用安可信串口调试助手解决
  • IAR编译器问题的总结

    之前做项目都是用keil编译器比较多 也基本上用得很顺手 但是最近又开始用IAR编译器 结果这次真是被它折磨得快要崩溃 现在把问题总结如下 IAR编译器版本 IAR2 10 4 IAR编译器默认的优化设置一定要注意 这个是之前做的一个项目
  • BurpSuite的Cluster Bomb模式下使用Runtime File爆破不成功解决办法——路径全英文

    在做Pikachu超级简单的第一题的时候我就跪了 抓到包发现传输的就是没有加密的用户名和密码 就想着直接对两个参数进行爆破 采用笛卡尔积的方法于是就使用Cluster Bomb模式 Positions模块介绍图 我实际抓包设置 随后对两个参
  • flash开发ipa踩的坑

    1 xcode中找到libclang rt ios a添加到AIRSDK lib aot lib中 2 ios 打包ane 要添加 如果是 tbd则当dylib一样处理 去AIRSDK lib aot stub里面看有没有 dylib需要在
  • LVM磁盘挂载&扩容

    磁盘不够了怎么使用逻辑卷的方式扩充磁盘呢 因为之前踩过坑 用混了fdisk和mount挂载 这次梳理下LVM挂盘和扩容方式 下载lvm2 预先下载程序包 若已下载则忽略 yum y install lvm2 离线下载可上腾讯软件源把rpm包
  • go interface 坑 (判空)

    interface 本质 interface 实际上是有两个字段组成 一个是类型 是一个值 在判空时 只有同时是nil 才能得到true 实际案例 在doSomething中 err是等于空的 但是传递给error这个接口后 确又不等于空了
  • Kali镜像下载

    http old kali org kali images 太全了 爱了爱了 存档
  • 关于移动端H5使用xhr上传文件

    首先我是用的是uniapp框架 所以以下内容皆以此未前提 我是第一次用uniapp 所以有些地方也不太熟悉 比如在写h5时 页面上的input的type写成file时页面上没有效果 查看官方文档后知道 需要使用js 插入一个input标签
  • linux最简单预览摄像头方法

    我只想要打开摄像头 想当然就是用ffplay centos如何安装ffplay 找了一通都是编译安装 编译安装也就算了 竟然没有生成ffplay 搜了一通解决ffmpeg编译安装没有生成ffplay的教程 累了 我到底在干什么 linux真
  • 记录一下项目踩到的一些坑(不断更新)

    1 HTTPS 问题排查 相信大家PHP在做第三接口或者一些接口调用的时候都会用到curl 在本地部署开发没问题 但是部署到正式服务器的时候就会导致返回一些无知错误 解决方案排查 可以考虑一下是否在curl 的时候做了HTTPS的校验 2
  • 使用ScriptableObject代替部分配置表的坑点

    1 使用ScriptableObject代替部分配置表的坑点 2 加载配置内存过大问题 3 URP的UI在Android模型器下比在真机上暗 4 Unity在Windows上第一次运行Play启动很慢 5 如何正确卸载UnityWebReq
  • pycharm IDE报错 ,记事本打开后出现卡顿,之后出现ide错误

    打开IDE之后进行编辑 点击setting出现页面无反应 右下角出现的提示 ide error occurred see detail submit display 点击进去之后 在点击这个display 类似重启IDE的命令 然后就可以继
  • 使用 Visual Studio 2022 写纯32位汇编(intel风格)

    文章目录 第0步 打开VS 2022 点击创建新项目 第1步 选择windows 桌面向导 第2步 配置项目 第3步 选择空项目 第4步 找到生成依赖项 选择生成自定义 第5步 勾选masm 第6步 新建文件 第7步 选择cpp文件并在下方
  • 关于uniapp将H5网页编译为微信小程序样式错乱

    在控制台看了下出现警告Some selectors are not allowed in component wxss including tag name selectors ID selectors and attribute sele
  • 解决Tomcat启动控制台输出中文信息乱码 [亲测好用]

    解决Tomcat启动控制台输出中文信息乱码 亲测好用 文章目录 解决Tomcat启动控制台输出中文信息乱码 亲测好用 一 问题描述 Tomcat启动控制台输出信息乱码解决 二 问题分析 Tomcat日志之所以出现中文乱码问题是因为日志输出的
  • Windos10专业版开启远程桌面协助

    我需要控制局域网的电脑 这台电脑是win10专业版 搜索 远程桌面设置 进入后启动远程桌面设置 然后发现当前用户已经有访问权 当前用户没有密码 那么远程失败 解决方法是 按win r 输入GPEDIT MSC 计算机配置 gt 安全设置 g
  • win10远程桌面的坑

    win10的远程桌面的确是清晰度非常好 操作非常流程的 但是还是有坑的 举两个踩坑例子 1 录屏软件在远程桌面退出后无效了 无法录制屏幕了 2 监控客户端在退出远程桌面后 再进去远程桌面 打圈圈卡死 因此一些应用不适合在win10远程桌面办
  • 关于在VUE中使用html2canvas+jspdf方案将HTML页面导出为PDF遇到的坑

    首先网上有很多教程 我就简单记录下 主要是记录我遇到的问题 首先 npm install html2canvas jspdf s 然后在main js中引入 引入html转pdf的js import htmlToPdf from asset
  • U盘安装CentOS7

    官网找到CentOS7的ISO镜像 CentOS 7 x86 64 DVD 2207 02 iso 大小4 42G 准备一个8G的U盘 格式化 然后通过UltraISO工具将ISO镜像写入到U盘 接着开机启动U盘 华硕是按esc键 选择in

随机推荐

  • C++ 动态内存

    了解动态内存在 C 中是如何工作的是成为一名合格的 C 程序员必不可少的 C 程序中的内存分为两个部分 栈 在函数内部声明的所有变量都将占用栈内存 堆 这是程序中未使用的内存 在程序运行时可用于动态分配内存 很多时候 您无法提前预知需要多少
  • 公司名称注册,公司名称查询,企业名称注册事项

    公司名称的构成 名称一般由四部分依次组成 行政区划 字号 行业特点 组织形式 登记管辖 工商行政管理机关对企业名称实行分级登记管理 国家工商总局登记管辖范围 一 冠以 中国 中华 全国 国家 国际 字样的 二 在名称中间使用 中国 中华 全
  • Python中的三引号''' '''的用法

    链接 https blog csdn net GreenHandCGL article details 79703863
  • ERP仓库管理的操作与设计--开源软件诞生20

    赤龙ERP库房管理讲解 第20篇 用日志记录 开源软件 的诞生 点亮星标 祈盼着一个鼓励 博主开源地址 码云 https gitee com redragon redragon erp GitHub https github com red
  • minkwindow安装

    装库要记住三件事 官网 csdn 耐心 装库太慢就边看剧边装 不要影响心态 首先上官网 GitHub NVIDIA MinkowskiEngine Minkowski Engine is an auto diff neural networ
  • 国产超低功耗华大单片机HC32L136开发板上手入门

    今天介绍下国产超低功耗华大单片机HC32L136开发板上手后的入门操作 开发板可以在华大MCU应用交流群 164973950 免费申请 HC32L136开发板 如下图所示 分为板载调试模块 左半部分 和MCU开发电路 右半部分 二者中间通过
  • 当你的sklearn用不了mean_absolute_percentage_error函数

    今天将一份写好的python机器学习程序换了个电脑跑的时候 出现了如下报错 ImportError cannot import name mean absolute percentage error from sklearn metrics
  • 解决K8s安装中节点初始化时 [kubelet-check] The HTTP call equal to ‘curl -sSL http://localhost:10248/healthz‘ 问题.

    问题描述 安装K8s时 在节点初始化过程中出现 kubelet check The HTTP call equal to curl sSL http localhost 10248 healthz failed with error Get
  • WINDOWS 10 设置WSL 2

    确保已安装 WSL 可以在此处找到相关说明 并且运行的是 Windows 10内部版本 18917或更高版本 可以通过在 PowerShell 中运行以下命令来执行此操作 PowerShell dism exe online enable
  • 分布式深度学习part1:神经网络的分布式训练

    这篇文章是关于神经网络分布式训练的三部系列文章中的第一篇 在第1部中 我们将了解如何通过GPU上的分布式计算显著地加速深度学习模型的训练 并讨论一些挑战并调查当前关于该主题的研究 我们还将考虑神经网络的分布式训练是否适用于特定用例 介绍 在
  • stm32关于通用定时器的周期、频率计算公式

    以下内容针对正点原子的定时器中断实验 定时器时基单元包含 计数器寄存器 TIMx CNT 预分频器寄存器 TIMx PSC 该寄存器用设置对时钟进行分频 然后提供给计数器 作为计数器的时钟 自动装载寄存器 TIMx ARR 定时器的时钟来源
  • 【适合小白】开发一个区块链应用

    前言 本篇教程是小编基于FISCO BCOS官网的教程撰写的 有不明白的地方也可以去官网上的教程看看 在开发区块链应用之前 首先得完成搭建第一个区块链应用 目的是为了搭建节点跟启动控制台 1 了解应用需求 区块链天然具有防篡改 可追溯等特性
  • MQTT协议学习

    MQTT协议是目前物联网最主要的协议 它的设计主要是运用于 低带宽 低网速 差网络环境能够保证数据的正常传输 MQTT协议基于TCP IP协议 运用订阅发布模式 解除应用之间的耦合关系 客户端与客户端之间只需要知道服务器位置 就可以传输数据
  • Github管理项目代码相关git命令

    1 Git global setup git config global user name username git config global user email user email 2 Create a new repositor
  • .classpath .project ch2.iml这三个文件如何理解?

    这三个文件通常出现在Java开发中使用的集成开发环境 IDE 项目中 如Eclipse或IntelliJ IDEA 它们在项目的组织和配置方面发挥着重要的作用 classpath 文件 classpath 是 Eclipse 项目的配置文件
  • Wireshark使用小心得

    Wireshark工作使用小结 基本概念 wireshark是个开源的好用软件 用来分析数据包 数据包 通常就是四层信息 物理层数据帧 数据链路层以太帧头部 网络层IP包头部 传输层TCP包头部 最后就是应用层信息 基础功能使用 打开软件界
  • 范数介绍及C++/OpenCV/Eigen的三种实现

    有时我们需要衡量一个向量的大小 在机器学习中 我们经常使用被称为范数 norm 的函数衡量向量大小 形式上 Lp范数定义如下 范数 包括Lp范数 是将向量映射到非负值的函数 直观上来说 向量x的范数衡量从原点到点x的距离 更严格地说 范数是
  • 失业的程序员(五):商战之前

    本系列前章 失业的程序员 一 二 三 四 一 关于裸奔 早几年出现了很多新名词 如裸婚 蜗居 蚁族 而像我们这种没背景 没后台 没资金的程序员创业那简直可以称为裸奔 创业是否成功的标准实在太多 不能只拿钱来衡量因为很多人会说你铜臭 不能只拿
  • MYSQL的存储过程

    存储过程 存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合 调用存储过程可以简化应用开发人员的很多工作 减少数据在数据库和应用服务器之间的传输 对于提高数据处理的效率是有好处的 存储过程思想上很简单 就是数据库 SQL 语言
  • IAR编译器问题的总结

    之前做项目都是用keil编译器比较多 也基本上用得很顺手 但是最近又开始用IAR编译器 结果这次真是被它折磨得快要崩溃 现在把问题总结如下 IAR编译器版本 IAR2 10 4 IAR编译器默认的优化设置一定要注意 这个是之前做的一个项目