问答

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

limoooo

TA的家园币:87  

  • PY32单片机配置TIM触发ADC与其中断,然后触发DMA

    PY32F030无法使用ADC同时触发DMA与中断不知道为什么,触发DMA就无法触发ADC的中断,,,触发中断就不能触发DMA,莫名其妙程序如下,写法是DMA的,如果进入中断则C=100;TIM_HandleTypeDeftimh1={0};TIM_OC_InitTypeDeftimocinitstruct={0};TIM_MasterConfigTypeDefsMasterConfig={0};GPIO_InitTypeDefgpioinitstruct={0};ADC_HandleTypeDefADCh1={0};ADC_ChannelConfTypeDefsConfig={0};DMA_HandleTypeDefFOCDMAinitstruct={0};uint16_tADC_value[2]={0};uint8_tC=50;voidFOR_RCC_init(void){//TIM需要__HAL_RCC_GPIOA_CLK_ENABLE();__HAL_RCC_GPIOB_CLK_ENABLE();__HAL_RCC_TIM1_CLK_ENABLE();//ADC__HAL_RCC_ADC_FORCE_RESET();__HAL_RCC_ADC_RELEASE_RESET();/*复位ADC*/__HAL_RCC_ADC_CLK_ENABLE();/*ADC时钟使能*/__HAL_RCC_DMA_CLK_ENABLE();}voidADC_NVIC_init(void){HAL_NVIC_SetPriority(ADC_COMP_IRQn,0,0);/*中断优先级设置*/HAL_NVIC_EnableIRQ(ADC_COMP_IRQn);/*ADC中断使能*/}voidADC_DMA_init(void){HAL_SYSCFG_DMA_Req(0);//不知道什么东西FOCDMAinitstruct.Instance=DMA1_Channel1;FOCDMAinitstruct.Init.Direction=DMA_PERIPH_TO_MEMORY;FOCDMAinitstruct.Init.MemDataAlignment=DMA_MDATAALIGN_HALFWORD;FOCDMAinitstruct.Init.MemInc=DMA_MINC_ENABLE;FOCDMAinitstruct.Init.Mode=DMA_CIRCULAR;FOCDMAinitstruct.Init.PeriphDataAlignment=DMA_PDATAALIGN_HALFWORD;FOCDMAinitstruct.Init.PeriphInc=DMA_PINC_DISABLE;FOCDMAinitstruct.Init.Priority=DMA_PRIORITY_MEDIUM;__HAL_LINKDMA(&ADCh1,DMA_Handle,FOCDMAinitstruct);HAL_DMA_Init(&FOCDMAinitstruct);}voidFOR_ADC_init(void){//GPIO_initgpioinitstruct.Mode=GPIO_MODE_ANALOG;gpioinitstruct.Pin=GPIO_PIN_0|GPIO_PIN_1;gpioinitstruct.Pull=GPIO_NOPULL;HAL_GPIO_Init(GPIOA,&gpioinitstruct);ADCh1.Instance=ADC1;HAL_ADCEx_Calibration_Start(

    32单片机 触发 PY32 TI DMA ADC

    2025-01-30 2
  • PY32F002A内部时钟校正问题

    PY32F002A15TSSOP20的使用HAL_RCC_OscConfig(),HAL_RCC_ClockConfig()配置时钟为内部24Mhz时钟,后通过TIM1发出1khz波,其频率大约为998Hz,内部时钟源校准寄存器(RCC_ICSCR)显示:时钟频率校准值。软件通过读出存放在information区相应地址的数据,写入该寄存器,实现HSI特定输出频率下的校准。保存在Flash的如下地址内:24MHz校准值存放地址:0x1FFF0F108MHz校准值存放地址:0x1FFF0F04我试过在时钟配置完成后,直接读取该值写入校正寄存器内,反而偏差变大了(不知道读取的值对不对)请问校正内部24Mhz时钟是在配置后自动进行的?还是只能手动进行?如果是手动进行校正,flash需要解锁后读吗?

  • 问下各位老哥AT32f421支持FPU吗?

    小白刚开始学习官方页面显示支持DSP指令集keil内torget页面没有显示FPU选项hc32f421.h中有代码:#define__FPU_PRESENT0U/*!<fpupresent*/是不是说明此单片机没有FPU,但是可以使用math.h库?

  • 各位帅哥,问下stm32的DMA问题

    使用STM32f103c8t6标准库,的TIM1TRGO触发ADC注入组采样(2个通道),通过DMA传输进AD_Value[2]中在程序中可以使用ADC_GetInjectedConversionValue获得AD值,也可以直接读取JDRx来获得,就是无法通过DMA来读取问问各位帅哥,这是为什么?程序如下(gpio没有用到)#include"stm32f10x.h"//Deviceheader#include#includeuint16_ta=0;intmain(void){uint16_tAD_Value[2]={0};RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE);RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE);RCC_ADCCLKConfig(RCC_PCLK2_Div6);GPIO_InitTypeDefgpioa0_1;gpioa0_1.GPIO_Mode=GPIO_Mode_AIN;gpioa0_1.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1;gpioa0_1.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&gpioa0_1);//没有用到TIM_TimeBaseInitTypeDeftim2init;//名字懒得改tim2init.TIM_ClockDivision=TIM_CKD_DIV1;tim2init.TIM_CounterMode=TIM_CounterMode_Up;tim2init.TIM_Period=10000-1;//周期tim2init.TIM_Prescaler=7200-1;//分频1stim2init.TIM_RepetitionCounter=0;TIM_TimeBaseInit(TIM1,&tim2init);TIM_SelectOutputTrigger(TIM1,TIM_TRGOSource_Update);TIM_ITConfig(TIM1,TIM_IT_Update,ENABLE);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);NVIC_InitTypeDefnvictim3init;//名字懒得改nvictim3init.NVIC_IRQChannel=TIM1_UP_IRQn;nvictim3init.NVIC_IRQChannelCmd=ENABLE;nvictim3init.NVIC_IRQChannelPreemptionPriority=2;nvictim3init.NVIC_IRQChannelSubPriority=1;NVIC_Init(&nvictim3init);ADC_InitTypeDefadc0_1;//名字懒得改adc0_1.ADC_ContinuousConvMode=DISABLE;adc0_1.ADC_DataAlign=ADC_DataAlign_Right;adc0_1.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;adc0_1.ADC_Mode=ADC_Mode_Independent;adc0_1.ADC

    STM32 DMA AD dc ADC TI

    2024-12-28 4
  • 问下各位帅哥HC32F460JEUA创建工程问题

    本人萌新,做了一块HC32F460JEUA的开发板,没有焊接外部晶振使用其资料包HC32F460_DDL_Rev3.2.0中的HC32F460_DDL_Rev3.2.0\projects\ev_hc32f460_lqfp100_v2\examples\gpio,这个example,修改mian函数延时1S翻转B9外接的LED是可行的然后自己创建新的工程去翻转B9外接的LED,可以正常编译,但是LED是常亮的,不知道是什么原因,请各位帅哥看看是什么问题谢谢!!发不了图片发不了文件只能发百度云了通过百度网盘分享的文件:HC32F460JEUA_PROJECT.rar链接:https://pan.baidu.com/s/1QehvBzrtmt-8OmqIY2IXfQ?pwd=gui5提取码:gui5