故事起源于这周五的一封公司邮件,标题是“恩智浦B站首支原创视频播放量破万”,公司Marcom部门特地群发了这个邮件给全体员工,并鼓励大家积极DIY工作相关的有趣视频,为公司这个萌新up主提供素材。于是痞子衡点开了公司在B站的官方主页,可以看到目前一共有13支视频了,最早的视频发布于2021年1月10日,事实上恩智浦也是今年才正式入驻B站。NXP恩智浦中国官方B站主页: https://space.bilibili.com/1925340085/B站一直以来都是主打...
1 . 用预处理指令 #define 声明一个常数,用以表明 1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL2 . 写一个 "标准"宏 MIN ,这个宏输入两个参数并返回较小的一个。 #define MIN(A,B)((A) <= (B) ? (A) : (B)) 已知一个数组table,用一个宏定义,求出数据的元素个数。参考答案:#define NTBL#define NTBL (sizeof(table)/sizeof(table[0])) 3. 预处理器标识 #error的目的是什么?不知道4. 嵌...
随着互联网的快速发展,嵌入式也越来越火热,更多的人投入到嵌入式开发的行列中来,那么想要学习嵌入式,该从哪里入手学习,嵌入式学习路线图怎么学?想要学习好嵌入式,想成为嵌入式软件工程师。那么当前企业需要哪些技术呢? 1.嵌入式上层的软件应用开发需要:精通嵌入式Linux C语言编程、嵌入式Linux C语言数据结构、嵌入式Linux项目开发流程、嵌入式 Linux并发程序设计、嵌入式 Linux应用编程、嵌入式 Linux网络编程、嵌入式数据库开发;...
一、一些存储类相关的概念 1、ROM (read only memory)只读存储器,一般作为外部存储器,类似于硬盘、Flash、光盘等。 2、RAM (ramdam access memory)随机访问存储器,内部存储器,用来存储程序,比如DRAM、SRAM、DDR等。 RAM又可分为DRAM(dynamic ram)动态RAM和SRAM(static ram)静态RAM,其各自的特点为: DRAM容量大、造价低,缺点就是上电后不能直接使用,而需要软件初始化后才能使用。 SRAM容量小、造价高,优点就是...
关于i.MXRT系列的eFuse/OTP,痞子衡之前在介绍Boot时写过两篇,分别是针对RT1050的《eFuse及其烧写方法》和针对RT600的《OTP及其烧写方法》,今天要介绍的i.MXRT1170 eFuse其实是这两者的融合,在空间组织上(尤其是Shadow Register)更像RT1050,但是在访问可靠性保护策略上又接近RT600。关于访问可靠性保护策略,痞子衡之前没有提及,今天咱们就展开聊一聊。 大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是...
孤儿进程、僵尸进程、守护进程的概念 孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程所收养,并由init进程对它们完成状态收集工作。僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。守护进程:守护进程就是在后台运行,不与任何...
Bootloader是嵌入式MCU开发里很常见的一种专用的应用程序,在一个没有Bootloader的嵌入式系统里如果要更新Application,只能通过外部硬件调试器/下载器,而如果有了Bootloader,我们可以轻松完成Application的更新升级以及加载启动,除此以外在Bootloader中还可以引入更多高级特性,比如Application完整性检测、可靠升级、加密特性等。KBOOT是设计运行于Kinetis芯片上的一种Bootloader,KBOOT由飞思卡尔(现恩智浦)官方推出,其功...
00. 目录 文章目录 00. 目录01. ModbusTCP概述02. ModbusTCP数据帧2.1 **报文头MBAP**2.2 **帧结构PDU** 03. PDU详细结构04. Modbus TCP报文示例4.1 读输入寄存器报文分析4.2 写多个保持寄存器报文分析 05. Modbus TCP通信06. Modbus仿真软件07. 其它7.1 开关量7.2 数字量7.3 模拟量7.4 离散量7.5 脉冲量 08. 附录01. ModbusTCP概述 Modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网...
NXP-MCUBootUtility v3.0之前的版本主要支持i.MXRT系列,该系列都是不含内部Flash的,因此芯片本身比较复杂,对于嵌入式初学者来说,玩起来的难度较大。从v3.0开始,MCUBootUtility加入了LPC、Kinetis的支持,这两个系列MCU大多含有内部Flash,玩起来的难度较小。-- 痞子衡维护的NXP-MCUBootUtility工具距离上一个版本(v2.4.0)发布过去2个半月了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,NXP-MCUBootUtility将...
本系列教程将向大家讲述,在自己的计算机上构建完善的嵌入式系统开发环境的方法。 本文将向大家讲述安装Doxygen生成程序注释文档的方法。 Doxygen简介: Doxygen 是一个程序的文件产生工具,可将程序中的特定注释转换成为说明文件。通常我们在写程序时,或多或少都会写上注释,但是对于其它人而言,要直接探索程序里的注释,与打捞泰坦尼克号同样的辛苦。大部分有用的注释都是属于针对函数、类型等等的说明。所以,如果能依据程序本...
一般需要在不同的环境(日常环境、性能测试环境、预发环境和生产环境等等)中配置不同的数据源,例如,在开发时非常适合使用嵌入式数据源、在QA环境中比较适合使用DBCP的BasicDataSource、在生产环境中则适合使用<jee:jndi-lookup>元素,即使用JNDI查询数据源。 在Spring实战3:装配bean的进阶知识一文中我们探讨过Spring的bean-profiles特性,这里就需要给不同的数据源配置不同的profiles,Java配置文件的内容如下所示:package o...
嵌入式开发Verilog教程(三)——Verilog HDL基本语法汇总(上) 前言一、简单的Verilog HDL模块1.1 Verilog HDL程序简单模块1.2 Verilog HDL程序模块结构1.3 Verilog HDL程序模块端口定义1.4 Verilog HDL程序模块内容 二、Verilog HDL的数据类型及其常量、变量2.1 常量2.1.1 数字2.1.2 参数(Parameter)型 2.2 变量2.2.1 wire型2.2.2 reg型2.2.3 memory型三、Verilog HDL的运算符及表达式3.1 基本的算数运算符3.2 位运算符3.3 逻...
进程的空间模型 Linux下使用虚拟内存空间给每一个进程,32位操作系统下,每个进程都有独立的4G虚拟内存空间。其中包括:内核区:用户代码不可见的区域,页表就存放在这个区域中。 用户区:a、代码段:只可读,不可写,程序代码段。b、数据段:保存全局变量,静态变量的区域。c、堆区:就是动态内存,通过malloc,new申请内存,有一个堆指针,可以通过brk系统调用调整堆指针。d、文件映射区域:通过mmap系统调用,如动态库,共享内存...
最近需要使用嵌入式数据库进行存储应用本地信息,本文章主要进行记录当前比较流行的嵌入式数据库相关的链接,嵌入式数据库往往是以lib的形式存在,常用于持久化存储软件的信息,嵌入式数据库往往和应用软件紧密集成: 特点:database systems with differing application programming interfaces (SQL as well as proprietary, native APIs); storage modes (on-disk, in-memory, and combined); The term embedded database can...
主要需要的刷机方式有两种,一种是使用SD卡启动,一种是通过USB启动SD卡的启动需要先将原有程序中的uboot破坏,破坏之后要先通过九鼎的下载软件将uboot的bin文件加载到SD卡中这样当开发板上电后,210在boot选择阶段无法从emmc中安装交叉编译工具链 交叉编译工具链事实上就是一个软件,在windows内,软件有两种安装方法,一种是通过软件安装包安装,一种则是直接解压,执行可执行文件就可以运行的软件 在linux中也是如此,一种是通过...