历史上的今天
返回首页

历史上的今天

今天是:2025年01月29日(星期三)

2021年01月29日 | ARM 单片机新手入门问答

2021-01-29 来源:eefocus

Q: ARM 是什么?

A:ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。


1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。


ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前,全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。


Q:ARM微处理器的特点

A:1、体积小、低功耗、低成本、高性能;

2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;

3、大量使用寄存器,指令执行速度更快;

4、大多数数据操作都在寄存器中完成;

5、寻址方式灵活简单,执行效率高;

6、指令长度固定;


Q:ARM的RISC体系结构

A:传统的CISC(Complex Instruction Set Computer,复杂指令集计算机)结构有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的体系结构会越来越复杂,然而,在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%,显然,这种结构是不太合理的。


基于以上的不合理性,1979年美国加州大学伯克利分校提出了RISC(Reduced Instruction Set Computer,精简指令集计算机)的概念,RISC并非只是简单地去减少指令,而是把着眼点放在了如何使计算机的结构更加简单合理地提高运算速度上。RISC结构优先选取使用频最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻地方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来达到上述目的。


到目前为止,RISC体系结构也还没有严格的定义,一般认为,RISC体系结构应具有如下特点:

- 采用固定长度的指令格式,指令归整、简单、基本寻址方式有2~3种。

- 使用单周期指令,便于流水线操作执行。

- 大量使用寄存器,数据处理指令只对寄存器进行操作,只有加载/ 存储指令可以访问存储器,以提高指令的执行效率。


除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:

- 所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。

- 可用加载/存储指令批量传输数据,以提高数据的传输效率。

- 可在一条数据处理指令中同时完成逻辑处理和移位处理。

- 在循环处理中使用地址的自动增减来提高运行效率。

当然,和CISC架构相比较,尽管RISC架构有上述的优点,但决不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。现代的CPU往往采用CISC的外围,内部加入了RISC的特性,如超长指令集CPU就是融合了RISC和CISC的优势,成为未来的CPU发展方向之一。


Q: ARM的寄存器结构

A:ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括:

- 31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。

- 6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。


同时,ARM处理器又有7种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器(R0~R14)、一至二个状态寄存器和一个程序计数器。在所有的寄存器中,有些是在7种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理器模式下有不同的物理寄存器。


Q: ARM指令集

A:ARM微处理器在较新的体系结构中支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30%~40%以上的存储空间,同时具备32位代码的所有优点。


Q: ARM微处理器系列

A:ARM微处理器目前包括下面几个系列,以及其它厂商基于ARM体系结构的处理器,除了具有ARM体系结构的共同特点以外,每一个系列的ARM微处理器都有各自的特点和应用领域。

- ARM7系列

- ARM9系列

- ARM9E系列

- ARM10E系列

- ARM11E系列

- Cortex-M系列

- Cortex-A系列

- SecurCore系列

- Inter的Xscale

- Inter的StrongARM

其中,ARM7、ARM9、ARM9E和ARM10为4个通用处理器系列,每一个系列提供一套相对独特的性能来满足不同应用领域的需求。SecurCore系列专门为安全要求较高的应用而设计。


Q: ARM微处理器的应用领域

A:到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域:

1、工业控制领域:作为32的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。

2、无线通讯领域:目前已有超过85%的无线通讯设备采用了ARM技术, ARM以其高性能和低成本,在该领域的地位日益巩固。

3、网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。

4、消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。

5、成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。


Q: 如何选择合适的ARM微处理器内核?

A:从前面所介绍的内容可知,ARM微处理器包含一系列的内核结构,以适应不同的应用领域,用户如果希望使用WinCE或标准Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(Memory Management Unit)功能的ARM芯片,ARM720T、ARM920T、ARM922T、ARM946T、Strong-ARM都带有MMU功能。而ARM7TDMI则没有MMU,不支持Windows CE和标准Linux,但目前有uCLinux等不需要MMU支持的操作系统可运行于ARM7TDMI硬件平台之上。事实上,uCLinux已经成功移植到多种不带MMU的微处理器平台上,并在稳定性和其他方面都有上佳表现。

* 系统的工作频率

