![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
05--RT1170 开发
文章平均质量分 60
主要用于记录和分享RT1170开发内容
嵌入式实操
践行高效开发的哲学理念
展开
-
嵌入式实操----基于RT1170 SDRAM 初始化过程开分析(三十二)
本文主要讲解RT1170在SDRAM驱动中SDRAM初化命令。原创 2022-08-25 11:28:48 · 481 阅读 · 1 评论 -
嵌入式实操----基于RT1170 移植mbw做SDRAM带宽测试(三十一)
本文主要描述移植mbw工程至SoC,用于SDRAM的带宽测量。原创 2022-08-24 10:58:46 · 506 阅读 · 1 评论 -
嵌入式实操----基于RT1170 AWTK1.6版本库编译(三十)
本文主要描术在windows系统下交叉编译awtk库。原创 2022-08-22 08:39:35 · 338 阅读 · 0 评论 -
嵌入式实操----基于RT1170 ubuntu18 编译awtk库(二十九)
基于RT1170 ubuntu18 编译awtk库原创 2022-08-16 08:36:31 · 302 阅读 · 0 评论 -
嵌入式实操----基于RT1170 支持DVFS(二十八)
本文主要记录如何在RT1170上面实现高温降频原创 2022-08-12 15:37:11 · 302 阅读 · 0 评论 -
嵌入式实操----基于RT1170 使能展频功能(二十七)
本文主要讲述在RT1170上面,使能spread spectrum功有,通过对实钟进行展频配置,以得到良好的EMC效果。原创 2022-08-11 09:43:26 · 611 阅读 · 0 评论 -
嵌入式实操----基于RT1170 QSPI Flash下载算法开发实践(二十六)
本文主要描述了如何在RT1170平台下,制作Flash下载算法文件(FLM文件)原创 2022-08-09 17:23:36 · 878 阅读 · 0 评论 -
嵌入式实操----基于RT1170 移植memtester做SDRAM测试(二十五)
基于RT1170 SDK移植memtester对sdram进行压力测试。原创 2022-08-01 15:19:19 · 478 阅读 · 0 评论 -
嵌入式实操----基于RT1170 FreeRTOS实现CPU使用率统计(二十四)
本文主要描述了如何在RT1170平台下,基于FreeRTOS实现CPU使用率的统计.原创 2022-07-16 16:48:06 · 642 阅读 · 0 评论 -
嵌入式实操----基于RT1170首版硬件制作bootloader 和 app (二十三)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发之前接触过u-boot,但是在单片机上面实现bootloader引导app还是首次,基本的思路是基于官方提供的gpio例程制作成bootloader和app,首先想到的是降低实现的难度,其次也是降低其它外设的影响(本质上还是最小系统的思路)。本章分为两部分app的制作的bootloader的制作。在设计中前面1M的flash空间用于存放bootloader,剩余的空间给app使用。1. 制作app1.1原创 2021-10-07 17:02:09 · 623 阅读 · 0 评论 -
嵌入式实操----基于RT1170 FreeRTOS时定器接口封装(二十二)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发本文主要是描述基于FreeRTOS系统下,定时器的接口封装代码实现。hal_timer_freertos.c,hal_timer_freertos.h。来源于qcloud-iot-explorer-sdk-embedded-c 定时器代码接口1. hal_timer_freertos.c 内容 /*Notes: !!!! HAL_Timer_ func reference qcloud-iot-e原创 2021-07-30 16:42:19 · 302 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之tempsensor温度传感器调试(二十一)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发本文主要是描述整合tempsensor模块接口,供应用开发人员使用。这当中有一个重要的功能,就是CPU的结温达到设置的阈值时,CPU主动复位,本文的阈值的110度。1. 首先阅读原理图NA2. 调试过程2. 1 tempsensor初始化/*----------------------------------------------* * macros原创 2021-07-30 16:32:20 · 1225 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之WDT调试(二十)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发本文主要是描述整合看门狗(WDT)接口,供应用开发人员使用。1. 首先阅读原理图NA2. 调试过程2. 1 WDT初始化/*----------------------------------------------* * macros * *-------------------------------------原创 2021-07-30 16:26:07 · 205 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之第一阶段总结(十九)
一、 为何选在这个时段停下来做总结把应用开发需要的接口全部调通,接下来应用和驱动可以并行开发。接下来需要学习芯片内置的接口,看门狗,内部温度传感模块(用来支撑硬件同事做高温实难),低功耗(以便于硬件做改板优化)。原生的FreeRTOS有些功能是需要自已移植,如CPU的使用率,这些都是需要后期去优化的。...原创 2021-07-30 16:19:32 · 208 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之CAN BUS TJA1043显示调试(十八)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发本文主要说明在NXP SDK调试CAN BUS 注意点。1. 首先阅读原理图官方本身就提供了驱动样例,只要根据外设CAN收发器的型号,依据手册对收发器进行初始化之后,就能做正常的CAN通讯收发。2. 调试过程在FreeRTOS系统下面,CAN总线在收到数据时,会解发之前注册回调,回调运行在中断上下文,如果希望在中断上下文唤醒等待任务时,可参考如下做法:这是一种很常见的数据处理方法,当然如果C原创 2021-07-30 16:08:26 · 605 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之MIPI显示调试(十七)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发所有的显示驱动调试,均涉及像素时钟和显示时序的适配,本身这些参数就和屏有关系以及根据屏厂要求发送相关的MIPI命令。本文主要说明如何在NXP的显示框架下面适配MIPI屏。1. 首先阅读原理图涉及的文件如下:2. 调试过程2. 1 时序注册2. 2 显示资源注册2.3 显示时钟初始化根据屏参及显示的帧率60,需要66M的像素时钟。528/8 = 66M2.4 屏初始化HSD088原创 2021-07-30 15:50:33 · 623 阅读 · 3 评论 -
嵌入式实操----基于RT1170 首板硬件之ADC调试(十六)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发前面调通了SDRAM Flash GPIO EEPROM之后,接下来调试ADC功能,硬件设计如下所示1. 首先阅读原理图针对ADC调试,在RT1052上面ADC的参考电压是3.3V,如下所示:但是在RT1170上面,ADC的参考电压是1.8V,如下所示:这是硬件设计需要注意的地方。2. 调试过程2. 1 时钟初始化void bsp_adc_clock_init(){ /* Con原创 2021-07-29 20:13:39 · 661 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之EEPROM AT24C16调试(十五)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发前面调通了SDRAM Flash GPIO之后,接下来调试EEPROM AT24C16功能,硬件设计如下所示1. 首先阅读原理图针对EEPROM的调试一般需要配置i2c总线的时钟源,总线的通讯速率,对i2c总脚的引脚进行初始化,接下来就是通过官方的接口对i2c设备进行操作。2. 调试过程2. 1 时钟初始化void bsp_i2c5_eeprom_clock_init(){ /* Confi原创 2021-07-29 09:03:43 · 526 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之GPIO INPUT调试(十四)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发前面调通了SDRAM Flash之后,接下来调试GPIO 输入功能,硬件设计如下所示1. 首先阅读原理图2. 调试过程2. 1 引脚初始化/** * @brief GPIO Input pin init * * @param [in] void * @param [out] None * * @return * * @history * 1.Date :原创 2021-07-29 08:41:36 · 219 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之QSPI Flash调试(十三)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发前面调通了SDRAM之后,接下来调试QSPI Flash,硬件设计如下所示1. 首先阅读原理图2. 调试过程使用boards/rt1170-revb/driver_examples/flexspi/nor/polling_transfer工程验证qspi flash是否正常。发现读写测试异常, 首先排查VCC_3V3A是否正常,后面通过比较官方的原理图与自家原理设计,发现FlexSPI_A_CLK引原创 2021-07-28 17:26:04 · 402 阅读 · 0 评论 -
嵌入式实操----基于RT1170 首板硬件之SDRAM调试(十二)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发其实每次拿到新硬件平台的首板件,最注要的就是保证最小系统正常,包含了MCU的上电时序正常,电压正常,晶振起振,Flash及SDRAM硬件正常,引导模式正确(TF/SPI-FLASH/NAND FLASH/EMMC等接口引导),串口会有打印。在单片机系统下,如果程序烧录之后,串口没有输出如何排查问题,先查flash?还是先查sdram? 如果优先调试flash,可以使用FLM下载工程进行调试,如果优先查SD原创 2021-07-28 17:18:25 · 439 阅读 · 0 评论 -
嵌入式实操----基于RT1170 DCD数据开发入门记录(十一)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发使用RT1170开发已经一段时间了,但是发现FreeRTOS系统跑起来了,但是并没有看到SDRAM控制器的代码。1. DCD起什么作用DCD是一个数组,是一个命令数组,用于告诉内部BOOT ROM,执行相关的操作。2. 如何开发首先要导入一个现成的DCD数组:通过MCUXpresso config tool手动配置生成DCD来初始化SDRAM,不仅要配置时钟,引脚 ,SDRAM参数及命令的发送原创 2021-06-08 15:25:08 · 365 阅读 · 0 评论 -
嵌入式实操----基于RT1170解决串口不支持float类型打印问题(十)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发使用Keil进行BSP开发有一段时间,但是针对Keil的配置还不是很熟悉,最近遇到了一个问题串口无法打印float类型的问题,1. 测试代码 PRINTF("----- demo start -----\r\n"); float a_f = 3.33; PRINTF("\r\n a_f = %.1f \r\n", a_f);结果打印如下,没有达到预期:----- demo start原创 2021-06-08 11:08:15 · 250 阅读 · 0 评论 -
嵌入式实操----基于RT1170移植lwshell库实现简单的shell功能(九)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发在MCUXpresso SDK 框架下让调试串口支持shell功能学习链接:https://github.com/MaJerle/lwshell.git参考文档:https://docs.majerle.eu/projects/lwshell/en/latest/get-started/index.html#本人使用的是FreeRTOS,所以通过创建一个任务用来接收调试串口的数据,然后调用lwshel原创 2021-06-07 18:24:21 · 359 阅读 · 0 评论 -
嵌入式实操----基于RT1170 使能SEMC配置SDRAM功能(八)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK SEMC API 接口链接 在MCUXpresso SDK 框架下提供了对SEMC DDR进行操作的接口。学习链接:https://community.nxp.com/t5/MCUXpresso-Community-Articles/i-MX-RT-memory-validation/ba-p/11308281. 首先阅读原理图DDR芯处使用IS42S32800J-原创 2021-03-22 19:06:26 · 1243 阅读 · 0 评论 -
基于RT1170 使能PIT定时功能 (七)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK PIT API 接口链接 在MCUXpresso SDK 框架下提供了对PIT进行操作的接口。周期性的定时器比较简单,相对复杂的应用是组合定时器的使用。挑最简单的方式学习,先"知其然",再"知其所以然"。1. 首先阅读原理图设计中有一个输出引脚,如下所示,可以通过PIT定时器,控制LED灯的显示:USER_KEY1----GPIO_AD_35----GPIO10_I原创 2021-03-18 17:23:32 · 474 阅读 · 0 评论 -
基于RT1170 支持MIPI DSI显示(六)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MIPI 扫盲 MIPI DSI显示是本人在项目中初次接触的接口。由于相关知识缺失,直接去看工程代码,相关的选项没有看懂。所以通过网上先找了链接进行学习,然后再粗略看RT1170 Chapter 44–53 章节的内容。学习是需要发时间的,不要浮躁。MCUXpresso SDK MIPI DSI API 接口链接 在MCUXpresso SDK 框架下提供了对MIPI DSI设备进行操作的接口,可原创 2021-03-11 11:25:36 · 1141 阅读 · 4 评论 -
基于RT1170 支持EEPROM访问(五)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK I2C API 接口链接 在MCUXpresso SDK 框架下提供了对I2C设备进行操作的接口。针对I2C当作输出使用,一般只需要设置I2C总线通讯的速率(如100khz或者400khz)。确认I2C设备的地址及其位数即可对I2C设置进行操作。从下面的截图可以看出来I2C总线可选择的时钟源以及其所对应的最大值。有助于对系统级别时钟初始化代码的理解。本文将使用MCUXpre原创 2021-03-05 16:26:27 · 334 阅读 · 0 评论 -
基于RT1170 开发过程中的反思 (四)
一、调试通过PWM驱动蜂鸣器发费两天的时间,效率太低?当排查问题有四个方面的排查手段:1)硬件是否正常?通过定时驱动GPIO控制蜂鸣器验证是否正常。2)引脚初始化是否正常?通过查看IOMUXC_GPIO_AD_27_FLEXPWM2_PWM1_B定义参数是否正常。3) 模块时钟是否使能?通过PWM_Init函数确认时钟是否已初始化成功。4)初始化参数是否正确?通过FAE确认参数是否正常。原因:最终在FAE的支持下找到了问题PWM故障检测功能没有完全关闭,只关闭FLEXPWM2_PWM1_原创 2021-03-04 19:32:27 · 636 阅读 · 1 评论 -
基于RT1170 使能PWM 输出功能 (三)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK PWM API 接口链接 在MCUXpresso SDK 框架下提供了对PWM output进行操作的接口。PWM接口一般会考滤它的时钟源,然后设置其分频系数,计数寄存器的位数,设置其占空比,然后出来波形。比如说要输出一个10kHz的频率。举例:时钟频率: 132MHz,时钟分频: 128 ,计数频率: 132MHz/128 约为 1.03MHz,计数寄存器是 16 位原创 2021-03-04 11:30:20 · 713 阅读 · 1 评论 -
基于RT1170 使能GPIO输出功能 (二)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK GPIO API 接口链接 在MCUXpresso SDK 框架下提供了对GPIO进行操作的接口。针对GPIO当作输出使用,一般只需要将对应的引脚配置成GPIO功能,方向为输出,需要设置初始化默认电平。接下来就可以对其进行置高或置低操作。1. 首先阅读原理图设计中有一个输出引脚,如下所示: GPIO_AD_35----GPIO10_IO022. SDK ap原创 2021-03-03 09:23:44 · 429 阅读 · 0 评论 -
基于RT1170 使能GPIO输入功能 (一)
本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发MCUXpresso SDK GPIO API 接口链接 在MCUXpresso SDK 框架下提供了对GPIO进行操作的接口。针对GPIO当作输入使用,一般只需要将对应的引脚配置成GPIO功能,方向为输入,需要设置初始化默认电平是不生效的。接下来就可以对其进行读取操作。1. 首先阅读原理图设计中有一个输出引脚,如下所示: USER_KEY1----GPIO_AD_26----GPIO9_IO原创 2021-03-02 17:32:20 · 866 阅读 · 1 评论 -
基于RT1170 开发板开机测评
系列文章目录基于RT1170 开发板开机测评(一)文章目录系列文章目录前言一、RT1170性能二、使用步骤1.引入库2.读入数据总结前言前几天收到 ZLG 的RT1170开发板。单片机类型的处理器一般都是单核处理器,而RT1170内部拥有两个核,其中一个核主频可以达到1G, 相比之下其他的单片机的逊色很多。 一、RT1170性能跨界处理器由于其强大的性能,应用的领域也越来越广,尤其是人机交互方面(HMI),前面使用的RT1052受限于其SDRAM带宽的瓶颈,在高清应用显示上略显不足。 R原创 2021-02-27 12:41:49 · 3486 阅读 · 4 评论