嵌入式系统设计

痞子衡嵌入式:串行EEPROM接口事实标准及SPI EEPROM简介

邮差的信 提交于 2019-12-04 16:32:15
  大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是 EEPROM接口标准及SPI EEPROM 。   痞子衡之前写过一篇文章 《SLC Parallel NOR简介》 ,介绍过并行NOR Flash基本概念。众所周知,现如今嵌入式非易失性存储器基本被NOR Flash一统江湖了,但在Flash技术发明之前,EEPROM才是非易失性存储器的霸主。EEPROM的全称是"电可擦除可编程只读存储器",即Electrically Erasable Programmable Read-Only Memory,EEPROM技术的发明可是拯救过一大批嵌入式工程师的,毕竟在这之前非易失性存储器技术的演进分别是ROM(只读), PROM(只能写一次), EPROM(紫外线可擦除),擦除方式都不太友好,直到EEPROM的出现才变得人性化。虽说现在Flash是主流,但在较低容量(2Mb以下)尤其是超低容量(1Kb以下)的市场,EEPROM仍然有其不可替代的应用场合。今天痞子衡就来好好聊一聊EEPROM: 一、EEPROM背景简介   聊到EEPROM发展史,不得不提浮栅MOSFET,这是一项发明于1967年的技术,它是所有闪存的基础。1970年,第一款成功的浮栅型器件-EPROM被发明。1979年,大名鼎鼎的SanDisk(闪迪)创始人Eli Harari

韦东山嵌入式Linux学习笔记05--存储管理器

。_饼干妹妹 提交于 2019-12-04 15:55:41
问题 :   为什么两个DDR可以合在一起变成32位? SDRAM:    原理图如下:    jz2440 v3开发板上面用的内存芯片为钰创科技公司生产的EM63A165TS,一片内存大小为32MB大小,一共有两块,共64MB的大小. SDRAM接的是BANK 6,所以他的起始地址是 0x30000000. SDRAM的基本寻址关系 SDRAM的存储结构逻辑如上图, SDRAM内部是一个存储阵列,阵列就如同表格一样,将数据"填进去".和表格的检索原理一样,先指定一个行,再指定一个列,两点确定一个坐标,就可以准确地找到所需要的 单元格,这就是SDRAM寻址的基本原理.这个单元被称为存储单元,这个表格(存储阵列)就是逻辑Bank(就是L-Bank).SDRAM一般含有四个L-Bank. 对SDRAM的访问可以分为如下几个步骤:   1.CPU发出的片选信号nSCS0有效,它选中SDRAM芯片.   2.SDRAM有四个L-Bank,需要两根地址线来选中其中的一个,根据开发板的设计, 选用了ADDR24和ADDR25作为L-Bank的选择信号.   3.对被选中的芯片进行统一的行/列(存储单元)寻址.     根据SDRAM芯片的列地址线数目设置CPU的相关寄存器后,CPU就会从32位的自动分出L-Bank选择信号, 行地址信号,列地址信号,然后发出行地址信号,列地址信号. L

[转]嵌入式系统

自作多情 提交于 2019-12-04 08:45:55
来源自 《嵌入式系统组成结构简介》 ,稍作整理和摘取。 嵌入式系统的组成结构 嵌入式系统由:嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选)以及应用软件系统等四个部分组成。 软件是计算机系统中与硬件相互依存的另一部分,包括 程序 、相关 数据 及其 说明文档 。 程序是按照事先设计的功能和性能要求执行的指令序列,数据是程序能正常操纵信息的数据结构,文档是与程序开发维护和使用有关的各种图文资料。 嵌入式系统的硬件组成 最小硬件系统 MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权,多用户多进程操作系统。 在最普通的情况下,嵌入式微处理器包括: 片内存储器:部分嵌入式微处理器 外部存储器的控制器,外设结构(串口、并口) LCD控制器:面向终端类应用的嵌入式微处理器 中断控制器,DMA控制器,协处理器 定时器,A/D、D/A转换器 多媒体加速器:当高级图形功能需要时 总线 其他标准接口或外设 嵌入式处理器可分为: 嵌入式微控制器(MCU) 嵌入式DSP处理器(DSP) 嵌入式微处理器(MPU) 嵌入式片上系统(SoC) 从计算机角度看,单片机功能太简单,性能太差;DSP太专用,可以看成一个外设; 通用处理器 和 SoC

痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU硬件那些事(2.2)- 在串行NOR Flash XIP调试原理