系统的工作频率在很大程度上决定了ARM微处理器的处理能力。ARM7系列微处理器的典型处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz-133MHz,ARM9系列微处理器的典型处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟频率为100MHz-233MHz,ARM10最高可以达到700MHz。不同芯片对时钟的处理不同,有的芯片只需要一个主时钟频率,有的芯片内部时钟控制器可以分别为ARM核和USB、UART、DSP、音频等功能部件提供不同频率的时钟。

* 芯片内存储器的容量

大多数的ARM微处理器片内存储器的容量都不太大,需要用户在设计系统时外扩存储器,但也有部分芯片具有相对较大的片内存储空间,如ATMEL的AT91F40162就具有高达2MB的片内程序存储空间,用户在设计时可考虑选用这种类型,以简化系统的设计。

* 片内外围电路的选择

除ARM微处理器核以外,几乎所有的ARM芯片均根据各自不同的应用领域,扩展了相关功能模块,并集成在芯片之中,我们称之为片内外围电路,如USB接口、IIS接口、LCD控制器、键盘接口、RTC、ADC和DAC、DSP协处理器等,设计者应分析系统的需求,尽可能采用片内外围电路完成所需的功能,这样既可简化系统的设计,同时提高系统的可靠性。


相关链接


ARM 官方网站

ARM Architecture Reference Manual(PDF,英文)

ARM7TDMI 介绍


现在学习ARM,最好选择基于ARM的内置flash的微控制器入手,一来外围电路简单,系统成本低,而来系统复杂性降低,有利于DIY。

基于ARM的微控制器中,用得最多的就是ARM7TDMI,因此,本文以ARM7TDMI为蓝本介绍。


Q:ARM7TDMI是什么意义?

A:ARM7系列微处理器为低功耗的32位RISC处理器,最适合用于对价位和功耗要求较高的消费类应用。

ARM7微处理器系列具有如下特点:

- 具有嵌入式ICE-RT逻辑,调试开发方便。

- 极低的功耗,适合对功耗要求较高的应用,如便携式产品。

- 能够提供0.9MIPS/MHz的三级流水线结构。

- 代码密度高并兼容16位的Thumb指令集。

- 对操作系统的支持广泛,包括Windows CE、Linux、Palm OS等。

- 指令系统与ARM9系列、ARM9E系列和ARM10E系列兼容,便于用户的产品升级换代。

- 主频最高可达130MIPS,高速的运算处理能力能胜任绝大多数的复杂应用。

ARM7系列微处理器的主要应用领域为:工业控制、Internet设备、网络和调制解调器设备、移动电话等多种多媒体和嵌入式应用。

ARM7系列微处理器包括如下几种类型的核:ARM7TDMI、ARM7TDMI-S、ARM720T、ARM7EJ。其中,ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器核。

TDMI的基本含义为:

T: 支持16位压缩指令集Thumb;

D: 支持片上Debug;

M: 内嵌硬件乘法器(Multiplier)

I: 嵌入式ICE,支持片上断点和调试点;

学习前的准备工作

Q:学习ARM需要哪些软硬件基础知识?

A:软件方面需要C语言的基础知识,汇编语言的基础知识,也就是一般单片机的开发要求。之所以说基础,是因为在开发工程中也可以学习。

PC软件的操作,理解IDE的工程管理模式。

硬件方面需要了解一点模拟电路知识,大部分数字电路知识,各种总线,比如I2C,SPI,硬件模块,比如PLL等等。


Q:哪些公司生产基于ARM7TDMI的微控制器?

A:这个比较多,比如ATMEL,NXP(Philips),ST,TI,AD等等。从购买的方便性和资料的丰富性上考虑,建议选择前三者入门学习。


Q:是自己设计开发板还是买成品开发板好?

A:如果动手能力强,硬件出身,时间充足,可以选择自己设计和焊接开发板,但是由于量的关系,在PCB制版和器件采购方面价格可能不会低。

如果没有那么多时间,焊接水平也一般,建议直接购买成品开发板。现在国内卖ARM开发板的很多,价格也很便宜。


Q: 拿到开发板后应该注意什么?

A:如果是自己设计的开发板,应该根据电路检查和焊接。

