Questions tagged «microcontroller»

紧密耦合的独立设备中包括中央处理器(CPU),内存和(通常)各种I / O外设(UART,ADC,DAC,通用I / O,I2C等)的设备包。

7
如何使用ADC测量负电压?
我正在使用带有内置10位ADC的PIC微控制器,希望测量-1至-3V范围内的电压。 我曾想过要在反相模式下使用运算放大器,以使电压为正,然后将其馈送到微控制器的ADC,但是在这里,我必须使用负电源为运算放大器供电,对吗?我现在不想使用负电源,并且想知道是否有可能实现这种配置?你能帮忙吗?

16
为什么用PLC代替微控制器?
为什么每个人都在工业环境中使用PLC,而不是基于微控制器的解决方案? 对于较长的任务,PLC程序与微控制器程序一样复杂。 基于微控制器的解决方案可能更具可定制性,并且价格更低。


5
单片机保质期
我们的采购部门要求AT32UC3B1256,供应商有数千个存储空间。但是,这些托盘的日期代码为2009年。 虽然对于集成电路来说,保质期通常不是什么大问题,但10年是一个很大的数字。 我寻找了一些有关保质期的一般信息。例如TI声明: 从包装的生产日期到TI或TI授权的分销商交付产品,TI的标准包装产品保质期为两年。 TI还提供某些产品的延长保质期(ESL),从产品生产到TI交付或TI授权分销商提供的总保质期最长为五年,产品保修从实际发货日期开始计算,不是生产日期。 根据供应商的说法,托盘是密封的。对于微控制器,保质期的限制因素是什么?组装之前,这些零件可能需要长时间回火吗? TLDR:我们是否应该考虑购买拥有10年历史的微控制器?

9
在嵌入式C开发中使用volatile
我一直在阅读一些文章,并在Stack Exchange的答案中找到有关使用volatile关键字来防止编译器对可能以编译器无法确定的方式更改的对象进行任何优化的答案。 如果我正在从ADC读取数据(我们将其称为变量adcValue),并且将该变量声明为全局变量,那么volatile在这种情况下是否应该使用关键字? 不使用volatile关键字 // Includes #include "adcDriver.h" // Global variables uint16_t adcValue; // Some code void readFromADC(void) { adcValue = readADC(); } 使用volatile关键字 // Includes #include "adcDriver.h" // Global variables volatile uint16_t adcValue; // Some code void readFromADC(void) { adcValue = readADC(); } 我问这个问题是因为在调试时,虽然最佳实践表明(在我的情况下(直接从硬件更改的全局变量))volatile是强制性的,但我看不出两种方法之间的区别。

4
TI为什么有这么多微控制器?
我正在与一个小组一起从事一个项目,我负责该项目的数字部分,因此我将编写代码。从模拟到数字,我必须选择一个微控制器。 我看着TI微控制器,发现它们有很多。他们有: 斯特拉里斯 大力神 MSP430系列 清单还在继续.. 我的问题: 一个使用哪个微控制器,为什么? 在什么情况下应该使用微控制器X而不是Y? 为什么会有这么多不同的微控制器?

5
为什么微控制器通常不具有片上DAC?
在这个答案中,我读到微控制器通常没有DAC,而有ADC。这是为什么? 编辑 我很欣赏像在R-2R DAC中那样集成电阻器的房地产价格是昂贵的(感谢Mike,您的回答),但是我认为可以将开关电流DAC制成得非常小,因为它们只需要几个晶体管。

8
如何选择MCU平台?[关闭]
MCU平台众多,一旦有人习惯了它们,他们通常不愿意切换到另一个平台。 我的问题是:如果今天人们开始将MCU用于一般用途,那么如何选择一个呢?不同平台的独特卖点是什么?

3
最低工作温度-外太空?
我一直在看一些微控制器,我已经看到它们有一些“怪异”的最低工作温度,例如-25度或-10度等。但是我真的不明白为什么会有最低,最高我确实了解,因为一切都会融化并破裂,电阻会增加,从而使信号太弱。但是当你走到冰冷的一面。一切都会变得越来越好,阻力会降低,一切都会变得更加稳定。但是...最低工作温度为-25度...为什么不是0开尔文? 因为我在考虑火星探测器和其他卫星,当它们在太阳后面时,它们的工作温度接近0至50开尔文,火星探测器...根据Wiki,它的温度低至−87°C(- 125°F)。而且这仍然比-25度还要冷得多。 因此,有人可以向我解释为什么微控制器确实具有最低工作温度吗?越彻底越好。

