跳转到主要内容

嵌入式

【下载】嵌入式系统的C语言设计

kelly /

当今嵌入式处理器的生产已经远远超过为桌面系统所设计的处理器。本文通过介绍微控制器 (MCU)的开发原理和C语言的相关知识,向读者展示了如何用C语言编写嵌入式MCU程序,内容涉及数据类型和变量、函数库、优化和测试嵌入式C语言程序等。利用贯穿全文 的样例工程,揭示了特定设备硬件开发的详细细节,以及用C语言进修嵌入式程序设计所带来的快速开发、增强的可移植性和再利用等优越性能。

本文适合于从事嵌入式研究的相关技术人员使用。

<span class="download"><a href="http://mm32.eetrend.com/system/files/2016-09/文章/private/100003010-9825-…;

【超实用】嵌入式开发中的几种调试方法,总有一款适合你!

kelly /

越来越多的人选择从事嵌入式开发工作,伴随而来的便是各种对硬件和寄存器的抓耳挠腮。你真的认为你现在的调试方式就是最合适的吗?先看看小粥为你带来的嵌入式调试实用秘籍!

使用集成开发环境开发基于ARM 的应用软件,包括编辑、编译、汇编、链接等工作全部在PC机上即可完成,调试工作则需要配合其他的模块或产品方可完成,目前常见的调试方法有以下几种:

<strong>1、指令集模拟器</strong>

优点:部分集成开发环境提供了指令集模拟器,可方便用户在 PC 机上完成一部分简单的调试工作。

缺点:由于指令集模拟器与真实的硬件环境相差很大,因此即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。

<strong>2、驻留监控软件</strong>

优点:驻留监控软件( Resident Monitors )是一段运行在目标板上的程序,集成开发环境中的调试软件通过以太网口、并行端口、串行端口等通讯 端口与驻留监控软件进行交互,由调试软件发布命令通知驻留监控软件控制程序的执行、读写存储器、读写寄存器、设置断点等。

嵌入式系统之WATCHDOG(看门狗)概述

kelly /

<strong>1、概述:</strong>

WATCHDOG对于没有底层开发经验的开发人员来说,可能比较陌生,但是它在系统起到非常重要的作用,相当于系统警察,当系统发生严重错误(如程序进入死循环等)不能恢复的时候,WATCHDOG能够让系统重启。WATCHDOG的应用主要是在嵌入式操作系统中,避免了系统在无人干预时长时间挂起的情况。

<strong> 2、WATCHDOG模块</strong>

在比较高档的嵌入式硬件芯片中,都有一个WATCHDOG模块,如果在MCU/MPU中没有集成WATCHDOG,一般会在此嵌入式系统中加一个专门的WATCHDOG芯片来实现WATCHDOG机制。此模块主要的功能包括:

(1)提供WATCHDOG控制寄存器和配置寄存器,供软件开发人员根据系统需要进行灵活配置。

(2)提供一接口,使应用软件能够定时给WATCHDOG“喂狗”。

(3)提供WATCHDOG机制,当系统进入不可恢复错误时,能产生一个不可屏蔽中断来通知系统自动重启(一般这样,也有改变为其他处理方式的),只有相应的复位信号才能清除它。

<strong>3、WATCHDOG的实现方式:</strong>

嵌入式工程师眼中应该有的人工智能概念!

kelly /

作者:何立民

“思考”与“行为”是人类智能的两种类型。“思考”是大脑独立的思维方式,“行为”是作用于客体的智力表现。

两种不同的智能类型决定了人工智能两种形式、两条道、两种工具、两个领域。人工智能源自图灵机模型,图灵机在实现了人工智能的实用化智力内核(微处理器)后,迅速分化成两种不同的智力内核(通用微处理器与嵌入式微控制器),以满足人工智能两个领域的全面需求。

<strong>人类智能的两种表现</strong>

思维与智力行为是人类智能的两种表现方式,人类思考方式是思维,人类的行为方式是智力。无论是思维还是智力,都是知识基础上的能力与行为。动物没有知识,人们很难窥见动物思考,只能从动物的行为中了解它们的智力。人们常常喜欢将某些宠物的智力与人类相比,殊不知两者有本质不同:马戏团的小狗会数数,只是条件反射的训练结果,没有任何知识内涵。因此,人类智能是知识基础上的行为与能力。

人类智能与动物智力的本质差异是人类几百万年演化的结果。人类与动物的根本差异在于:动物们在自然竞争中演化,人类摆脱了自然竞争,进入到“认识世界、改造世界”的特殊演化道路。认识世界的思考与改造世界的行为能力构成了人类特殊智能。人们可以从人类大脑的特殊进化中,了解到这种特殊智能的演化结果。

学习嵌入式系统你需要掌握的基础知识!

kelly /

本文主要介绍嵌入式系统的一些基础知识,希望对各位有帮助。

<strong>嵌入式系统基础</strong>

