问答

汇集网友智慧,解决技术难题

zchong

TA的家园币:2089  

  • 运算放大器输出电压波形似乎被限制了,求解答!

    本帖最后由一只葱于2023-5-2617:16编辑如上图所示,我的运算放大器最高输出可达接近4V,也就是饱和值在4V,但是现在出现了一个问题,我先通过电位器将放大倍数调低(也就是降低图中RR2的阻值),使得一个输入信号经过放大后,负压峰值在-1.2V左右,正压峰值在1.4V左右。如下图所示:因为在测试的过程中总感觉信号真实放大值并不应该在-1.2~+1.4V(感觉超过-1.2V的电压被失真了),因此我进行一个偏置,调整RR1使得信号的零点向下偏移0.6V,如下图所示:按道理负压峰值应该变为-1.2-0.6=-1.8V,但是这张图中负压依旧被限制不能超过-1.2V,即信号的下半部分长度变成了0.6V(被缩短了!);同样,信号上部分似乎也有问题,变成了1+0.6=1.6V(被拉长了!)。总的来说,我不管如何调整偏置零点,正负电压的峰值都被限制在了-1.2到1.4V之间,并不是随着零点偏移整体向下移动或向上移动(这明显有问题)。更奇怪的是,我通过调整RR2的阻值可以改变这种限制(比如增大RR2可以使得±4V才饱和,减小RR2有时±0.6V就感觉饱和了),但是按道理增益不管如何,都应该是±4V为饱和值才对呀,我不理解,求好心友友能帮帮我。(电路图如下)注:测试了供电电压是稳定的:正压+5.02V,负压-4.81V。还有我这个是采集传感器的输出信号,最前面的电压跟随器有没有必要去掉呢?这里调零和放大用的同一个运算放大器,应该对上面问题的影响不大吧?放大器的电阻R1用的200Ω是不是小了?

  • GD32F105VCT6的ADC采集口异常输出3.6V电压

    我用三十多个IO口采集开关量,但开关量电压超过4V时会导致ADC采集口(PA1)异常带3.6V电压

  • 为何电压跟随器在负电压区域无法正常工作?

    大家好:新手入门,刚接触电路设计,前来提问,多请包涵。我使用NE5532搭了一个电压跟随器,正负电源输入分别为6.0V和-5.5V,在正输入端接直流输入,测负输入端的电压。电路如下:其中反馈回路上要接外部电路,用R7代表,目的是使得负输入端的电压跟随正输入端,并且R7上没有电流通过。在测试这个电路时,发现当输入电压Vcc>-0.8时,负输入端的电压基本等于Vcc,一直到3.3V都正常;然而一旦Vcc<-0.85V,负输入端的电压就恒定在-0.82V了。我尝试更换了一些其他运放,如HA17358、LM2904N等,均是同样的现象。想请教大家,这是什么原因?

    运放

    2023-04-04 6
  • gd32f303rct6,烧录后,只有在debug模式下,程序才能正常运行

    本帖最后由194490490于2023-3-308:25编辑1,芯片:gd32f303rct62,boot0和boot1都接地。3,同样的程序stm32f103rct6没有问题。4,实验内容:通过dma+pwm,控制pb3,输出波形,从而控制rgb灯的点亮,熄灭和颜色。但是程序烧录后,只有在debug模式下程序才能正常运行(点击魔术棒,然后点debug,再点setting不做任何设置,直接退出,程序能自动正确运行)。如果拔除jlink与开发板连线,直接重启电源或按复位都不能正确运行程序。请哪位大佬能不能帮忙看看,我写的配置程序有没有问题,帮忙分析一下原因。5,voidvLED_init(void),为驱动配置程序。6,voidvSetLED(uint8_t(*color)[3],uint16_tlen),为通过dma+pwm向rgb灯芯片发送数据问题已经解决了,配置gpioremap时不仔细一个参数配置错了,正确的是(GPIO_SWJ_SWDPENABLE_REMAP)。\argGPIO_SWJ_NONJTRST_REMAP:fullSWJ(JTAG-DP+SW-DP),butwithoutNJTRST\argGPIO_SWJ_SWDPENABLE_REMAP:JTAG-DPdisabledandSW-DPenabled\argGPIO_SWJ_DISABLE_REMAP:JTAG-DPdisabledandSW-DPdisabled复制/**************************************/**************************************功能描述:LED初始化,gpio,pwm,dma入口参数:无返回值:无***************************************/voidvLED_init(void){timer_oc_parameter_structtimer_ocintpara;timer_parameter_structtimer_initpara;/*PWM_DMA_channelconfiguration*/dma_parameter_structdma_data_parameter;rcu_periph_clock_enable(RCU_TIMER1);//使能定时器1时钟rcu_periph_clock_enable(RCU_GPIOB);//使能GPIOB时钟gpio_pin_remap_config(GPIO_TIMER1_FULL_REMAP,ENABLE);//TIMER1fullremappinggpio_pin_remap_config(GPIO_SWJ_SWDPENABLE_REMAP,ENABLE);//下载口NJTRST引脚当做普通I/O口/*ConfigurePB3(TIMER1CH1)asremapfunction*/gpio_init(GPIOB,GPIO_MODE_AF_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_3);//PB3配置成复用推挽输

  • 关于AGND,DGND,PGND的隔离问题

    最近在设计电路时,由于电路中既涉及PGND(电磁阀,气泵),又涉及AGND(模拟电路),还涉及DGND,在设计原理图时,请问这三个地分别怎么隔离呀,可以画个电路图示意下吗?我看网上的说法是不同的地之间0欧电阻单点隔离,但由于设计时电磁阀和气泵的电路又包含光电耦合的情况,网上鲜有描述这种情况下应该怎么办。还有的话模拟电源和数字电源又应该怎么隔离呢,可以画一下电路图吗?由于毕设电路需要解决这些问题,且之后还需要画PCB板,所以比较急,还请大家解答一下,非常感谢!

  • 如何测瞬时电压、电流?

    使用使stm32如何测出瞬时脉冲电压电流?

    2023-02-27 9
  • 请教ALC5616芯片的设备地址计算

    上图是关于alc5616芯片的设备地址部分,请问为啥它的设备地址是0x1b?我参考网上资料,计算出来的是0x1a,因为00011010=0x1a。

  • 刚买的STC32芯片可以直接用USB进行程序烧录吗?

    本帖最后由6·7于2022-12-121:23编辑刚买的芯片(stc32g12k128)可以直接用USB进行程序烧录吗,还是要先通过ch340烧录程序后才能用usb烧录?自己焊的两个核心板用usb烧录程序时串口助手都识别不到串口。

    国产芯片

    2022-11-29 4
  • 华大hc32f460 DMA问题

    最近项目拟用华大的HC32F460,在开发过程,遇到一个奇怪问题,我准备用DMA来传递数据,用定时器的比较匹配事件来触发DMA,发现无法启动DMA(定时器的比较匹配功能正常,有PWM波形输出)。如果改用定时器上溢事件启动DMA,DMA可以正常启动,不知道是何原因?测试代码如下:voiddma_rs232_init(){stc_dma_config_tstcDmaCfg;stc_irq_regi_conf_tstcIrqRegiConf;MEM_ZERO_STRUCT(stcDmaCfg);stcDmaCfg.u16BlockSize=1;stcDmaCfg.u16TransferCnt=0;stcDmaCfg.u32SrcAddr=(uint32_t)(&rs232_data);/*源地址*/stcDmaCfg.u32DesAddr=(uint32_t)(&(M4_USART1->DR));/*串口发送寄存器地址*/stcDmaCfg.u16SrcRptSize=1;stcDmaCfg.u16DesRptSize=1;stcDmaCfg.stcDmaChCfg.enSrcRptEn=Disable;stcDmaCfg.stcDmaChCfg.enDesRptEn=Disable;stcDmaCfg.stcDmaChCfg.enSrcInc=AddressFix;stcDmaCfg.stcDmaChCfg.enDesInc=AddressFix;stcDmaCfg.stcDmaChCfg.enTrnWidth=Dma8Bit;stcDmaCfg.stcDmaChCfg.enLlpEn=Disable;stcDmaCfg.stcDmaChCfg.enIntEn=Enable;PWC_Fcg0PeriphClockCmd(PWC_FCG0_PERIPH_DMA1,Enable);DMA_Cmd(M4_DMA1,Enable);DMA_InitChannel(M4_DMA1,DmaCh1,&stcDmaCfg);DMA_ChannelCmd(M4_DMA1,DmaCh1,Enable);DMA_ClearIrqFlag(M4_DMA1,DmaCh1,TrnCpltIrq);/*配置DMA中断*/MEM_ZERO_STRUCT(stcIrqRegiConf);stcIrqRegiConf.enIntSrc=INT_DMA1_BTC1;stcIrqRegiConf.enIRQn=DMA_IRQn2;stcIrqRegiConf.pfnCallback=&dma1_ch1_tran_irq_callback;enIrqRegistration(&stcIrqRegiConf);NVIC_ClearPendingIRQ(stcIrqRegiConf.enIRQn);NVIC_SetPriority(stcIrqRegiConf.enIRQn,DMA_IRQn2_PRI);NVIC_EnableIRQ(stcIrqRegiConf.enIRQn);PWC_Fcg0PeriphClockCmd(PWC_FCG0_PERIPH_AOS,Enable);DMA_SetTriggerSrc(M4_DMA1,DmaCh1,EVT_TMRA2_CMP);/*TIMRA_2的比较匹配*/}以上代码,无法启动DMA,串口无法发送数据如果改为DMA_SetTriggerS

    AC stc tc ST DMA hc32f460

    2022-11-28 2
  • 1117能承受2W功率吗?

    本帖最后由tyw于2022-11-2317:46编辑12V转5V,电流大概在300ma不到,打算加个散热片不知道能不能承受住,只需要承受几分钟演示就好,懒得再买器件来弄了,如果实在不行再换DCDCtyw注

    电源 LDO

    2022-11-23 18
  • 针对量小,板子难度又比较复杂的案子,大家一般怎么做?

    针对量小,板子难度又比较复杂的案子,大家一般怎么做?

  • 望大佬解答一下串口通信问题

    现需要用语音模块控制温湿度上下限阈值,需要用串口控制单片机,我本来想的是,比如设置湿度上限百分之三十就串口发送130给单片机,当单片机收到第一位是1时就赋给湿度的变量,但是发现这样的话语音模块可能要设置四个变量0-99共400条命令才行?后面想能不能先设置4个标志位,然后设置0-99共100个数值,先串口发送一个字符串让单片机进入调整不同变量的模式,然后在这个模式下发送数值过去,这个数值只会赋给对应的变量?比如,小智小智调整温度上限(此时语音模块给单片机发送0x01),语音模块回复好的主人,您需要调整为多少度,30度(此时语音模块发送数值30),单片机收到后就将30赋给温度上限的变量。请问大佬们这样好实现吗,我的措辞可能有些许不规范,望大佬们理解

    单片机 串口

    2022-11-17 2
  • 新人小白第一问,单片机烧成功了是不是直接关电源就行了

    希望各位帮帮新人

    直接 小白 电源 单片机

    2022-10-06 14
  • 关于一些spi从机问题的困惑

    本帖最后由tyw于2022-8-2420:08编辑硬件:GD32F103VCT6平台:cubemax+mdk问题:spi从机发送时,电平乱跳,明明是0x00缺有一个跳变。tyw注

    单片机 MUC spi 从机 AC

    2022-08-24 3
1234下一页