如果是购买的开发板,应该检查后,先根据使用说明,将开发板上电,看看板子有没有反应(LED是否闪烁,串口是否有输出),因为一般的开发板卖出的时候板子上都烧好了演示的程序。这样做的目的有二,一是可以验货,二是当以后调试中出现问题时,不会贸然怀疑硬件。


Q: ARM和一般单片机有什么不同?

A:由于体系结构上的不同,ARM的处理器有不同的工作模式,在不同的模式下有不同的寄存器组可用。

建议浏览下面的书籍:

《ARM体系结构与编程》杜春雷 清华大学出版社 影印版


Q: 应该如何建立ARM的概念?

A:应该牢记ARM的各种处理器模式,各处理器模式下的寄存器组。

一些特殊用途的寄存器,比如LR,SP,PC,CPSR,SPSR的用法。

ARM的各种异常处理方式。

ARM,Thumb模式及转换。

ARM的流水线,以便理解一些代码中对PC的操作。

了解ARM的汇编语言,至少应该能看懂,建议浏览下面的文章:

常用ARM指令集及汇编(中文PDF,宛城布衣)


Q: 为什么ARM的开发中总是说到启动代码?

A:由于ARM只是一个处理器内核,各家芯片厂商获得授权,将其配合自家的外围设备构成一个完整的控制器芯片,就具有不同的外部设备和内存分布,因此对这些特定的模块有不同的初始化要求,这些一般都是很底层的操作,只能用汇编来实现。

甚至对于ARM内核本身,由于不同的处理器模式下有不同的堆栈,这个是和实现系统的内存分布有关,必须由用户指定,这部分代码也是汇编。

各种处理器异常的预处理器代码由于要和寄存器直接打交道,也是写作汇编。

对于不同的执行速度要求的代码,可能其在内存中的分布不同,这个也需要加载的代码。

因此,在ARM的开发中总是不能避免地要为特定地控制器写一些汇编的启动代码,设置好处理器模式,初始化好环境后再跳转到main函数运行。


Q: 如何编写启动代码?

A:除非是没有官方的参考,或者极其了结这种处理器,否则不推荐从零开始自己写启动代码。

目前,厂商一般会提供不少例程,这些例程中间都会提供启动代码,可以将其看懂之后,根据自己的需要修改。

特别的,目前一些开发环境也会自带启动代码,比如keil,也可以选用,但是也需要看懂和裁减。


Q: 如何理解启动代码?

A:可以参考下面的文章:

理解启动代码(ADS版本)


Q: 正式开工前应准备些什么?

A:硬件上需要准备一台PC,一块开发板,一个仿真器,一块万用表,一个电源(可选)。

软件上需要找到一个合适的IDE,一些例程,仿真器对应软件,必要的其它工具,比如串口终端等。

准备一份芯片的数据手册,由于是新手入门,中文的最好。

好在现在不少公司提供中文数据手册,比如ATMEL。

AT91SAM7S64中文数据手册

开发工具

Q: 有哪些IDE可供选择?

A:主要有ARM自己的ADS,RealView,IAR的EWARM软件,Keil的uVision for ARM,ARM GCC等等。

这些IDE都有人使用,都有参考资料和例程。

值得一提的是keil,这个IDE相信用过51的应该都熟悉,现在其被ARM收购,在IDE中可以直接使用ARM的工具链,因此可以看作是ARM公司开发工具的另一个外壳。它的界面比较熟悉,而且有强大的软件仿真功能(:!:并不能完全等同硬件仿真),特别适合ARM微控制器的编程,同时使用ARM的工具链,也使得编译效率值得信赖。

由于keil以前有过自己的ARM编译器,但是效率一般,由于以上的原因,现在完全不建议使用。

虽然有不少的例子使用ADS建立工程,但是代码基本不需要修改,只需要在keil中将工程重建即可完成从ADS到keil的转换,具体请参考:

转化ADS工程为keil工程


Q: 如何实现代码调试?

A:使用keil的话可以用软件仿真的方式调试代码,软件仿真通过后再下载到板子上运行。需要注意的是,并不是所有的外设都可以仿真,而且软件仿真并不能代表真实条件下的运行情况。

