推荐阅读最新更新时间:2024-03-16 15:01
STM32管脚的复用与重映像关系
最近记忆力以指数形式下降,以前弄明白的东西结果又忘了,故而将之写下避免下次又得重新查阅资料 这里讲的是关于STM32F10X的,和STM32F0XX系列的还是有一些区别的,F0的下次有空在写了.... 概括一下:复用就是一个引脚有几个功能,1.做普通IO输入输出2.其他外设的输入输出(比如I2C,TIM,SPI等等),这就是复用。 重映射就是将引脚功能重新定义到其他引脚,例如PA9是USART1-TX默认的管脚,但是现在PA9用做它用了,那可以将USART1-TX重新映射到PB6,当然这种映射不是随意的想映射到哪个脚就哪个脚,芯片内部已经固定了只能映射到固定的地方 OK,说完了概念 下面是用法 MCU复位后PA8的默认功能是普通
[单片机]
stm32基础实验1
一、GPIO基础 4种输入模式: 浮空、上拉、下拉、模拟输入 4种输出模式: 开漏输出 开漏复用功能 推挽式输出 推挽式复用功能 3种最大输出速度:2MHZ,10MHz,50MHz 其中 推挽输出:可以输出强高低电平,连接数字器件 开漏输出:只可以输出强低电平,高电平得靠外部电阻拉高。输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内) 二、 跑马灯code GPIO输出:推挽输出 实现步骤: 1)使能IO口时钟。调用函数RCC_APB2PeriphColckCmd(); 不同的IO组,调用的时钟
[单片机]
STM32 GPIO操作流程
GPIO初始化步骤 1、打开GPIO外设时钟. 设置RCC- APB2ENR RCC- APB2ENR|=1 2;//使能PORTA时钟 2、设置端口模式和速度. GPIOA- CRH(8-15位) 或者GPIOA- CRL(0-7位) 端口模式: 模拟输入模式/ 浮空输入模式/ 上拉/下拉输入模式/ 通用推挽输出模式/ 通用开漏输出模式/ 复用功能推挽输出模式/ 复用功能开漏输出模式 速度: 2M 5M 10M 3、设置端口输入GPIOA- IDR/输出GPIOA- ODR GPIOA- ODR|=1 8; //PA8 输出高
[单片机]
STM32 掉电检测程序
当VDD下降到PVD阀值以下或当VDD上升到PVD阀值之上时,根据外部中断第16线的上升/下降边沿触发设置,就会产生PVD中断 void PVD_IRQHandler(void) { led_ctrl(LED1, ON); if(PWR_GetFlagStatus(PWR_FLAG_PVDO)) { MSD0_WriteSingleBlock(1, buf); } EXTI_ClearITPendingBit(EXTI_Line16); } void PVD_Init(void) { EXTI_InitTypeDef EXTI_InitStructure; NVIC_InitTypeD
[单片机]
STM32 的并口总线的所有接口类型解决方法
STM32的并口总线支持NOR, SRAM, PSRAM,NAND接口,本文以PSRAM为例实现并口的同步非复用, 异步复用和异步非复用操作!以STM32F207IG(176脚)系列为例,步骤如下: 1. 初始化并口的各个引脚 //Add : F0-F5(6); F12-F15(4); G0-G5(6); D11-D13(3); E3-E6(4); E2(1); G13-G14(2) //Data : D14-D15(2);D0-1(2);E7-15(9);D8-10(3) //FSMC_NIORD: F6 NC for PC CARD
[单片机]
【嵌入式】STM32的库函数使用
使用编译环境为MDK5,烧录器将会使用JTAG和串口两种,芯片为STM32F103C8T6 零、前准备 1.MDK5编译环境 2.JTAG驱动或串口驱动 一、建立工程模板,写一个简单的小程序 1).创建工程目录 这里就会使用MDK创建工程了,由于STM32的工程已经比较大了,所以在工程目录下将会再创建多个目录,以便整理。 (说明一下,其实随便放都可以,只要工程都能包含以下说到的文件即可) 这里工程名就叫template吧(.代表工程目录): .CORE 存放芯片内核驱动文件; .FWLIB 使用库函数的话存放库函数; .OBJ 存放编译生成文件; .SYSTEM 存放系统代码; .USER 存放工程文件,应用程序等。 新建好
[单片机]
STM32 | 串口空闲中断接收不定长数据(DMA方式)
在使用STM32的串口接收数据的时候,我们常常会使用接收中断的方式来接收数据,常用的是RXNE。这里分享另一种接收数据的方式——IDLE中断(PS:本文的例子运行在STM32F103ZET6上)。 一、IDLE中断什么时候发生? IDLE就是串口收到一帧数据后,发生的中断。什么是一帧数据呢?比如说给单片机一次发来1个字节,或者一次发来8个字节,这些一次发来的数据,就称为一帧数据,也可以叫做一包数据。 二、RXNE中断和IDLE中断的区别? 当接收到1个字节,就会产生RXNE中断,当接收到一帧数据,就会产生IDLE中断。比如给单片机一次性发送了8个字节,就会产生8次RXNE中断,1次IDLE中断。 三、IDLE中断如何配
[单片机]
工程师STM32单片机学习基础手记(4):用PWM实现荧火虫灯(四)
补充一些硬件知识 SEGGER 给出的Jlink引脚图 开发板上的连接图 标准的JTAG连接图,供对照参考。 调试方式既可以用JTAG,也可以用SW。 以下是转载: SWD 仿真模式概念简述 先所说 SWD 和传统的调试方式有什么不一样: 首先给大家介绍下经验之谈: (一): SWD 模式比 JTAG 在高速模式下面更加可靠。 在大数据量的情况下面 JTAG 下载程序会失败, 但是 SWD 发生的几率会小很多。 基本使用 JTAG 仿真模式的情况下是可以直接使用 SWD 模式的, 只要你的仿真器支持。 所以推荐大家使用这个模式。 (二): 在大家
[模拟电子]