-
HC32F460时钟模式错误出现串口乱码
使用了HC32F460PETB单片机,在批量生产中个别产品出现串口乱码情况,经排查是硬件电路设计为外部8M有源晶振,代码中en_clk_xtal_mode配置的是CLKXtalModeOsc=1u,后将代码配置修改为CLKXtalModeExtclk=1u后串口打印正常,有大神能帮忙解释下原理吗?为什么这个地方配置错误,产品会出现问题,之前小批量生产的时候没有出现乱码现象。
2024-04-28 21 -
关于串口DMA等待传输完成卡死的问题
型号AT32F407,在USART2DMA发送数据时,接包已经接到了要发送的数据,但是程序还是处于等待传输完成的标识判断中,卡死了。请教一下是什么造成的?
2023-11-14 45 -
GD32F470 SPI DMA接收
spi2配置没问题,可以正常使用,但是加上dma,发现dma没有开启,有没有大佬告诉我一下,我下面的代码配置哪里有问题,找了好久找不出来,谢谢谢谢!!!uint8_tspi2_tx_buf[6]={0};uint8_tspi2_rx_buf[6]={0};voidDMA0_CH0_Config()//spi——RX{dma_single_data_parameter_structdma_init_spi2_rx;rcu_periph_clock_enable(RCU_DMA0);dma_deinit(DMA0,DMA_CH0);dma_init_spi2_rx.direction=DMA_PERIPH_TO_MEMORY;dma_init_spi2_rx.memory0_addr=(uint32_t)(spi2_rx_buf);//存储器地址dma_init_spi2_rx.memory_inc=DMA_MEMORY_INCREASE_ENABLE;dma_init_spi2_rx.periph_addr=(uint32_t)&SPI_DATA(SPI2);dma_init_spi2_rx.periph_inc=DMA_PERIPH_INCREASE_DISABLE;dma_init_spi2_rx.periph_memory_width=DMA_PERIPH_WIDTH_8BIT;dma_init_spi2_rx.number=sizeof(spi2_rx_buf);dma_init_spi2_rx.priority=DMA_PRIORITY_ULTRA_HIGH;dma_init_spi2_rx.circular_mode=DMA_CIRCULAR_MODE_DISABLE;dma_single_data_mode_init(DMA0,DMA_CH0,&dma_init_spi2_rx);dma_channel_subperipheral_select(DMA0,DMA_CH0,DMA_SUBPERI4);dma_memory_address_config(DMA0,DMA_CH0,DMA_MEMORY_0,(uint32_t)(spi2_rx_buf));//存储器地址dma_transfer_number_config(DMA0,DMA_CH0,sizeof(spi2_rx_buf));dma_channel_enable(DMA0,DMA_CH0);spi_dma_enable(SPI2,SPI_DMA_RECEIVE);}
2023-11-01 58 -
极海APM32F030 读正交编码器 引脚GPIO模式设置成什么模式?
读取正交编码器输入,GPIO引脚配置成什么模式?GPIO_MODE_AF还是GPIO_MODE_IN?
2023-09-21 21 -
GD32E30x uart0 波特率1200时,出现乱码。
udiv=(uclk+baudval/2U)/baudval;intdiv=udiv&0x0000fff0U;fradiv=udiv&0x0000000fU;}USART_BAUD(usart_periph)=((USART_BAUD_FRADIV|USART_BAUD_INTDIV)&(intdiv|fradiv));跟中代码发现走的上面的过程uclk=180000000,intdiv=?fradiv=?1.intdiv=456,fradiv=82.intdiv=65440,fradiv=8
2023-08-19 52 -
LKS081控制12V电机不能一直转
用LKS081控制一个12V电机,程序是凌欧提供的无感FOC例程,通电后,电机转动不到3秒就不转了,重新上电后重复这个情况,请问这是咋回事?
2023-08-08 46 -
AT32F435VMT7基于FAL+QSPI驱动W25Q128。连续读取超过512K字节报错
用QSPI驱动W25Q128.驱动应该没问题。但是读取的时候,数据超过512K就会失败。512K以内就正常,1M就失败。我把FLASH分区,一个512K分区,一个1M分区,同时跑falbench。结果如下:```msh/>falbench4096yesErasing524288bytesdata,waiting...Erasebenchmarksuccess,totaltime:1.896S.Writing524288bytesdata,waiting...Writebenchmarksuccess,totaltime:2.048S.Reading524288bytesdata,waiting...Readbenchmarksuccess,totaltime:0.144S.msh/>falprobeupdate2Probedaflashpartition|update2|flash_dev:norflash0|offset:1048576|len:1048576|.msh/>falbench4096yesErasing1048576bytesdata,waiting...Erasebenchmarksuccess,totaltime:3.844S.Writing1048576bytesdata,waiting...Writebenchmarksuccess,totaltime:4.096S.Reading1048576bytesdata,waiting...5857283057f1ff.5857283058f2ff.5857283059f3ff.......5857284090faff.5857284091fbff.5857284092fcff.5857284093fdff.5857284094feff.DatacheckERROR!Pleasecheckyouflashbyothercommand.Readbenchmarkhasanerror.Errorcode:-1.Thisoperatehasanerror.Errorcode:-1.msh/>```不知道什么原因。而且分区擦除和写入都成功了,读取失败了!```msh/>sfprobeqspi20FindaWinbondflashchip.Sizeis16777216bytes.sf_cmdflashdeviceisinitializesuccess.ProbeSPIflashsf_cmdbySPIdeviceqspi20success.16MBsf_cmdiscurrentselecteddevice.msh/>sfbenchyesErasingthesf_cmd16777216bytesdata,waiting...Erasebenchmarksuccess,totaltime:41.318S.Writingthesf_cmd16777216bytesdata,waiting...Writebenchmarksuccess,totaltime:65.537S.Readingthesf_cmd16777216bytesdata,waiting...DatacheckERROR!Pleasecheckyouflashbyothercommand.Readsf_cmdfailed,alreadyrdfor788480bytes,read256eachtimeReadbenchmarkhasanerror.Errorcode:3.Thisflashoperatehasanerror.Errorcode:3.```
2023-05-22 22 -
HK32F030MF4P6无法连接j-link
j-link无法读取到芯片,显示"CannotconnecttoJ-Link.",HKConfig连不上芯片但是电脑的设备管理器可以显示到已连接的端口重新安装驱动已尝试,更换电脑已尝试,数据线在其他人的板子上可以用还有没有其他的解决方式
2023-05-19 22 -
AT32F403A DMA传输数据翻转IO速度异常
测试一下使用定时器2通道1触发DMA传输数据到GPIO实现IO口的快速翻转,目前程序中只配置了定时器触发DMA,没有其他程序,DMA配置的是循环模式,没有开中断。但是以目前的测试来看,当触发频率超过20M时,DMA的速度停留在了20M(通过观察IO翻转频率观察的),无法进一步提高,这会是什么原因呢,测试IO口翻转频率是可以达到120M的,所以可能是达到了DMA传输的最快频率导致的吗,还是说可能是我哪配置错了
2022-12-12 25 -
GD32F407使用HAL库操作U盘
GD32F407,使用HAL库操作U盘,可以正常识别成功,读取文件时读取几包后必然失败,这是什么原因!使用STM32F407测试是,同一程序正常。如一个文件为100K大小,打开文件后每次读取1K数据,读取24包后必然失败。
2022-07-12 43 -
程序跑飞,不能调试是什么原因?
MCU的系统时钟从默认的8MHz改为48MHz后,程序跑飞,不能调试是什么原因?
2022-05-31 23 -
AC781X芯片有多少路PWM
AC781X芯片有多少路PWM?还有就是脉冲宽度检测定时器(PWDT)可以当PWM用吗?
2022-05-18 15 -
CH579 没有IIC口 是否可以通IO模拟来完成IIC通讯
CH579没有IIC口是否可以通IO模拟来完成IIC通讯
2021-03-24 68