问答

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

亚瑟

TA的家园币:484  

  • GD32F103VET6替换同型号STM32,并口写入数据有问题

    如题,原先使用STM32VET6使用FSMC接口写入/读写外部的SRAM芯片,正常,使用8位数据位读写(外部SRAM芯片仅支持8位数据位),地址总线和数据总线复用。地址线使用到a0-a11;都是使用的是STM32的HAL库。STM32写入时,先写入地址,在写入数据,但在写入数据期间,因为是复用的,AD0-AD7由地址数值切换为数据数值,而AD8-AD11仍保持高地址数值;数据可以正常写入到外部的SRAM芯片中;但是替换为GD32后,写入数据时,在写入数据期间,AD8-AD11会直接输出低电平,就会导致数据不会写入到AD8-AD11为一的地址上;(写入地址的时候,AD8-AD11会输出对应的高低电平,但是到写入具体数据时,AD8-AD11会直接输出低电平)举一个例子,例如我向0x60000303写入数据0x11;STM32可以在0x60000303写入数据0x11;而GD32由于上面说的在写入数据的时候,AD8-AD11总是输出0,所以就会向0x60000003的地址上写入了0x11,无法正常向0x60000100-0x600007FF写入数据。GD32可以正常向低地址上写入数据,读数据均正常(低地址/高地址均可读出正确数据);目前的问题就是GD32无法在写入具体数据的周期中,无法保证AD8-AD11的状态导致的问题。请问是否有办法通过修改gd32的寄存器的方式或者设置,直接实现正常向高地址写入数据。

    替换 GD32F103VET6

    2026-03-23 9
  • GD的Embedded Builder编译后的文件,能跑运行很缓慢,为什么?

    最近看EmbededBuilder更新了GD32F303CC的,就把IAR的一个项目移植到EmbeddedBuilder上,编译都很成功。新版本的EmbeddedBuilder的debug里面好像选不了除gdlink其他的,我就用jlink把它编译好的文件烧录到单片机,然后程序能够运行,但反应很慢,比如有个屏幕显示,比原来IAR的慢了几倍,控制电机(代码里的目标转速完全没改过)转速也只有原来的30%左右,想请问下这是什么情况?

  • GD32F103ZET6内部ADC2有没有

    使用官方的库函数,ADC2根本无法初始化dma_parameter_structdma_data_parameter;rcu_periph_clock_enable(RCU_GPIOF);rcu_periph_clock_enable(RCU_ADC2);rcu_periph_clock_enable(RCU_DMA1);/*配置PF*/gpio_init(GPIOF,GPIO_MODE_AIN,GPIO_OSPEED_50MHZ,GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10);/*ADCDMA_channelconfiguration*/dma_deinit(DMA1,DMA_CH4);/*initializeDMAsingledatamode*/dma_data_parameter.periph_addr=(uint32_t)(&ADC_RDATA(ADC2));dma_data_parameter.periph_inc=DMA_PERIPH_INCREASE_DISABLE;dma_data_parameter.memory_addr=(uint32_t)(&ADC2_ConvertedValue);dma_data_parameter.memory_inc=DMA_MEMORY_INCREASE_ENABLE;dma_data_parameter.periph_width=DMA_PERIPHERAL_WIDTH_16BIT;dma_data_parameter.memory_width=DMA_MEMORY_WIDTH_16BIT;dma_data_parameter.direction=DMA_PERIPHERAL_TO_MEMORY;dma_data_parameter.number=M1*N1;dma_data_parameter.priority=DMA_PRIORITY_HIGH;dma_init(DMA1,DMA_CH4,&dma_data_parameter);dma_circulation_enable(DMA1,DMA_CH4);/*enableDMAchannel*/dma_channel_enable(DMA1,DMA_CH4);/*ADC配置*/adc_deinit(ADC2);/*ADCmodeconfig*/adc_mode_config(ADC_MODE_FREE);/*ADCcontineousfunctionenable*/adc_special_function_config(ADC2,ADC_CONTINUOUS_MODE,ENABLE);/*ADCscanmodedisable*/adc_special_function_config(ADC2,ADC_SCAN_MODE,ENABLE);/*ADCdataalignmentconfig*/adc_data_alignment_config(ADC2,ADC_DATAALIGN_RIGHT);/*ADCchannellengthconfig*/adc_channel_length_config(ADC2,ADC_REGULAR_CHANNEL,M1);/*ADC0规则通道配置*/adc_regular_channel_config(ADC2,0,ADC_CHANNEL_7,ADC_SAMPLETIME_239POINT5);adc_regular_channel_config(ADC2,1,ADC_CHANNEL_8,ADC_SAMPLETIME_239POINT5);adc_regular_channel_config(ADC2,2,ADC_CHA

    ig DM ma DMA gd32f103zet6 ADC2

    2024-06-25 18
  • GD32烧写不了

    GD32无法烧写

    GD3 烧写 GD32 嵌入式

    2024-06-19 14
  • 有谁知道HC32L136复位到执行第一条代码的时间

    有谁知道HC32L136复位到执行第一条代码的时间,数据手册和用户手册都没找到。

  • 求GD32E230K8U6参考设计

    需要用到两个IIC接口(一个作为master,另一个作为slave)、调试接口、一个GPIO口做控制信号谢谢!

  • hc32f460串口接收不到数据

    用的串口3进行通讯,用示波器看收发都有正确的波形,但RDR寄存器一直是0,接收不到数据,一直再发送中断和接收超时中断,定时器周期我设置的是20ms,而且示波器看数据收发间隔不到2ms,请问这是怎么回事

  • HC18P23XL 端口置1或清零

    HC18P23XL单片机CLEAR_BIT(PORTB,1),这个命令里的端口号1可以用变量吗?

    单片机 ar RT 端口 HC C18

    2023-05-08 13