ぃ、小莉子 提交于 2019-12-03 10:39:07
  大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是 飞思卡尔i.MX RTyyyy系列EVK在串行NOR Flash调试的原理 。   本文是i.MXRT硬件那些事系列第二篇的续集,在第二篇首集中痞子衡给大家详细介绍了EVK板载调试器用法,有了调试器在手,从此调试不用愁。从调试代码所在目标存储器类别上来分,调试一般分为在SRAM调试和在Flash调试。在SRAM调试实现比较简单,程序直接从JTAG/SWD口灌进RAM即可;在Flash调试,则相对复杂一点,因为首先需要有Flash下载算法,下载成功后才能调试。   通常的Cortex-M内核MCU一般都会内嵌并行NOR Flash,这个并行NOR Flash是直接挂在Cortex-M内核高性能AHB总线上的,知名IDE如果支持这款MCU,也都会同时集成对应Flash的下载算法,方便用户直接在IDE里下载代码进Flash和XIP调试,但是i.MXRT内部并没有Flash,用户需要自己外接Flash,那该怎么办?还能在线XIP调试么?别着急,i.MXRT可以支持外接并行NOR和串行NOR实现XIP,从节省管脚数的角度,最常见的做法是将串行NOR Flash挂在i.MXRT FlexSPI总线上,FlexSPI支持XIP特性,所以原理上可以实现在线调试,今天痞子衡就为大家介绍i.MXRT上在外部串行Flash调试的原理:

嵌入式驱动程序设计的小窍门,业界大牛总结

北慕城南 提交于 2019-12-03 07:04:11
对于嵌入式来说,嵌入式应用软件都会在特定时候访问底层固件和进行硬件控制,嵌入式驱动程序的设计是满足嵌入式系统最关键的一步,学习嵌入式对嵌入式驱动程序设计是比较关键的,那么如何学嵌入式驱动程序设计成为了关键,在这里业界大牛总结了一些嵌入式驱动程序设计的小窍门,对学习嵌入式驱动程序设计还是老有用了。 点击了解更多小窍门: http://emb.hqyj.com/VideoCourse/?lbx 首先就是我们在做嵌入式驱动程序设计使用设计模式时,在这里有一个注意的点,认真看哦: 嵌入式驱动程序设计 对于设计模式来说,设计模型就是一个用来处理那些在软件中会重复出现的问题的解决方案。 开发人员可以选择浪费宝贵的时间和预算从无到有地重新发明一个解决方案,也可以从他的解决方案工具箱中选择一个最适合解决这个问题的方案。在微处理器出现之初,底层驱动已经很成熟了,那么,为什么不利用现有的成熟的解决方案呢? 在这里就有一个小技巧咯,驱动程序设计模式大致分属以下4个类别:Bit bang、轮询、中断驱动和直接存储器访问(DMA)。 Bit bang模式:当微控制器没有内外设去执行功能的时候,或者当所有的内外设都已经被使用了,而此时又有一个新的请求,那么开发者就应该选择Bit bang设计模式。Bit bang模式的解决方案很有效率,但通常需要大量的软件开销来确保其实施的能力。Bit

嵌入式判断题

五迷三道 提交于 2019-12-03 07:03:38
嵌入式判断题 问题 1.数字电视机、机顶盒、数码摄像机属于嵌入式系统在信息家电领域的应用。 对 问题 2 .嵌入式技术在我国应用最早的就是工业控制领域。 对 问题 3 .嵌入式系统中的软、硬件是固定好了的,不可裁剪。 错 问题 4 .嵌入式系统是一个纯硬件装置,不包括任何软件。 错 问题 5 .以32位RISC嵌入式处理器加嵌入式操作系统为标志的嵌入式系统为其发展的第三个阶段。 对 问题 6 .一个嵌入式系统往往是一个软硬件的综合体,而且多数软件和硬件绑定在一起出售。 对 问题 7 .产品发而是嵌入式系统开发流程中的最后一个环节。 对 问题 8 .上位机一般用于编辑、编译、链接、运行程序等工作。 错 问题 9 .通常情况下,嵌入式交叉开发环境由上位机、调试通道和下位机三部分组成。 错 问题 10 .嵌入式系统的硬件一般包括嵌入式微处理器、外围电路和嵌入式外围设备等组成。 对 问题 11 .若要称某个系统为嵌入式系统,则它必须满足三个基本的要素,即嵌入性、专用性和计算机系统。 对 问题 12 .嵌入式系统本身具备自举开发能力,用户可以直接在嵌入式设备上做开发。 错 问题 13 .嵌入式系统一般具有实时约束,有时限要求,因此,嵌入式系统一般都采用分时操作系统。 错 问题 14 .运行在智能手机或平板电脑中的Android系统是一种嵌入式操作系统。 对 问题 15

嵌入式工程师

