- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 dsPIC33F,同时以 10 位从两个 ADC channel 收集数据。我使用定时器以 64Hz 采样,并将 ADC 设置为自动采样,但手动转换。每次轮询定时器中断时,我都会清除采样位,并且 DMA 缓冲区会填充我的 ADC 数据。绘制此数据表明它给出了正确的值,但我注意到它非常嘈杂!
忽略绿线。红线正确绘制了我的 ADC 结果(峰值是故意的),但如您所见,它始终存在大量噪声。
关于如何减少这种情况有什么想法吗?当同时使用 DAQ 绘图时(但使用相同的电源并连接地面)它会平滑得多,所以我知道这种噪音并不总是存在。 PIC 上的去耦电容器可能吗?我正在使用面包板和通孔组件,模拟传感器放置在尽可能靠近 PIC 引脚的位置。我的印象是这是一个硬件问题,但如果可以在软件方面做些什么,请告诉我。
最佳答案
这可能是由于驱动 ADC 的源阻抗,即您的模拟传感器。它可能需要一个缓冲放大器来更好地驱动 ADC。一个opamp in unity gain configuration应该有帮助。实现某些改进的另一种方法是在 ADC 输入到地之间连接一个小电容器,但您需要仔细选择它的值以避免过多地过滤这些峰值。
关于c - 嘈杂的 ADC dsPIC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16221759/
我将 ADC 与 DMA(STM32F4,ide STM32CubeIDE)一起使用,我认为我了解它是如何工作的,但仍然有一个难题。根据我的理解,MCU 仅在 DMA 传输完成时调用,基本上 MCU
我正在开展一个项目,其中涉及 STM32H743 核板和 16 个 ADC 输入的使用。 显然,这些模拟输入一次使用一次;通过轮询机制读取值并配置下一个输入...配置 ADC channel ,启动
1 指令语法 adc <Xd>, <Xn>, <Xm> 2 指令语义 adc就是带「进位」加法,指令中的c就是英文carry。 整个指令等价于: (Xd
ATtiny88初体验(五):ADC ADC模块介绍 ATtiny88单片机包含一个10bit分辨率的ADC模块,拥有8个通道,最大采样率15kSPS,转换时间14us。ATtiny88的
我正在尝试在 STM32L476 Nucleo 板上调出一个 ADC。我想我已经配置好了,但我一定是漏掉了一步。我知道这可以使用 HAL API 和 CubeMX 来完成,但我更喜欢在启动新板时进行寄
mov eax, ptr_to_num1 ; little endian mov ebx, ptr_to_num2 ; little endian xor ecx, ecx xor edx, edx
.MODEL SMALL .STACK 1000 .DATA MSGA DB 13,10,"Input first number: ","$" MSGB DB 13,10,"Input second
我目前正在对 PIC 微 Controller 进行编程。 当按照我的方式创建结构时,每次我尝试访问该结构的变量的地址是否都会更改? 还是像静态变量一样,意味着地址在编译时确定,并且在整个程序中不会更
大家好,我正在开发一个项目,我必须计算 ADC 读数的移动平均值。从 ADC 输出的数据代表正弦波。 这是我用来获取给定信号的移动平均值的代码。 longNew = (8 bit data from
我希望在每次转换结束后调用 ADC 中断服务程序。但是它没有被调用。 这是我的代码: #define RCC_APB2ENR (*((volatile unsigned long*) 0x4002
有人可以看看我的代码吗?当我旋转电位器时,我试图让 8 个 LED 旋转,但四个 LED 一直保持亮着,根本不旋转。 #include /******************************
目的是将最新的 10 个 ADC 读数存储在一个数组中,然后计算它们的平均值以供其他地方使用。每次更新时删除最旧的。 关于 LED 时序,如果 ADC 读数在下面写的边界内,它必须将时序从 1s 切换
我正在尝试将音频ADC(wm8782 / pcm1803a)与Beagle Black连接。我已经对文件 davinci-evm , wm8782.c 和BB-BONE-AUDI-01设备树覆盖文件进
我正在尝试在简单的连续转换模式下通过 STM32F411RE 配置 ADC。我使用 CubeMX 生成基于 HAL 驱动程序的代码,这是生成的代码中初始化 ADC 的部分内容: /* ADC1 ini
我只是对我用 C 编写的反汇编 32 位程序进行一些分析。以下是反汇编程序输出的一部分: 41153c 02 00 add al, [eax] 41153e 00 00 add [eax]
我一直在运行Blarggs CPU tests通过我的 Gameboy 模拟器,op r,r 测试表明我的 ADC 指令工作不正常,但 ADD 是。我的理解是两者之间的唯一区别是在添加之前将现有的进位
我正在使用Renesas RX62N ;我的屏幕使用 ADC 单元 1,我的代码使用单元 0。 难道两个ADC单元不能一起工作吗?当我分别运行“ADC”和“显示代码”时,它工作正常,但一旦我尝试将它们
描述很长,抱歉。我用粗体突出显示了问题。 我目前正在尝试建立一个 driverlib 机制来执行以下操作: 大约每 20 个 RTC 预分频器 1 事件,检查是否应进行 ADC 测量。 如果需要,请设
我正在努力让 ADC 与我的设备配合使用。我正在使用 dsPIC33FJ128GP802,并尝试通过手动采样和转换缓慢启动。 我的代码发布在下面,我已经设置了 ADC 的每个寄存器,然后尝试仅采样一次
我的板上有一个 adc 模块。我在信号发生器上创建了一个正弦波。我将这个发生器的输出提供给一个 adc 引脚。最后我定期读取这个引脚的值。我尝试在我的软件上创建一个正弦波。 x = t, y = As
我是一名优秀的程序员,十分优秀!