问答

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

  • ADC轉換問題, CORE0是正常的, SHARE使用AN3腳輸入, 結果是錯誤的 sos

    我的芯片是dspic33ck32mp105,使用MCC產生代碼,我使用了AN0(可以正常使用了),AN3,AN4(這兩個有問題)我看讀取結果時是有正確讀取正確的BUFER值,但是結果不對?今天下午依照您的建議,關掉CORE0的AN0,及SHARE的AN4,只保留了使用SHARE的AN3,重新用MCC產生新的代碼,結果仍然是錯的.輸入電壓是0V,但是讀值都是1000以上?為什麼?相關代碼如下:main中:while(1){uint16_tValue_ADC=0;DO_ADC(channel_AN3);//只使用SHARE的AN3,Value_ADC=resultADC;}函數://==ADC=====(MCC產生)voidDO_ADC(uint8_tCH){uint32_tconversion,i=0;uint8_tchannel=0;ADC1_Initialize();ADC1_Enable();channel=CH;//ADC1_ChannelSelect(channel);ADC1_SoftwareTriggerEnable();d_ms(1);ADC1_SoftwareTriggerDisable();while(!ADC1_IsConversionComplete(channel));conversion=ADC1_ConversionResultGet(channel);resultADC=conversion;ADC1_Disable();conversion=0;}//讀取值====(MCC產生)inlinestaticuint16_tADC1_ConversionResultGet(ADC1_CHANNELchannel){uint16_tresult;switch(channel){casechannel_AN3:result=ADCBUF3;//有道這裡來讀值,但是結果是錯的break;casechannel_AN4:result=ADCBUF4;break;casechannel_AN19:result=ADCBUF19;break;casechannel_AN20:result=ADCBUF20;break;casechannel_AN0:result=ADCBUF0;break;default:break;}returnresult;}

    702浏览 0回复 22关注
  • RTC读取时间重置初始值问题 sos

    使用国民技术N32G45x芯片的RTC读取时间,每次重新上电,时间都会回到初始值,这是什么原因导致的??【纽扣电池的电压是正常的】

    657浏览 0回复 22关注
  • ADC 更換channel的問題 sos

    我的芯片是dspic33ck32mp105,使用MCC產生代碼,我使用了AN0(可以了),AN3,AN4(這兩個有問題)我看讀取結果時是有正確讀取的,但是結果不對?while(1){DISC=1;d_ms(1);DISC=0;d_ms(1);uint32_tconversion,i=0;ADC1_Initialize();ADC1_Enable();channel=channel_AN3;ADC1_ChannelSelect(channel);//這裡選擇channel,我已經改成了channel_AN3;ADC1_SoftwareTriggerEnable();//ProvideDelayfor(i=0;i

    MUC 单片机DSPIC33 ADC

    1069浏览 0回复 21关注
  • GD32c11x开发板的仿真器连接问题 sos

    使用GD32C11X开发板,开发板上只提供GD_Link,则应该如何连接仿真器??

    649浏览 0回复 22关注
  • 高压模拟开关品牌有哪些 sos

    需要一款96通道高压模拟开关,目前只找到64通道的,哪位大神用过,不胜感激!

    553浏览 0回复 20关注
  • GD32F470VIT6不支持重映射 sos

    GD32F470VIT6不支持重映射,使用SPI1和UART3时发现DMA冲突了,都是DMA0_CH4,请问有什么方法,能将SPI1的发送引脚的DMA重新指向一个能用的你,在IO口不变的情况下

    460浏览 0回复 21关注
  • 求助:GD32E230F8 timer16 dma 变脉宽无法生效问题 sos

    源代码如下:#include"gd32e23x.h"#include#include"gd32e230c_eval.h"#defineTIMER16_CH0CV((uint32_t)0x40014834)uint16_tTX_buffer[3];voiddma_config(void){dma_parameter_structdma_init_struct;rcu_periph_clock_enable(RCU_DMA);syscfg_dma_remap_enable(SYSCFG_DMA_REMAP_TIMER16);/*initializeDMAchannel1*/dma_deinit(DMA_CH1);/*DMAchannel4initialize*/dma_init_struct.periph_addr=(uint32_t)TIMER16_CH0CV;dma_init_struct.periph_inc=DMA_PERIPH_INCREASE_DISABLE;dma_init_struct.memory_addr=(uint32_t)TX_buffer;dma_init_struct.memory_inc=DMA_MEMORY_INCREASE_ENABLE;dma_init_struct.periph_width=DMA_PERIPHERAL_WIDTH_16BIT;dma_init_struct.memory_width=DMA_MEMORY_WIDTH_16BIT;dma_init_struct.direction=DMA_MEMORY_TO_PERIPHERAL;dma_init_struct.number=3;dma_init_struct.priority=DMA_PRIORITY_HIGH;dma_init(DMA_CH1,&dma_init_struct);//dma_memory_to_memory_disable(DMA_CH1);//关闭内存到内存模式/*enableDMAcirculationmode*/dma_circulation_enable(DMA_CH1);/*enableDMAchannel4*/dma_channel_enable(DMA_CH1);//nvic_irq_enable(DMA_Channel3_4_IRQn,1);}voidtimer_config(void){uint16_tperiod=(72000/TX_Frequency_KHZ)-1;timer_oc_parameter_structtimer_ocinitpara;timer_parameter_structtimer_initpara;/*enableTIMERclock*/rcu_periph_clock_enable(RCU_TIMER16);timer_deinit(TIMER16);/*initializeTIMERinitparameterstruct*/timer_struct_para_init(&timer_initpara);/*TIMER0configuration*/timer_initpara.prescaler=0;timer_initpara.alignedmode=TIMER_COUNTER_EDGE;timer_initpara.counterdirection=TIMER_COUNTER_UP;timer_initpara.period=period;timer_initpara.clockdivision=TIMER_CKDIV_DIV1;timer_initpara.repetit

    599浏览 0回复 24关注
  • 自动配置软件 sos

    国民技术有类似STM32cube的工具吗?

    STM ST 软件 嵌入式 国产芯片 MUC

    1233浏览 0回复 21关注
  • 电源管理IC电量显示不准确,芯片推荐 sos

    现在做一个单击显示电量,双击关闭电量显示,长按开关机电路,有没有好的想法推荐?电源管理用的是TP4056可接4颗LED显示电量,但会出现电量显示不准的情况,电池是单节3.7V锂电池,电量显示不准是芯片问题吗?为何充电宝上的就比较准确,求各位大佬指点一下。tyw注

    MUC ST 单片机 国产芯片 技术交流 嵌入式

    1406浏览 0回复 21关注
  • 小华F460关于SPI求大佬救救 sos

    最近在使用小华F460单片机进行通信时,遇到了点问题1:我发现当bitt数设置为8时,在通信1字节后需要将片选信号拉高500ns,而bit设置为32时,通信这4字节时不需要将片选拉高,但是bit数最大就只能设置为4字节,就想问一下大佬们,有没有办法通信更多的字节时片选信号不用拉高2:spi的缓存区无法清空,无论我是直接对其赋值,亦或者是开关SPI,缓存区值都无法清空3:开关SPI时碰到一个问题,倘若我是使用的DMA传输数据,那么开关SPI是可以正常使用的,假如是直接从缓存区取值,那么SPI关掉后只能通过初始化打开,而调用开关函数或者是对寄存器直接写值无法生效4:SPI的配置里面还有一个帧的配置,这个配置应该怎么用呢,有大佬可以分享一下程序吗以上,谢谢大佬们,救救小白吧

    国产芯片 单片机 MUC 嵌入式 技术交流

    1181浏览 0回复 21关注
  • pic单片机触摸库 sos

    国产的芯片都有触摸库可以二次开发,pic芯片的有没有的啊

    1367浏览 0回复 23关注
  • 错误使用N32G455REL7芯片导致SWD被占用 sos

    错误使用N32G455REL7芯片导致SWD被占用,请问如何通过外部方法复位并下载程序?

    755浏览 0回复 23关注
  • N32WB031有大佬有定频发射的程序吗 sos

    当前新画的新板子,功能正常,但接收不到蓝牙信号,相同的程序烧到开发板里能收到蓝牙信号。所以求一个能让芯片定频发射的程序demo来测试频率,看看是否需要修正天线参数

    国民技术 N32WB031

    1796浏览 0回复 21关注
  • 请教大家关于lora通信的问题。 sos

    现场很多lora设备,一个lora网关连接8个lora设备,,这种连接方式有十几组。为了避免同频干扰,请问,lora的工作频率间隔多大设置合适?1Mhz可以吗?

    2719浏览 0回复 23关注
  • 系统滴答时钟问题 sos

    有没有高手碰到将全部IO口配置成模拟输入,再次初始化个相关IO口后系统的1ms滴答时钟变小的问题?

    滴答时钟 模拟输入

    1201浏览 0回复 23关注

没有更多了