问答

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

stormwind123

TA的家园币:7590  

  • ST开发的时候,初始化是有顺序的吗?

    在ST开发的时候,初始化是有顺序的吗?我最近发现ADC和定时器,如果定时器先初始化没问题,ADC先初始化,定时器后初始化,就程序失效,这是为什么?

    ST 开发 顺序 定时 定时器 AD

    2025-03-29 14
  • 新人求助-GD32单片机程序貌似消失了

    本帖最后由gogyyy于2025-2-618:19编辑首先声明,个人接触单片机不久。现在情况是这样,使用的GD32F103c8t6,现象是:在现场程序不运行,简单来说就是重启电源也不运行,返回来后,检查电源什么的都正常,就是单片机不运行。我使用的SW下载到单片机的程序,我这个时候把原来的程序重新下载到单片机后,竟然正常了,总共做了十来个,现在有两个这个情况的,不知道怎么回事。

  • 求助】gd32f470什么情况下会进入ResetHandler?

    有前面板和底板俩板子,底板通电(部分器件不启动),给前面板供电,总开关开后,软开关脚位为高,按前面板软开关,为低后,程序里gpio_bit_set再给power_on脚位打高(主板给底板没启动的硬件通电),结果现在一打高,c语言程序直接跑飞到startup里面的reset_handler了。我直接用470i例程去控这俩脚,一样的,按了软开关,后面power_on继电器是响了,但后续就是跑到reset_handler了,请问啥情况下会进入reset_handler啊?除了芯片通电第一次,cpu的复位脚说是也没接出来按理来说也不会影响它的

  • GD-LINK无法在KEIL上调试的问题

    芯片:GD32F303RCT6调试器:GD-LINK调试软件:KEILV5(5.29)问题:开始调试后,程序从SystemInit直接进入HardFault中断,程序无法运行。启动文件:startup_stm32f10x_hd.s。驱动:st的标准库驱动,如stm32f10x_gpio.c。KEIL配置:芯片型号GD32F303RCT6。Debug通讯CMSIS-DAPDebugger。现象:能正常擦除、烧写程序到芯片。但是进入调试后,为进入main函数直接跳转到了HardFault中断。

  • GD32F103C8T6,使用ST标准库,CAN初始化失败

    本帖最后由fw19876311于2025-1-1417:01编辑STM32F103C8T6正常运行的代码,直接平替GD32F103C8,CAN部分初始化异常,一直返回失败uint8_tCAN_Init(CAN_TypeDef*CANx,CAN_InitTypeDef*CAN_InitStruct){uint8_tInitStatus=CAN_InitStatus_Failed;uint32_twait_ack=0x00000000;/*Checktheparameters*/assert_param(IS_CAN_ALL_PERIPH(CANx));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_TTCM));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_ABOM));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_AWUM));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_NART));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_RFLM));assert_param(IS_FUNCTIONAL_STATE(CAN_InitStruct->CAN_TXFP));assert_param(IS_CAN_MODE(CAN_InitStruct->CAN_Mode));assert_param(IS_CAN_SJW(CAN_InitStruct->CAN_SJW));assert_param(IS_CAN_BS1(CAN_InitStruct->CAN_BS1));assert_param(IS_CAN_BS2(CAN_InitStruct->CAN_BS2));assert_param(IS_CAN_PRESCALER(CAN_InitStruct->CAN_Prescaler));/*Exitfromsleepmode*/CANx->MCR&=(~(uint32_t)CAN_MCR_SLEEP);/*Requestinitialisation*/CANx->MCR|=CAN_MCR_INRQ;/*Waittheacknowledge*/while(((CANx->MSR&CAN_MSR_INAK)!=CAN_MSR_INAK)&&(wait_ack!=INAK_TIMEOUT)){wait_ack++;}/*Checkacknowledge*/if((CANx->MSR&CAN_MSR_INAK)!=CAN_MSR_INAK){InitStatus=CAN_InitStatus_Failed;=====================卡在这个位置}请教各位,有遇到过吗?麻烦指导下,谢谢大家!

  • GD32F105RCT6 flash容量问题

    本帖最后由fenghengx于2025-1-309:35编辑程序超过128K,下载出现这个错误,时哪里设置不对?Contentsmismatchat:08020000H(Flash=FFHRequired=93H)!

    flash gd32f105 rc Content 8K 错误

    2025-01-03 9
  • 国民技术N32G452的keil例程下载下来后,编译会报错?

    使用的keil版本5.41,芯片是N32G453CCL7。首先我推测是路径没包含好,我重新给工程文件包含了文件,但是还是编译报错;然后我修改芯片型号,N32G457QEL7这个是例程默认的芯片型号,改为我现在用的N32G453CCL7依然还是报这个错;有大佬遇到类似情况,例程下载下来不能用的么?

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

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

  • keil下载识别不了芯片

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

  • 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

  • 使用 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 18
123下一页