1,STM32F407 SPI1重映射怎样配置

直接配置相应GPIO的复用功能即可,比如: GPIO_InitStruct.Pin = GPIO_PIN_13; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_PULLUP; GPIO_InitStruct.Speed = GPIO_SPEED_FAST; GPIO_InitStruct.Alternate = GPIO_AF5_SPI2; HAL_GPIO_Init(SPIx_SCK_GPIO_PORT, &GPIO_InitStruct);。。。。。。。

STM32F407 SPI1重映射怎样配置

2,怎么用keil5测试STM32F407的DI和DO是否正常

#includevoid delays(int z){ int i,j; for(i=0; ifor(j=0; j<500; j++); } int main(){ GPIO_InitTypeDef GPIO_InitStruct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_All; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(GPIOA, &GPIO_InitStruct); while(1){ delays(100); GPIO_Write(GPIOA, 0x00); delays(100); GPIO_Write(GPIOA, 0xff); } return 0; }

怎么用keil5测试STM32F407的DI和DO是否正常

3,请教stm32f407 定时器配置是否正确

官方例程,简单给你注释了下 : // AD IO口配置 GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; // 修改自己用的端口 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; GPIO_Init(GPIOA, &GPIO_InitStructure); //AD 初始化 DAC_InitStructure.DAC_Trigger = DAC_Trigger_Software; //软件触发 DAC_InitStructure.DAC_WaveGeneration = DAC_WaveGeneration_Noise; DAC_InitStructure.DAC_LFSRUnmask_TriangleAmplitude = DAC_LFSRUnmask_Bits8_0; DAC_InitStructure.DAC_OutputBuffer = DAC_OutputBuffer_Enable; DAC_Init(DAC_Channel_1, &DAC_InitStructure); DAC_Cmd(DAC_Channel_1, ENABLE); //使能 DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE); //开始转换

请教stm32f407 定时器配置是否正确

4,请教使用stm32f407进行AD采样的问题

简单给你注释了下 : // AD IO口配置 GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; // 修改自己用的端口 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; GPIO_Init(GPIOA, &GPIO_InitStructure)
官方例程,简单给你注释了下 : // ad io口配置 gpio_inittypedef gpio_initstructure; gpio_initstructure.gpio_pin = gpio_pin_4; // 修改自己用的端口 gpio_initstructure.gpio_mode = gpio_mode_ain; gpio_init(gpioa, &gpio_initstructure); //ad 初始化 dac_initstructure.dac_trigger = dac_trigger_software; //软件触发 dac_initstructure.dac_wavegeneration = dac_wavegeneration_noise; dac_initstructure.dac_lfsrunmask_triangleamplitude = dac_lfsrunmask_bits8_0; dac_initstructure.dac_outputbuffer = dac_outputbuffer_enable; dac_init(dac_channel_1, &dac_initstructure); dac_cmd(dac_channel_1, enable); //使能 dac_softwaretriggercmd(dac_channel_1, enable); //开始转换

5,stm32F407VG JTAG引脚怎么样设为普通IO

在stm32f4中不是这样的,STM32F4库函数中,已经取消了GPIO_PinRemapConfig()函数,对于复用功能,使用GPIO_PinAFConfig()函数了!但是在GPIO_PinAFConfig()函数已经没有禁止JTAG/SW等选项了,而是复用到AF0~AF15线上,其中AF0是系统功能,STM32F4复位后JTAG对应的管脚的对应的功能就是AF0,(GPIO_AF_MCO=0) 所以这句可以不用:GPIO_PinAFConfig( , ,GPIO_AF_MCO);直接配置GPIOx_MODER为输出,或输入模式即可,但是注意:STM32F4复位后JTAG对应的管脚的GPIOx_MODER值是0x02,即 复用功能!所以直接配置GPIOx_MODER为所需的模式就可以了!所以f4中,我们使用不用的jtag脚只需像平常使用其他io一样配置就好了
你好!RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); //TIM14ê±?óê1?ü GPIO_PinAFConfig(GPIOB,GPIO_PinSource6,GPIO_AF_TIM3); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; //GPIOD7?′ó??a?¨ê±?÷ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; //?′ó?1|?ü GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //?ù?è100MHz GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //í?íì?′ó?ê?3? GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //é?à- GPIO_Init(GPIOB,&GPIO_InitStructure); //3?ê??ˉPF9还是不行?? 怎么处理 PB4 输出PWM ,PC7-PC9可以正常输出??如有疑问,请追问。
F4的重映射函数跟F1不同。你可以参考官方,随便一个重映射的例程,就知道怎么改了。。。我就懒得帮你查了。

