-
基准电源的选择需要注意些什么?
一个12位ADC,1/4096,基准电源分成4000份;一个0.02%的基准电源,1/5000,误差是5000分之一;那是不是12位玖必须用0.02%误差的基准电源呢?
2024-05-13 6 -
gd32e507可以使用arm提供的dsp函数库吗?
gd32e507可以使用arm提供的dsp函数库吗?如果可以,那么该怎么去使用?
2024-04-18 2 -
问下你用的IAR还是KEILL5
IARforARM?
2024-02-23 15 -
恒流电路三极管不导通的问题
本帖最后由rocdevil于2023-3-2518:09编辑我使用了下图的恒流电路,希望通过I1_REF(DAC出来的)和R16的比值在1A~3A的范围内控制电流,理论上I1_REF除以R16电阻值就是恒流值,Q3的C极接负载(最大约3A)。在调试时发现三极管在带载(3A)情况下不导通,具体细节是I1_REF小于1.1V时三极管Q3不通,大于1.1V时三级管Q3才会导通,这时带负载也工作,但是达不到我希望的恒流控制。我以为是三极管Q3放大倍数不够,换了个达林顿管也是一样不行。请各位大神指点这个恒流电路可以实现恒流控制吗,我的问题是不是和运放的增益有关啊?后面的运放若换成比较器可行吗?在这里先谢谢各位啦!
2023-03-25 10 -
有适用于IAR的staruup_hk32f030m.s文件吗
有适用于IAR的staruup_hk32f030m.s文件吗
2023-03-22 1 -
使用flash读写float类型数据时,遇到的问题
读写flash,将float类型的数据存放在flash中,使用的是联合体操作unionvar{floatzero_angle;uint32_ts;};#defineFMC_WRITE_START_ADDR((uint32_t)0x08004000U)voidwrite_page(uint32_tdata){fmc_unlock();fmc_page_erase(FMC_WRITE_START_ADDR);fmc_word_program(FMC_WRITE_START_ADDR,data);fmc_lock();}//获取float类型的数据flo_flash.zero_angle=AS5600_ReadAngle(0x0c,0x0d);//将数据写入flashwrite_page(flo_flash.s);//读取数据flo_flash.s=(*(volatileuint32_t*)(uint32_t)(FMC_WRITE_START_ADDR));以上操作,在没有进行下一步的时候都没问题。使用printf函数重定向打印浮点型数据就会将flash的数据给影响到,里面的数据就会变成一个不确定的数值,且非常小。printf("%f\n",a);但是printf其他类型的数据,就不会受到影响。
2023-01-16 9 -
LC三点式振荡电路
本帖最后由华子玩科技于2022-12-1614:53编辑我的电容三点式电路为什么会不起振呢
2022-12-15 5 -
求解分析正弦波信号幅值,或者信号强度
用接收天线接收磁棒天线发出的28.843k的正弦波信号,接收端用24位的ADC去采集分析,该如何用采集到的数据分析信号强度或幅值。本人用了软件滤波得到的幅值跳动大,求教坛友有什么好方法
2022-12-15 10 -
GD32F103外部参考源
GD32F103的ADC通过VDDA供电,能不能将VDDA解外部参考源,以提供更稳定的参考电压
2022-12-14 2 -
PIC单片机,仿真可以运行,上电就不能运行。
请教一个问题,我用的单片机是dspic33fj256mc710a,突然发现用仿真器仿真单片机可以正常运行,但是上电启动,MCU就不运行了。目前,试了2块板子都是这样;如果是软件的原因,会是什么原因?
2022-12-12 2 -
关于芯圣HC89F3XX1使用8M晶振误差问题
最近在使用HC89F3541的外部时钟,晶振使用8M规格书误差为20PPM,实测29小时误差约为0.015%。麻烦各位大佬看看,那里能改进。下面为初始化配置:(IO口初始化略....)WDTC|=0x10;CLKCON|=0x04;//外部晶振打开XTALCFG|=0x01;//选择外部高频晶振CLKOUT=0x03;//选择外部时钟xtal_clk输出位CLKSWR=0xf0;//选择外部高频RC为系统时钟CLKDIV=0x01;//1分频//Time0配置TCON=0;TCON1=0x01;TMOD=0x00;TH0=0xFC;//125usTL0=0x18;ET0=1;TR0=1;voidTIMER0_Rpt(void)interruptTIMER0_VECTOR{if(++R_u8add10ms>=80)//10ms{R_u8add10ms=0;if(++R_u8Input_1s>=100){R_u8Input_1s=0;if(++R_BeijingTimeS>=60){R_BeijingTimeS=0;R_BeijingTimeM++;if(R_BeijingTimeM>=60){R_BeijingTimeM=0;R_BeijingTimeH++;if(R_BeijingTimeH>=24){R_BeijingTimeH=0;R_BeijingWeek++;if(R_BeijingWeek>7){R_BeijingWeek=1;}}}}}}}
2022-10-30 2 -
进不了while(1)里面执行语句
系统进入main函数后执行完函数的初始化,但进不了while(1)里面执行语句,也无法进入定时中断
2022-10-26 3 -
电磁铁吸收二极管的选型
我现在用的24V2A的推拉式电磁铁在MOS管的输出端并联一个二极管到24V放电,这个二极管的选型有什么要求吗,耐压和电流怎么选择
2022-09-07 12 -
51单片机数据处理问题
各位大佬们好,最近在学习modbus通信协议,废了老大劲终于把数据从传感器里面读出来了,但是卡在数据处理这一步了处理方法说明书上写的很详细,可是这部分代码实在是不会写,希望有大佬指点一二。比如这个例子,读到的数据顺序为6666427B,需要将其转为二进制后分成1位符号位、8位指数位和23位尾数,然后分别化为整数后再计算===========================================步骤1:6666427B对应0x427B6666将二进制数分成符号、指数和尾数010000100111101101100110011001101为符号+8位指数+23为尾数S:0二进制=0(正符号)E:10000100二进制=1*27+0*26+0*25+0*24+0*23+1*22+0*21+0*20=128+0+0+0+0+4+0+0=132M:11110110110011001100110二进制=8087142步骤2:计算十进制数D=(-1)S*(1.0+M/223)*2E-127=(-1)0*(1.0+8087142/223)*2132-127=1*1.964062452316284*32=62.85===================================如果有大佬愿意指点一下,小弟感激不尽
2022-07-23 9