由于现在不少的器件提供了ISP下载的办法,因此也可以通过ISP将程序下载到板子上测试。需要有足够的经验,并且至少需要一些底层的输出信息才能方便调试,比如LED控制,串口输出等。

比如ATMEL为AT91系列提供了SAM-BA下载工具,可以通过DBGU或者USB口实现ISP编程,具体可以参考下面文章:

ATMEL SAM-BA(TM) and SAM-PROG 用户手册REV1.2(中文版)

硬件仿真方式,由于ARM处理器片上有DEBUG的支持,因此使用很简单的硬件即可完成硬件调试的连接,比如wiggler,但是不同的调试器硬件有不同的速度和功能。在这里需要明白,硬件断点与软件断点,ARM7本身的片上调试部件硬件断点只支持两个,额外的断点支持都需要看调试器的实现方式,比如在RAM中调试的时候,断点数量不受限制,因为RAM的内容是可以改写的,而在flash中调试的时候,就需要注意,象wiggler这样的调试器由于不支持flash断点,因此整个调试过程中只有2个断点可用,而且单步就需要占用一个,实际空余的就只有一个。而jlink由于支持flash断点,因此对于内置flash的ARM微控制器,即使在flash中调试,断点数量也不受限制,这也是不同的调试器有不同价格的原因。


Q: ARM JTAG调试方式是如何实现的?

A:JTAG(Joint Test Action Group)是一种硬件的诊断方式,是一个标准。JTAG提供了硬件控制方法,要完成调试还需要片上调试部件的支持。

可以浏览下面的文章来获得更多信息:

IEEE Std 1149.1-1990 IEEE Standard Test Access Port and Boundary-Scan Architecture

ARM JTAG 调试原理


Q: ARM JTAG仿真器有哪些可供选择?

A:视功能的不同,ARM的仿真器的价格也不同,对于初学者而言,选择一个合适的仿真器是很重要的,太差的会影响调试的效率,太好的价格比较贵,而且在学习过程中不一定需要。

请浏览下面的ARM JTAG仿真器介绍文章:

常见ARM JTAG 仿真器介绍及选型指南

对于初学者,如果成本压力比较大,可以选择wiggler或者ulink。前者可以在大多数IDE中使用,而后者只能在keil的IDE中使用,因此非常适合选择keil作为IDE的网友。其实个人也推荐使用keil来学习基于ARM的内置flash的微控制器,原因在上面已经有描述。

在实际的使用中,ulink有的时候表现得不是很稳定。


Q: ARM JTAG仿真器是否还需要别的软件支持?

A:确实需要别的软件。由于仿真器只是一个连接ARM片上调试部件和PC上的调试器前端的硬件,还需要一个软件来完成信息的交互。

这样的软件通常叫做调试代理,比如 Multi-ICE Server, H-JTAG等等。

一些IDE已经内置了一些调试代理,因此可以”直接”与仿真器通信,比如keil, IAR里面的wiggler驱动等等。

在安装完调试器的硬件驱动之后,还应该安装这些调试代理软件(如果需要),而且应该在调试中配置这些代理(如果需要),然后在开始调试代码之前,都应该运行调试代理,并正确配置,使得调试软件可以与硬件正常通信。

一些常用的ARM JTAG的仿真器的设置及与各种调试器的整合方法如下:

IAR 下使用Wiggler 和Multi-ICE 进行JTAG 调试和FLASH 下载--基于S64-DEK Rev2.0

J-Link中文用户手册Rev2.0详细介绍了Jlink在ADS,RealView,IAR,Keil中的整合与调试设置。

H-JTAG使用说明详细介绍了H-JTAG在各种IDE中的整合及调试设置。

程序开发

基于上面所陈述的原因,学习过程中选择了:

IDE: Keil uVision3

ARM JTAG 仿真器: ULINK

ARM 学习板: S64-DEK 2.0


Q: 如何安装keil IDE?

A:下载keil软件后安装即可。

如果是评估版本的软件,编译和仿真均有代码大小限制。


Q: ULINK的驱动如何安装?