感情迁移 提交于 2019-12-03 07:02:55
从刚接触嵌入式到现在也有四年多了,从听到嵌入式就一头雾水 到现在开发项目,真是泼感荆棘,也走了很多弯路,好多人听到嵌入式 都会想到、知道的多、懂的多,工资高好多人听到后会去培训机构培训一下,想从事这个神秘而又有诱惑力的工作,说道嵌入式工程师我更倾向于嵌入式应用工程师,或者产品开发工程师,嵌入式就是做产品的整体过程阶段的项目开发,因为一个产品需要用到的哪些制作工具,哪些开发资料,都是嵌入式工程师需要做的,包括产品研发电子器件的选型,电路设计,PCB外观尺寸,程序编写,产品人性化设计等,产品批量生产,工厂测试等等只要是产品没出来之前所有的工作都是,想必说道这大家知道为什么做嵌入式工资高了吧,而为什么有些同样是做嵌入式的工资一直上不去呢?,现在公司要求的是效率,将嵌入式分为 嵌入式硬件工程师,嵌入式软件工程师,产品测试工程师,。。。。分的很细,很多刚大学毕业的大学生或者刚培训完出来的进入公司后,就会定位某种职位,比如嵌入式软件工程师,工资5k,然后就一直从事软件的开发,也就把自己定位到软件这个职位上,如果想从事软件是可以的, /*普及一下软件工程师:初级软件工程师是根据单片机例如stm32,430,等一系列的CPU,底层的编写 。虽然说都是主控芯片,但是不进行一番的研究是吃不透的*/ 但是好多公司使只用一款芯片即使再熟练也只是这个芯片。,(芯片用熟练了其实就是复制粘贴

嵌入式视觉技术

落花浮王杯 提交于 2019-12-03 06:57:12
随着嵌入式技术的发展,嵌入式视觉技术也越来越比较重视,多年前。人们对嵌入式视觉技术的研究还是很模糊的,而在嵌入式视觉技术高度专业化应用的今天。越来越多的新兴工业为视觉应用找到了用武之地。那么就让我们谈谈如何使用嵌入式视觉技术、采用嵌入式视觉技术的理由以及近期哪些应用最有希望采用嵌入式视觉技术。    更强处理能力   根据定义,嵌入式视觉系统实际上涵盖了执行图像信号处理算法或视觉系统控制软件的任何设备或系统。智能视觉系统中的关键部分是进行实时高清数字视频流处理的高性能计算引擎、大容量固态存储、智能摄像头或传感器以及高级分析算法。这些系统中的处理器可以执行图像采集、镜头校正、图像预处理和分割、目标分析以及各种启发式(heuristics)功能。嵌入式视觉系统设计工程师采用各种处理器,包括专为视觉应用设计的通用CPU、图象处理单元(GPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)和专用标准产品(ASSP)。上述处理器架构具备明显的优势和短板。在许多情况下,设计工程师将多种处理器整合到一个异构计算环境中。有时候,处理器则被集成到一个组件中。此外,一些处理器使用专用硬件来尽可能实现最高的视觉算法性能。诸如FPGA之类的可编程平台为设计工程师提供了高度并行的计算密集型应用架构以及用于I/O扩展等其他应用的资源。   在摄像头方面

[嵌入式]嵌入式系统概述

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-03 06:56:18
第1章 嵌入式系统概述 1.1 嵌入式系统概述 ·嵌入式系统的定义 嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可剪裁、适应于对系统功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。 这个定义主要包含两个信息,一是嵌入式系统是专用计算机系统,因此必须要有处理器,具备计算机系统的基本特征。二是嵌入式系统的功能是有严格要求并按照指定的应用而设计的。 ·嵌入式系统应用领域 根据嵌入式系统的应用领域有交通管理、工控设备、智能仪器、汽车电子、环境监测、电子商务、医疗仪器、移动计算、网络设备、通信设备、军事电子、机器人、智能玩具、信息家电等等。主要的产品: ·网络设备: 交换机、路由器、MODEM等。 ·消费电子: 手机、MP3、PDA 、可视电话、电视机顶盒、数字电视、数码照相机、数码摄像机、信息家电等。 ·办公设备: 打印机、传真机、扫描仪等。 ·汽车电子: ABS防死锁刹车系统、车载GPS等。 ·工业控制: 各种自动控制设备。 ·现实中的嵌入式系统 ·嵌入式系统的组成 嵌入式系统一般由硬件层、中间层和软件层组成。 ·硬件层 硬件层包括嵌入式微处理器、存储器、通用设备接口和I/O接口。在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。其中操作系统和应用程序都可以固化在ROM中。 ·中间层 硬件层与软件层之间为中间层

嵌入式开发笔记(三)ARM基础知识

纵饮孤独 提交于 2019-12-02 21:00:53
1. ARM的编程模式 1.1当 ARM 采用的是32位架构. ARM 约定: Byte : 8 bits Halfword (半字) :16 bits (2 byte) Word : 32 bits (4 byte) 联想: 数据位宽4 byte,地址映射数据线32条 注意:Word在VC下是16bit,原因早期微软16位时就定义为16bit,后来32位时候未改换成DWord. 1.2 大部分ARM core 提供: (2) ARM 指令集(32-bit) (1) Thumb 指令集(16-bit ) (3) Thumb2指令集(16 & 32bit) 小计:早期时候Thumb指令集,每条指令16bit。缺点:有时需要两个指令完成,效率,时间。之后ARM指令集每条指令32bit,缺点:浪费资源。随后Thumb2(armV7)[16&32]。 1.3 Jazelle cores 支持 Java bytecode (支持JAVA加速) 2. ARM处理器工作模式 2.1 ARM 有7个基本工作模式: (1) User : 非特权模式,大部分任务执行在这种模式 (2) FIQ : 当一个高优先级(fast) 中断产生时将会进入这种模式 (3) IRQ : 当一个低优先级(normal) 中断产生时将会进入这种模式 (4) Supervisor :当复位或软中断指令执行时将会进入这种模式