问答

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

probedog

TA的家园币:6301  

  • GD32 Embedded Builder可以设置中文工程名和中文路径吗?

    GD32EmbeddedBuilder可以设置中文工程名和中文路径吗?为什么build时Invalidargument不通过?

  • keil下载识别不了芯片

    有大哥知道解决方法嘛,在网上找了好久,还是没有相关的解决方法,用了PWLINK2LITEkeil版本最开始5.39也不行,现在是5.18还是不行

  • RST引脚如何复用成普通IO

    LKS07RST手册上可以复用成P0.2,配置了复用寄存器,实际控制IO翻转没效果;还需要配置其他寄存器么SYS_IO_CFG|=BIT5;//RSTconfigP0.2

  • vscode+Jlink单步调试出错,cortex-debug不受支持,怎么回事?

    launch文件有没有问题呢?是自动生成的我点击了1、2,报出了这个错误,见3

  • GD32H757VMT6 在线调试,下载时提示错误:

    我再GD32H757VMT6工程里使用了地址:0x30000000,”__attribute__((section(".ARM.__at_0x30000000")))enet_descriptors_structrxdesc_tab[ENET_RXBUF_NUM];/*!<ENETRxDMA“而且GD32H757VMT6的内部RAM包含0x30000000,请问为什么下载时提示:NoAlgorithmfoundfor:30000000H-3000004FH

  • GD32E230 串口1 PA2 PA3无法使用

    GD32E230的datasheet中可以看到PA2和PA3是可以复用到USART1的,然后使用官方的例程,将官方例程默认引进从串口0中的PA9、PA10可以打印。请教一下有没有人知道PA2、PA3怎么当串口1使用?以下是官方例程,我将引脚宏定义改成PA2和PA3,串口0也改为了串口1:usart.h文件#definePrint_GPIO_RCURCU_GPIOA//串口对应GPIO端口的时钟#definePrint_USART_RCURCU_USART1//对应串口号的时钟#definePrint_GPIOGPIOA//串口对应GPIO端口#definePrint_GPIO_AFGPIO_AF_1//串口是GPIO引脚的复用功能1(查询芯片数据手册)#definePrint_TX_PINGPIO_PIN_2//串口对应的GPIO引脚#definePrint_RX_PINGPIO_PIN_3//串口对应的GPIO引脚#definePrint_USARTUSART1//print所使用的串口1usart.c文件//串口打印初始化voidusart_print_init(void){usart_print_gpio_init();usart_print_config();}/*!\briefinitilizethecomGPIO\paramnone\param[out]none\retvalnone*/voidusart_print_gpio_init(void){/*enablePrintGPIOclock*/rcu_periph_clock_enable(Print_GPIO_RCU);/*connectporttoUSARTx_Tx*/gpio_af_set(Print_GPIO,Print_GPIO_AF,Print_TX_PIN);/*connectporttoUSARTx_Rx*/gpio_af_set(Print_GPIO,Print_GPIO_AF,Print_RX_PIN);/*configureUSARTTxasalternatefunctionpush-pull*/gpio_mode_set(Print_GPIO,GPIO_MODE_AF,GPIO_PUPD_PULLUP,Print_TX_PIN);gpio_mode_set(Print_GPIO,GPIO_MODE_AF,GPIO_PUPD_PULLUP,Print_RX_PIN);/*configureUSARTRxasalternatefunctionpush-pull*/gpio_output_options_set(Print_GPIO,GPIO_OTYPE_PP,GPIO_OSPEED_10MHZ,Print_TX_PIN);gpio_output_options_set(Print_GPIO,GPIO_OTYPE_PP,GPIO_OSPEED_10MHZ,Print_RX_PIN);}/*!\briefinitilizetheUSARTconfigurationofthecom\paramnone\param[out]none\retvalnone*/voidusart_print_config(void){/*enableUSARTclock*/rcu_periph_clock_enable(Print_USART_RCU);/*US

    GD32E230 串口 PA 使用 pi

    2024-11-14 9
  • 使用 DMA写flash后,读取数据出现错位现象

    使用DMA写flash后,读取数据出现错位现象,读到的buffer的第一节总为0,从第二字节开始才是正常数据。只能在24bit地址发送完后,再发一个DUMMY_BYTE(无效字节),才能bufferr接收数据。一但调“dma_channel_enable(DMA1,DMA_CH3)这个使能”后就出现上述现象。每次读取数据时都要先发一个DUMMY_BYTE才能正确接收。若上电不调“dma_channel_enable(DMA1,DMA_CH3)“接收都是正常的。使用的MCU是GD32F470VIT6,SPIFLAH是GD25Q40C.请各位大佬帮忙分析下。以下为SPI代码DMA配置voiddma_init(uint8_t*data_buffer,uint32_tdata_length){dma_single_data_parameter_structdma_init_struct;rcu_periph_clock_enable(RCU_DMA1);//DMA发送dma_deinit(DMA1,DMA_CH3);//DMA初始化参数设置dma_init_struct.direction=DMA_MEMORY_TO_PERIPH;dma_init_struct.memory0_addr=(uint32_t)data_buffer;dma_init_struct.memory_inc=DMA_MEMORY_INCREASE_ENABLE;dma_init_struct.periph_addr=(uint32_t)&SPI_DATA(SPI0);dma_init_struct.periph_inc=DMA_PERIPH_INCREASE_DISABLE;dma_init_struct.periph_memory_width=DMA_MEMORY_WIDTH_8BIT;dma_init_struct.number=data_length;dma_init_struct.circular_mode=DMA_CIRCULAR_MODE_DISABLE;dma_init_struct.priority=DMA_PRIORITY_MEDIUM;dma_single_data_mode_init(DMA1,DMA_CH3,&dma_init_struct);dma_channel_subperipheral_select(DMA1,DMA_CH3,DMA_SUBPERI3);//使能DMA中断通道nvic_irq_enable(DMA1_Channel3_IRQn,0,0);//配置DMA中断使能位//dma_circulation_disable(DMA1,DMA_CH3);dma_interrupt_enable(DMA1,DMA_CH3,DMA_CHXCTL_FTFIE);}DMA发送int8_tspi_dma_data_send(uint8_t*pbuffer,uint32_twrite_addr,uint16_tnum_byte_to_write){/*enablethewriteaccesstotheflash*/spi_flash_write_enable();/*selecttheflash:chipselectlow*/SPI_FLASH_CS_LOW();/*send"writetomemory"instructi

    DMA 读取SPI flash 异常 读取

    2024-11-07 15
  • vscode+GCC+Jlink烧录GD32程序时发生Writing target memory failed

    首次用vscode来烧录(国产化的需要),仿真器是ArmV9,芯片是GD32F103ZET6,烧录配置想用JlnkSWD,但是用USB连接pc和仿真器--GD开发板后,点击vscode中的烧录,出现如下错误:网上找了很多帖子还没有解决,有思路的请指点下,谢谢

  • GD32F303RCT6 USART0的空闲中断进不去,仿真打断点也进不去中断

    intmain(void){//¿ÉÒÔ×öµ½´«ÊäÊý¾Ý³öÀ´£¬¶¨µã´«ÊäÊý¾Ý³öÀ´uint32_tStatus2=0;uint32_tStatus3;uint16_tx;dma_parameter_structdma_init_struct2;gpio_pin_remap_config(GPIO_SWJ_NONJTRST_REMAP,ENABLE);//ÏÂÔØ¿ÚNJTRSTÒý½Åµ±×öÆÕͨI/O¿Úrcu_ahb_clock_config(RCU_AHB_CKSYS_DIV1);systick_config();//1mssystickgpio_config();//PA1,PA2,PA3¹Ü½ÅÅäÖÃ/************************************************///UART0_initrcu_periph_clock_enable(RCU_AF);//Need!!!!//usart_halfduplex_enable(USART0);rcu_periph_clock_enable(RCU_USART0);//ʹÄÜUSART0ʱÖÓgpio_pin_remap_config(GPIO_USART0_REMAP,ENABLE);usart_deinit(USART0);//³õʼ»¯//¸´Î»Ê±ÖÓusart_baudrate_set(USART0,19200U);//¶¨Ò岨ÌØÂÊusart_receive_config(USART0,USART_RECEIVE_ENABLE);//½ÓÊÕʹÄÜusart_transmit_config(USART0,USART_TRANSMIT_ENABLE);//·¢ËÍʹÄÜusart_interrupt_enable(USART0,USART_INT_TC);//·¢ËÍÍê³ÉÖжÏusart_interrupt_enable(USART0,USART_INT_IDLE);//¿ÕÏÐÖжÏusart_enable(USART0);//Ä£¿éʹÄÜUSART_INT_TCnvic_irq_enable(USART0_IRQn,0,1);RX0_DMAquest_StartOrInit();TX0_DMAquest_StartOrInit();usart_dma_receive_config(USART0,USART_DENR_ENABLE);usart_dma_transmit_config(USART0,USART_DENT_ENABLE);//NVICEXTI_config();//timer_interrupt_flag_clear(TIMER0,TIMER_INT_FLAG_CH0);//timer_interrupt_enable(TIMER0,TIMER_INT_CH0);//usart_dma_transmit_config(USART0,USART_DENT_ENABLE);//usart_dma_receive_config(USART0,USART_DENR_ENABLE);/******************************************************//*configureDMAmode*///dma_circulation_disable(DMA1,DMA_

  • GD32F303CCT6keil5下载不了程序但是Jlink可以检测到芯片ID

    公司的一个项目画了一块板子因为要适配上位机的原因前前后后调试的半个月,中间因为解压的时候点错了导致在这个项目的文件夹里存在着两套项目文件(GD.后缀和GD_1.后缀),后来有一次因为这个项目进调试后退出会导致keil卡死只能通过任务管理器强行关闭我在网上搜索的教程是删掉uvoptx文件然后重新编译,事情就发生在这个操作之后。后面我发现下不了程序后就把文件恢复了但还是一样报错下载不了,现在的情况就是同一个项目我拷贝到同事电脑上是可以下载的,程序也是可以正常跑起来,但是在我电脑上用keil5和J-Flash都不行然而都可以连接成功和识别芯片ID,更加让我迷惑的是换了另一个项目的同型号芯片的板子是正常的,中间也试过降低速度,J-Flash查看但是都是只有一开始的连接和识别成功后面的在清楚flash阶段就提示报错。这个是和我的接口有关联吗。下面是keil5截图

  • gd32f303cct6有源晶振无法稳定问题

    gd32f303cct6使用16M有源晶振输入到OSCIN引脚后在启动时候HXTALSTB始终无法值1,然后卡死在system_gd32f30x.c文件中iffail的这个死循环里,是这款单片机不支持有源晶振吗,使用示波器测量过芯片OSCIN引脚有峰峰值为1V的16MHZ波形,并且稳定,圆角的方波

  • 使用两个定时器输出PWM卡死

    请教各位大牛一个问题,卡住我几天了。我使用如下定时器配置PWM,如下示:PA6->PWM0tim1_cha(4)PA7->PWM1tim2_cha(5)PB0->PWM2tim3_ch1b(2)在应行如下初始化代码后,直接卡死了,请问是什么原因呢voidpwm_init(){Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio,TRUE);//端口外设时钟使能TimerPortCfg(PWM0);TimerPortCfg(PWM1);TimerPortCfg(PWM2);Timer1Cfg(100,PWM_DUTY);Bt_M23_EnPWM_Output(TIM1,TRUE,FALSE);//端口输出使能Timer2Cfg(100,PWM_DUTY);Bt_M23_EnPWM_Output(TIM2,TRUE,FALSE);//端口输出使能Timer3Cfg(100,PWM_DUTY);Tim3_M23_EnPWM_Output(TRUE,FALSE);//端口输出使能Bt_M23_Run(TIM2);//运行。Bt_M23_Run(TIM1);//运行。Tim3_M23_Run();//运行。}完整模块代码发下:#include"pwm.h"#include"timer3.h"#include"bt.h"#include"gpio.h"#include"motor.h"volatilecharpwm_duty=95;//PA6->PWM0tim1_cha(4)//PA7->PWM1tim2_cha(5)或tim3_ch0b(4)//PB0->PWM2tim3_ch1b(2)typedefenum{PWM0=0u,PWM1,PWM2,}pwm_index_t;/********************************************************************************中断服务函数******************************************************************************/voidTim1_IRQHandler(void){//Timer1模式23更新中断if(TRUE==Bt_GetIntFlag(TIM1,BtUevIrq)){Bt_M23_CCR_Set(TIM1,BtCCR0A,100-pwm_duty);//设置通道A比较值Bt_ClearIntFlag(TIM1,BtUevIrq);//清中断标志}}voidTim2_IRQHandler(void){//Timer2模式23更新中断if(TRUE==Bt_GetIntFlag(TIM2,BtUevIrq)){Bt_M23_CCR_Set(TIM2,BtCCR0A,100-pwm_duty);//设置通道A比较值Bt_ClearIntFlag(TIM2,BtUevIrq);//清中断标志}}voidTim3_IRQHandler(void){//Timer3模式23更新中断if(TRUE==Tim3_GetIntFlag(Tim3UevIrq)){Tim3_M23_CCR_Set(Tim3CCR1B,100-pwm_duty);//设置CH1通道B比较值Tim3_ClearIntFlag(Tim3UevIrq);/

  • gd32f450 lwip DMA失败

    ErrStatusenet_software_reset(void){uint32_ttimeout=0U;ErrStatusenet_state=ERROR;uint32_tdma_flag;/*resetallcoreinternalregisterslocatedinCLK_TXandCLK_RX*/ENET_DMA_BCTL|=ENET_DMA_BCTL_SWR;/*waitforresetoperationcomplete*/do{dma_flag=(ENET_DMA_BCTL&ENET_DMA_BCTL_SWR);timeout++;}while((RESET!=dma_flag)&&(ENET_DELAY_TO!=timeout));/*resetoperationcomplete*/if(RESET==(ENET_DMA_BCTL&ENET_DMA_BCTL_SWR)){enet_state=SUCCESS;}returnenet_state;}gd32f4xx_enet.c这个老是失败,led闪灯例程没有毛病

  • GD32F407配置USB msc+fatfs文件系统一直显示Windows无法完成格式化

    最近想实现电脑通过USB线读取开发板上SD卡里的数据,使用的芯片是GD32F407ZET6,一开始移植官方例程是可以成功格式化的,但是官方例程通过SRAM进行的,分配的空间只有40k,所以16G的SD卡连接后只显示其中20k,另外20k估计是其他文件,然后我修改了一下,通过fatfs文件系统来读写SD卡,其中挂载包括读写返回的句柄都是正确的,但是用USB线连接电脑时,弹出格式化的窗口,却怎么也无法完成格式化,扇区大小也是按512字节来格式化的,文件系统也是选的FAT32,其中尝试过多次还是无果,请问各位带佬是什么问题呀?

123下一页