A:安装keil的时候就会安装ULINK的驱动,因此,接上ULINK后,PC一旦识别出设备提示安装驱动程序时,选择自动就可以完成安装。


推荐阅读

史海拾趣

Gowanda Electronics公司的发展小趣事

对于连续可调直流稳压电源电路,网友可能会有多个方面的问题,以下是一些常见问题及其解答:

一、技术原理与性能参数

  1. 问:连续可调直流稳压电源电路的工作原理是什么?
    : 连续可调直流稳压电源电路的工作原理主要是通过扩展开关电源的电压和电流容量,采用高频调制技术,将输入的交流电转换为直流电,并通过调节电路使输出电压稳定在一个可调范围内。其内部包含整流、滤波、稳压等多个环节,以提供稳定且可调的直流电压输出。

  2. 问:如何选择合适的连续可调直流稳压电源?
    : 选择连续可调直流稳压电源时,需要考虑的主要因素包括所需电压范围、电流容量、稳压精度、纹波噪声、保护功能等。同时,也需要根据应用场景考虑电源的体积、重量、散热性能等因素。

二、使用与维护

  1. 问:在使用过程中,输出电压不稳定怎么办?
    : 如果输出电压不稳定,可以首先检查电源输入电压是否稳定,使用稳压电源或变压器等辅助设备来保持输入电压的稳定。其次,检查输出端电压设置是否正确,确保输出电压值在设定范围内。最后,检查电源输出端负载是否符合规定,避免负载过重或过轻导致输出电压波动。

  2. 问:如何对连续可调直流稳压电源进行日常维护?
    : 日常维护主要包括检查电源输入输出线路的连接是否牢固,清洁电源外壳和散热风扇上的灰尘,以及定期检查电源的工作状态和性能指标。如果发现异常或故障,应及时进行处理或更换损坏的部件。

三、故障排查与解决

  1. 问:电源无法输出电压或电流怎么办?
    : 如果电源无法输出电压或电流,可以首先检查电源输入电压是否正常,电源本身是否损坏。其次,检查电源输出端连接是否正确,是否存在开路或短路的情况。最后,检查电源是否过载或短路,确保电源在正常工作范围内。

  2. 问:电源输出电压波动大怎么办?
    : 输出电压波动大可能是由于电源输入电压不稳定、输出端负载不匹配或存在电磁干扰等原因造成的。解决方法包括稳定输入电压、匹配适当的负载、检查并消除电磁干扰源等。

四、扩展与升级

  1. 问:如何扩展连续可调直流稳压电源的电压和电流范围?
    : 扩展电压和电流范围通常需要根据具体的电源设计来进行。一般来说,可以通过更换更高功率的整流管、滤波电容和稳压元件等方式来提升电源的电压和电流容量。同时,也可以通过增加并联或串联电路的方式来实现电压和电流的分档调节。

  2. 问:如何进行电路的升级和改造?
    : 电路的升级和改造需要根据实际需求和技术能力来进行。在升级过程中,需要注意保持原有电路的稳定性和可靠性,避免引入新的故障点。同时,也需要关注新技术的发展和应用,以便在升级过程中采用更先进、更高效的电路设计方案。

以上是针对连续可调直流稳压电源电路的一些常见问题及其解答。希望这些信息能够对网友有所帮助。

Bedford Opto公司的发展小趣事

Bedford Opto公司在追求经济效益的同时,也积极履行社会责任。公司注重环保和可持续发展,致力于减少生产过程中的污染和能耗。同时,公司还积极参与公益事业,为社会做出积极贡献。

Dow-Key Microwave Corporation公司的发展小趣事

为了实现公司的国际化发展战略,Dow-Key Microwave积极开展国际合作与交流。公司与全球知名的电子企业和研究机构建立了紧密的合作关系,共同开展技术研发和市场开拓活动。这些合作不仅提升了公司的技术水平和市场影响力,还为公司的国际化发展提供了有力支持。同时,公司还积极参与国际展览和论坛活动,展示公司的最新技术和产品成果,进一步提升了公司的国际知名度和品牌形象。

Autonics公司的发展小趣事