5
何时使用下拉电阻和上拉电阻
在学习和试验了微控制器之后,我了解了上拉和下拉电阻的概念。我现在了解何时以及如何使用它们,以及它们如何工作。我主要是使用上拉电路,因为我被教过,但是对我来说似乎一直有些倒退,因为关闭开关会将MCU输入设置为LOW。我认为使用下拉电阻会更有意义,以便在开关断开时输入为LOW,但这只是我的想法。 我应该向上还是向下拉单掷输入?什么时候比往上拉优先选择向下拉?

2
STM32了解GPIO设置
在STM32标准外设库中,我们需要配置GPIO。 但是我不确定有3种功能如何配置它们; GPIO_InitStructure.GPIO_Speed GPIO_InitStructure.GPIO_OType GPIO_InitStructure.GPIO_PuPd 在GPIO_Speed中,有4种设置可供选择 GPIO_Speed_2MHz /*!< Low speed */ GPIO_Speed_25MHz /*!< Medium speed */ GPIO_Speed_50MHz /*!< Fast speed */ GPIO_Speed_100MHz 我怎么知道我要选择哪种速度?使用高速或低速是否有优点或缺点?(例如:功耗?) 在GPIO_OType中,有2种设置可供选择 GPIO_OType_PP // Push pull GPIO_OType_OD // Open drain 如何知道从中选择?什么是开漏和推拉? 在GPIO_PuPd中,有3种设置可供选择 GPIO_PuPd_NOPULL // No pull GPIO_PuPd_UP // Pull up GPIO_PuPd_DOWN // Pull down 我认为此设置与推拉的初始设置有关。

5
为什么大多数IC上的RESET / MCLR之类的东西都处于低电平?
惯例? 实施起来容易吗? 另一个原因? 是否有诸如微控制器上的MCLR或RESET之类的信号为低电平有效的原因,也就是说,您必须将其拉低以复位IC,然后将其拉高以“运行” IC。 我很好奇,因为这会给我带来一些问题。如果它为高电平有效,则在某些情况下我可以避免使用MCLR上的电容器,而只需处理一个下拉电阻。看来只会增加复杂性。

18
今天有哪些好的微控制器?[关闭]
我具有微控制器的汇编和C编程经验,但是对当今公司提供的各种MCU和DSP系列不熟悉。(例如:德州仪器,Atmel,瑞萨电子) 我想知道好的微控制器/ DSP,以及用它们开发的东西。请总结您对各种MCU / DSP系列的理解,每个答案一个系列。 如果您详细介绍什么是该微控制器的主要应用,那也将非常有趣。 (这是一个“社区Wiki”,因此信誉度高于100的任何人都可以完善和改善答案)

8
为什么微控制器的RAM这么少?
也许这更多是一个感知问题,但是在过去的20年中,微控制器似乎在飞跃发展,几乎在所有方面,更高的时钟速度,更多的外设,更容易的调试,32位内核等。 看到RAM以10的KB(16/32 KB)为单位仍然很常见。 看来这可能不是直接影响成本或规模的问题。RAM控制器超过某个阈值是否会带来复杂性问题? 还是只是通常不需要它? 在一个受欢迎的互联网供应商的零件矩阵上,我看到一个256 KB的Cortex M4不到8美元,然后再花几美元,您可以找到更多没有ROM的东西,但是看起来很稀疏... 我完全不需要具有MB易失性存储的微控制器,但似乎有人可能会...

8
为什么继电器如此频繁地由光耦合器驱动?
自从像Arduino这样的许多微控制器开发板问世以来,已经出售了许多继电器模块来驱动交流电源。 其中许多似乎使用光耦合器,驱动器晶体管和继电器来驱动负载(例如Amazon) 为什么要这样实现? 我的一些想法: 继电器提供的隔离度比大多数光耦合器好或更好 仍然存在驱动器晶体管,因此无法节省组件 仍然存在感应反冲保护,因此无法节省组件 光耦合器不如晶体管便宜,因此与仅驱动晶体管相比,其成本更高 由于这些都是DIY产品,因此无需满足任何法规要求 我从未见过在商业设备中由光耦合器驱动的小型市电继电器 这些板中的许多板似乎设计得并不出色(与间隙或爬电无关),因此即使光耦合器只是提供两层隔离,该板也无法做到这一点。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.