6,如何将stm32标准库封装成lib

以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程。这个编译过程是一个相当慢的过程!完全编译大约需要一支烟的时间。每次建立工程都这么编译,是一个相当浪费时间和香烟的过程。于是,我有了将库编译成lib文件的想法。本博文就是我将STM32F4的标准库编译成lib文件并在工程中使用的过程。适用对象:1、熟悉库,不想再看库里边代码2、有稳定的库,库文件更新不频繁3、库文件多,每次编译时间长下面是我将STM32F4的标准库编译成lib并在工程中使用的过程:使用工具链:MDK4.70A。其实各个工具链几乎是一样的1、建立创建lib的工程2、将库文件拷贝到工程目录:将库里边目录\STM32F4xx_StdPeriph_lib v1.0.2\STM32F4xx_StdPeriph_Driver下的inc和src两个文件夹拷贝到预创建工程的目录。我计划在目录E:\学习\ARM\库\stm32f4-2中创建库。于是我将两个文件夹拷贝到了这里。3、选择芯片:STM32F407VG4、选择NO。因为这不是可运行的程序,这里不需要加入启动文件。5、创建完工程后,工程结构如图:6、MDK中点击工具栏上的设置工程结构,并将库文件加入工程:为了通用,我将库中所有的C文件都加入了工程7、完成后MDK下的目录结构:8、MDK下设置输出选项:工程选项中设置输出,选择输出lib到目录E:\学习\ARM\库\stm32f4-2\lib\:9、设置C语言预编译宏和引用目录:因为要使用STM32F4标准库,预编译选项设置:USE_STDPERIPH_DRIVER,STM32F4XX将刚才拷贝的inc和工程根目录文件夹加入引用:10、设置完成后:11、将stm32f4xx_conf.h文件拷贝到工程:这个文件需要在标准库提供的示例工程中找:我使用的是\STM32F4-Discovery_FW_V1.1.0\Project\Peripheral_Examples\ADC3_DMA\stm32f4xx_conf.h这个文件引用了库文件中所有的头文件。因为不包含在库中,我将这个文件拷贝到E:\学习\ARM\库\stm32f4-2文件夹。12、到此,工程设置完成。按F7编译,经过一支烟的时间即可生成库的lib。生成完成后,MDK工程中:13、工程输出目录:文件stm32f4lib.lib就是我们生成的lib文件14、将库文件加入该工程15、新建工程,我命名成stm32f4use,处理器依旧选择STM32F407VG。16、这是选择yes,因为这是一个可执行的工程:17、将标准库示例工程的\STM32F4-Discovery_FW_V1.1.0\Project\Peripheral_Examples\ADC3_DMA中的system_stm32f4xx.c拷贝到工程目录(E:\学习\ARM\库\stm32f4-2)中18、再次点击菜单上的设置工程目录结构,将刚才生成的lib库加入到工程中:19、将示例工程\STM32F4-Discovery_FW_V1.1.0\Project\Peripheral_Examples\ADC3_DMA中的system_stm32f4xx.c拷贝到工程目录。20、将main.c和 system_stm32f4xx.c 加入到工程21、完成后的目录结构:22、加入编译选项与上边生成lib相似,预编译选项设置:USE_STDPERIPH_DRIVER,STM32F4XX引用目录:.\inc;..\stm32f4-2 (这里的.\inc;..文件夹就是刚才建立库时候的文件夹)输出可执行文件:23、添加几行简单的代码//点亮一个LED#include <stm32f4xx.h>#include "stm32f4xx_conf.h"#include "stm32f4xx_tim.h"int main()GPIO_InitTypeDef GPIO_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD,ENABLE);GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;GPIO_Init(GPIOD,&GPIO_InitStructure);GPIO_SetBits(GPIOD,GPIO_Pin_12);while(1);}24、工程设置完成,按F7试试。现在编译速度快起来了,点个烟的时间就编译完了

文章TAG:奔富  重映  映射  怎样  奔富缤致pin407  SPI1重映射怎样配置  
下一篇