随着产品质量的提升和市场认可度的提高,Autonics开始积极拓展国内外市场。公司在韩国国内设立了多个办事处和代理公司,覆盖了主要城市和工业区。同时,Autonics还积极开拓海外市场,先后在多个国家和地区设立了销售网点和生产基地。通过国际化战略的实施,Autonics的产品逐渐走向世界,成为国际知名的传感器和控制器品牌。

Automatic Connector公司的发展小趣事

面对日益严重的环境问题,Automatic Connector公司积极响应绿色制造的号召。公司投入大量资金研发环保型电子连接器,采用环保材料和节能工艺,减少生产过程中的污染排放。同时,公司还倡导循环经济的理念,推动废弃电子产品的回收和再利用。这一举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了坚实的基础。

Ark-Les Connectors公司的发展小趣事

Ark-Les Connectors公司从一家小型电子连接器制造商起步,凭借其不断的技术创新,逐渐在行业中崭露头角。公司研发团队致力于开发高性能、高可靠性的连接器产品,满足日益增长的电子设备连接需求。通过对材料科学的深入研究,Ark-Les成功研发出新型耐高温、耐腐蚀的连接器材料,大大提高了产品的使用寿命和稳定性。这一创新不仅赢得了客户的广泛认可,也为公司带来了可观的市场份额。

问答坊 | AI 解惑

开关电源原理及介绍

介绍............................... [ 本帖最后由 82541 于 2009-8-3 14:24 编辑 ]…

查看全部问答>

不可思议的木头钟

这款木头做的钟就像一款有花纹的笔记本电脑,但是这个时尚的新款木钟却是我见过的最引人注目的时钟。是没有显示的情况下,你可能会觉得这是从某个倒霉的椅子上拔下来的一只脚。但就算打开了,你还是觉得这是块木头,只是它的纹路上神秘又漂亮的显示 ...…

查看全部问答>

如何知道通讯录被修改过?

我发的贴,如下 http://topic.eeworld.net/u/20100528/13/fc32eafe-a232-45de-aff6-eaa81c5d2bc5.html?97042…

查看全部问答>

ARM开发板的选购

以前有过在开发板上学习的经历,只是了解基本的开发; 现在主要做GPS和GPRS方面,用Linux做,要求开发板厂商能有比较好的技术支持,希望能提供具体的品牌和型号,谢谢。…

查看全部问答>

100分求助activesync连接问题!!

在CE42系统下用从USB与PC连接(activesync连接) PC下设备管理器里已经能发现PDA设备 但是有时activesync连接不上,必须在PDA上或PC上手动启动连接才能连接上, 有时候手动连接也连接不上, 出现上述问题的概率很大! 另外,传输大文件的过程 ...…

查看全部问答>

2410-linux系统移植

2410-linux系统移植…

查看全部问答>

白光LED现状及LED使用过程中的损失分析

 LED被称为第四代照明光源或绿色光源,具有节能、环保、寿命长、体积小等特点,可以广泛应用于各种指示、显示、装饰、背光源、普通照明和城市夜景等领域。近年来,世界上一些经济发达国家围绕LED的研制展开了激烈的技术竞赛。   出光率决定LED ...…

查看全部问答>

modelsim仿真编译时,报错

`timescale 100ns/10ns  说时间精度 syntax error  unexpected “base”,expecting“class”请问是怎么回事啊 急问啊??????…

查看全部问答>

STM32的硬件I2C搞了2天没搞定,换了软件模拟,30分钟就OK了

STM32的硬件I2C设计的针式异常复杂,我都不明白,别的单片机就那么几个寄存器,照样实现了I2C的所有功能,为什么ST就要设计的这么复杂,还不好用的很。我用I2C2读写铁电,参考了读写EEPROm的sample,并且按照本论坛中的方法进行修改,至少试验 ...…

查看全部问答>

武汉:招聘硬件电路设计工程师及FPGA设计工程师

武汉某位于光谷电子公司,发展前景颇大,目前公司规模约90人,诚恳招纳有意在武汉工作的贤才志士。请有意者将个人最新简历发至terrac@126.com注:因公司政策及行业性质,且薪资范围已明确,不便透露公司名称。感兴趣者我可私信或邮件告知公司相关情 ...…

查看全部问答>