<strong>1、嵌入式系统的定义</strong>

(1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

(2)嵌入式系统发展的4个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。

(3)知识产权核(IP核):具有知识产权的、功能具体、接口规范、可在多个集成电路设计中重复使用的功能模块,是实现系统芯片(SOC)的基本构件。

(4)IP核模块有行为、结构和物理3级不同程度的设计,对应描述功能行为的不同可以分为三类:软核、固核、硬核。

<strong>2、嵌入式系统的组成</strong>

包含:硬件层、中间层、系统软件层和应用软件层

(1)硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。

嵌入式核心模块=微处理器+电源电路+时钟电路+存储器

基于ARM的十一种嵌入式操作系统概述

kelly /

嵌入式操作系统(Embedded Operation System,EOS)是指用于嵌入式系统的操作系统。嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。嵌入式操作系统是负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能,是一种用途广泛的系统软件。

<strong>嵌入式LINUX</strong>

嵌入式Linux 是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。Linux做嵌入式的优势,首先,Linux是开放源代码;其次,Linux的内核小、效率高,可以定制,其系统内核最小只有约134KB;第三,Linux是免费的OS,Linux还有着嵌入式操作系统所需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台而且性能稳定,裁剪性很好,开发和使用都很容易。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的TCP/IP协议有最完备的支持。提供了包括十兆、百兆、千兆的以太网络,以及无线网络,Token Ring(令牌环网)、光纤甚至卫星的支持。

嵌入式系统硬件电路设计时需要考虑的基本问题

kelly /

设计以MCU为核心的嵌入式系统硬件电路需要根据需求分析进行综合考虑,需要考虑的问题较多,这里给出几个特别要注意的问题。

<strong>1、MCU的选择 </strong>

选择 MCU 时要考虑 MCU 所能够完成的功能、MCU 的价格、功耗、供电电压、I/O 口电平、管脚数目以及 MCU 的封装等因素。MCU 的功耗可以从其电气性能参数中查到。供电电压有 5V、3.3V 以及 1.8V 超低电压供电模式。

为了能合理分配 MCU 的I/O资源,在 MCU 选型时可绘制一张引脚分配表,供以后的设计使用。

<strong>2、电源 </strong>

(1)考虑系统对电源的需求,例如系统需要几种电源,如24V、12V、5V或者3.3V等,估计各需要多少功率或最大电流(mA)。在计算电源总功率时要考虑一定的余量,可按公式“电源总功率=2×器件总功率”来计算。

(2)考虑芯片与器件对电源波动性的需求。一般允许电源波动幅度在 ±5% 以内。对于A/D转换芯片的参考电压一般要求 ±1% 以内。 (3)考虑工作电源是使用电源模块还是使用外接电源。

<strong>3、普通I/O口 </strong>

嵌入式系统的一些基本概念

editor /

<strong> 前后台系统 :</strong>

应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。循环中调用相应的函数完成相应的操作,这部分可以看成后台行为。中断服务程序处理异步事件,这部分可以看成前台行为。后台也可以叫做任务级,前台也叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。因为中断服务提供的信息一直要等到后台程序走到该处理这个信息这一步时才能得到进一步处理,所以这种系统在处理的及时性
上比实际可以做到的要差。这个指标称作任务级响应时间。

<strong> 实时操作系统(RTOS):</strong>

实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于 RTOS 之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。在 RTOS支持的系统中,每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要求。实时多任务操作系统,以分时方式运行多个任务,看上去好象是多个任务“同时”运行。只有优先服务方式的RTOS才是真正的实时操作系统,时间分片方式和协作方式的RTOS并不是真正的“实时”。

【下载】嵌入式系统原理与接口技术

editor /

本文将以目前流行的ARM嵌入式微处理器、嵌入式Linux作为主要内容,从嵌入式系统基本原理、系统设计,到抽象出研究嵌入式系统的技术途径进行了较深入阐述。其内容包括了嵌入式处理器原理、汇编语言、系统设计与软件开发、计算机接口技术与应用等方面的知识,并通过实例讲解嵌入式系统设计过程和原理。

<strong>章节目录</strong>

第1章:嵌入式系统的基础知识

第2章:ARM处理器技术

第3章:ARM指令集Thumb指令集

第4章:ARM汇编程序设计技术

第5章:介绍实用的外围接口设计与开发技术

第6章:介绍嵌入式系统的设计流程和设计方法

第7章:介绍基于S3C44B0X的嵌入式实验开发系统

嵌入式工程师必须知道的事

editor /

本文从技术和就业经验等角度,为即将进入嵌入式开发的工程师们详细讲述嵌入式的概念、嵌入式开发之间的异同以及应该如何做出选择。是一些经验之谈,希望对大家有所帮助。

<strong><font size="5">一、工程师眼中的“嵌入式系统”</font></strong>

在工程师看来:着重理解“嵌入”的概念,主要从三个方面来理解: