i.MX 6ULL 裸机 IAR 环境安装

一. IAR 的安装请自行搜索

二. 使用最新版本的 IAR,需要修改 SDK

1. 在 SDK 的 core_ca7.h 加上 

#include "intrinsics.h" /* IAR Intrinsics */ 

2. debug 时需要修改每个工程下的 ddr_init.jlinkscript,参考链接 

Solved: How to connect to imx6Ull with ddr_init.jlinkscript file? - NXP Community

/*********************************************************************
*              SEGGER MICROCONTROLLER GmbH & Co. K.G.                *
*        Solutions for real time microcontroller applications        *
**********************************************************************
*                                                                    *
*        (c) 2011-2015 SEGGER Microcontroller GmbH & Co. KG          *
*                                                                    *
* Internet: www.segger.com Support: support@segger.com               *
*                                                                    *
**********************************************************************
----------------------------------------------------------------------
Purpose : 
---------------------------END-OF-HEADER------------------------------
*/void Clock_Init() {// Enable all clocksMEM_WriteU32(0x020c4068,0xffffffff);MEM_WriteU32(0x020c406c,0xffffffff);MEM_WriteU32(0x020c4070,0xffffffff);MEM_WriteU32(0x020c4074,0xffffffff);MEM_WriteU32(0x020c4078,0xffffffff);MEM_WriteU32(0x020c407c,0xffffffff);MEM_WriteU32(0x020c4080,0xffffffff);Report("Clock Init Done");
}void DDR_Init() {// Config IOMUX for ddrMEM_WriteU32(0x020E04B4,0x000C0000);MEM_WriteU32(0x020E04AC,0x00000000);MEM_WriteU32(0x020E027C,0x00000030);MEM_WriteU32(0x020E0250,0x00000030);MEM_WriteU32(0x020E024C,0x00000030);MEM_WriteU32(0x020E0490,0x00000030);MEM_WriteU32(0x020E0288,0x00000030);MEM_WriteU32(0x020E0270,0x00000000);MEM_WriteU32(0x020E0260,0x00000030);MEM_WriteU32(0x020E0264,0x00000030);MEM_WriteU32(0x020E04A0,0x00000030);MEM_WriteU32(0x020E0494,0x00020000);MEM_WriteU32(0x020E0280,0x00000030);MEM_WriteU32(0x020E0284,0x00000030);MEM_WriteU32(0x020E04B0,0x00020000);MEM_WriteU32(0x020E0498,0x00000030);MEM_WriteU32(0x020E04A4,0x00000030);MEM_WriteU32(0x020E0244,0x00000030);MEM_WriteU32(0x020E0248,0x00000030);// Config DDR Controller RegistersMEM_WriteU32(0x021B001C,0x00008000);MEM_WriteU32(0x021B0800,0xA1390003);MEM_WriteU32(0x021B080C,0x00150019);MEM_WriteU32(0x021B083C,0x41550153);MEM_WriteU32(0x021B0848,0x40403A3E);MEM_WriteU32(0x021B0850,0x40402F2A);MEM_WriteU32(0x021B081C,0x33333333);MEM_WriteU32(0x021B0820,0x33333333);MEM_WriteU32(0x021B082C,0xf3333333);MEM_WriteU32(0x021B0830,0xf3333333);MEM_WriteU32(0x021B08C0,0x00944009);MEM_WriteU32(0x021B08b8,0x00000800);// Config MMDC initMEM_WriteU32(0x021B0004,0x0002002D);MEM_WriteU32(0x021B0008,0x1B333030);MEM_WriteU32(0x021B000C,0x676B52F3);MEM_WriteU32(0x021B0010,0xB66D0B63);MEM_WriteU32(0x021B0014,0x01FF00DB);MEM_WriteU32(0x021B0018,0x00201740);MEM_WriteU32(0x021B001C,0x00008000);MEM_WriteU32(0x021B002C,0x000026D2);MEM_WriteU32(0x021B0030,0x006B1023);MEM_WriteU32(0x021B0040,0x0000005F);MEM_WriteU32(0x021B0000,0x85180000);MEM_WriteU32(0x021B0890,0x00400000);MEM_WriteU32(0x021B001C,0x02008032);MEM_WriteU32(0x021B001C,0x00008033);MEM_WriteU32(0x021B001C,0x00048031);MEM_WriteU32(0x021B001C,0x15208030);MEM_WriteU32(0x021B001C,0x04008040);MEM_WriteU32(0x021B0020,0x00000800);MEM_WriteU32(0x021B0818,0x00000227);MEM_WriteU32(0x021B0004,0x0002552D);MEM_WriteU32(0x021B0404,0x00011006);MEM_WriteU32(0x021B001C,0x00000000);Report("DDR Init Done");
}/* ConfigTarget */
void ConfigTargetSettings(void)
{Report("J-Link script: Setting up AP map");CORESIGHT_AddAP(0, CORESIGHT_AHB_AP);CORESIGHT_AddAP(1, CORESIGHT_APB_AP);CORESIGHT_IndexAPBAPToUse = 1;Report("Config JTAG Speed to 4000kHz");JTAG_Speed = 4000;
}/* SetupTarget */
void SetupTarget(void) {unsigned int reg;reg = MEM_ReadU32(0x021B0000);reg = reg & 0x80000000;if(reg == 0){Report("Enabling i.MX6ULL DDR3L");Clock_Init();DDR_Init();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/7224.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

五月节放假作业讲解

目录 作业1: 问题: 结果如下 作业2: 结果: 作业1: 初始化数组 问题: 如果让数组初始化非0数会有问题 有同学就问了,我明明已经初始化定义过了,为啥还有0呀 其实这种初始化只会改变第一个…

蓝桥杯-网络安全比赛(7)基础知识 HTTP、TTL、IP数据包、MSS、MTU、ARP、LLMNR、MDNS、NBNS。

1. IP中TTL值能够给我提供什么信息?2. IP头部中标志、13位偏移、32位源IP地址、目标IP、IP数据包格式,有多少字节3. IP头部中的16位标识是什么?4. MSS 和MTU分别有多大?5. 怎么获取路由IP信息?PING、NSLOOKUP、TRACERT…

RAG进阶(二): RAG 融合(rag fusion)

在上一篇博客中,我们学习了多重查询(Multi Query)技术,Multi Query的基本思想是当用户输入查询语句(自然语言)时,我们让大模型(LLM)基于用户的问题再生成多个查询语句,这些生成的查询语句是对用户查询语句的补充,它们是…

Mybatis逆向工程笔记小结

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java全栈-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 目录 1.前言 2.实现方案 2.1. mybatis-generator生成 2.1.1. 环境说明 2.1.2. 数…

【强训笔记】day7

NO.1 思路:双指针模拟,begin表示最长数字字符串最后一个字符,而len表示数字字符串的长度,i用来遍历,如果为数字,那么定义j变量继续遍历,直到不为数字,i-j如果大于len,就…

博客系统项目测试报告

文章目录 一.报告概要二.测试环境三.手工测试用例四.编写测试用例五.自动化测试Selenium测试项目主要特点 一.报告概要 项目概要 本项目是一个全功能的个人博客系统,旨在提供一个用户友好、功能全面的平台,允许用户注册、登录、浏览博客、查看详细内容、…

周刊是聪明人筛选优质知识的聪明手段!

这是一个信息过载的时代,也是一个信息匮乏的时代。 这种矛盾的现象在 Python 编程语言上的表现非常明显。 它是常年高居编程语言排行榜的最流行语言之一,在国外发展得如火如荼,开发者、项目、文章、播客、会议活动等相关信息如海如潮。 但…

#9松桑前端后花园周刊-React19beta、TS5.5beta、Node22.1.0、const滥用、jsDelivr、douyin-vue

行业动态 Mozilla 提供 Firefox 的 ARM64 Linux二进制文件 此前一直由发行版开发者或其他第三方提供,目前Mozilla提供了nightly版本,正式版仍需要全面测试后再推出。 发布 React 19 Beta 此测试版用于为 React 19 做准备的库。React团队概述React 19…

leetCode76. 最小覆盖子串

leetCode76. 最小覆盖子串 题目思路 代码 // 双指针 哈希表 // 这里cnt维护过程:先找到能够匹配T字符串的滑动窗口,然后这个cnt就固定了,因为i向前移动的同时,j也会维护着向前 // 就是当又出现能够满足T字符串的时候&#xff0…

Chrome浏览器安装React工具

一、如果网络能访问Google商店,直接安装官方插件即可 二、网络不能访问Google商店,使用安装包进行安装 1、下载react工具包 链接:https://pan.baidu.com/s/1qAeqxSafOiNV4CG3FVVtTQ 提取码:vgwj 2、chrome浏览器安装react工具…

基于ESP32和ESP8266的物联网开发过程(一)

给大家演示一个小工具,通过Wifi去连接ESP32或者ESP8266出来的一个热点。连接到这个热点之后,可以输密码,也可以不输密码。这里我设置的是不输密码直接进来,我这个是ESP8266。 进来之后直接点配置Wifi,然后可以看到ESP8…

【简单介绍下7-Zip】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

快速入门!学习鸿蒙App开发的终极指南!

鸿蒙(HarmonyOS)是华为推出的一款分布式操作系统,旨在为不同设备提供统一的操作体验。鸿蒙App开发可以让应用程序在多个设备上实现流畅运行。本文将介绍鸿蒙App开发的终极指南,帮助您快速入门。 开发环境搭建 鸿蒙App开发过程需要…

专业渗透测试 Phpsploit-Framework(PSF)框架软件小白入门教程(五)

本系列课程,将重点讲解Phpsploit-Framework框架软件的基础使用! 本文章仅提供学习,切勿将其用于不法手段! 继续接上一篇文章内容,讲述如何进行Phpsploit-Framework软件的基础使用和二次开发。 在下面的图片中&#…

小工具 - 用Astyle的DLL封装一个对目录进行代码格式化的工具

文章目录 小工具 - 用Astyle的DLL封装一个对目录进行代码格式化的工具概述笔记效果编译AStyle的DLL初次使用接口的小疑惑测试程序 - 头文件测试程序 - 实现文件测试程序 - RC备注END 小工具 - 用Astyle的DLL封装一个对目录进行代码格式化的工具 概述 上一个实验(vs2019 - ast…

知识图谱在提升大语言模型性能中的应用:减少幻觉与增强推理的综述

幻觉现象指的是模型在生成文本时可能会产生一些听起来合理但实际上并不准确或相关的输出,这主要是由于模型在训练数据中存在知识盲区所致。 为了解决这一问题,研究人员采取了多种策略,其中包括利用知识图谱作为外部信息源。知识图谱通过将信息…

简单介绍IIC通信协议

文章目录 一,简单介绍二,IIC物理层三,IIC通信时序1.起始位与停止位2.IIC读写地址位信号3.IIC应答信号4.IIC数据位收发信号 四,总线速率五,主机发送数据流程六,主机接收数据流程七,IIC的时钟延展…

【云原生】Pod 的生命周期(二)

【云原生】Pod 的生命周期(一)【云原生】Pod 的生命周期(二) Pod 的生命周期(二) 6.容器探针6.1 检查机制6.2 探测结果6.3 探测类型 7.Pod 的终止7.1 强制终止 Pod7.2 Pod 的垃圾收集 6.容器探针 probe 是…

uniapp文本框上下滚动问题

一个基本需求,textarea标签没有办法通过手拖动的方式进行滚动,当文字超出其容量后,想要编辑上面被遮挡部分的文字这边难以点到,电脑可以鼠标滚轮,但手机需要拖动但无效: 下面提供了我的解决思路&#xff1a…

高精地图是怎么构建的?方案有哪些?高精度语义地图构建的一点思考

高精地图是怎么构建的?方案有哪些?高精度语义地图构建的一点思考 高精度(High-Definition, HD)语义地图是目前自动驾驶领域的一个重要研究方向,近年随着Transformer和BEV的大火,很多大佬团队都开展了HD语义地图构建相关的工作。2…