本设计采用4脚的0.96寸OLED屏幕作为显示屏,它的分辨率为128x64,意思就是它有这么多的像素点,所有像素点都可以自发光,然后通过程序将对应像素点点亮就组成了自己想要的文字或图案。 OLED的屏幕采用I2C通信方式,stm32作为主机输入,OLED作为从机接收信息,采用软件模拟I2C通信方式,将PA0设置为时钟线,PA1设置为数据线。...
STM32外部中断大问题 问题:一直进入中断,没有触发信号,也一直进入。 描述:开PA0为外部中断,刚刚很好,一个触发信号一个中断,中断函数没有丢,也没有抢跑,开PA1为外部中断也是,都很好,只要能开到3个外部中断以上,就会出现这种情况,明明没有触发外部中断,可是中断服务函数还是不断的++。 问题一:电气噪声和抖动 电气...
所以在实际编程中,我们需要用到STM32单片机的usart2。 除了PA3,PA2外,我们还额外定义了一个引脚PA1: 如注释所说,用途为485模式控制: 485通信为半双工,所以我们在发送或接收数据前,都需要先行设置485通信的方向,而方向的设置就是通过485通信模块上的 RE:接收使能信号(低电平有效) DE:发送使能信号(高电平有效) ...
配置PB6引脚输出高电平。 重置PA0、PA1引脚的状态,防止待会配置定时器2通道输出PWM时映射到其他引脚。 配置定时器2和定时器3 配置定时器2的通道1和通道2输出PWM,用来给电机调速。 配置定时器3定时时间为1s。 配置NVIC 打开定时器3和PB13引脚的中断。 修改定时器3响应...
将传感器的模拟输出连接到STM32的一个ADC输入通道(PA0)。 (2)环境温湿度传感器(DHT11): 将DHT11的VCC引脚连接到STM32的3.3V电源。 将DHT11的GND引脚连接到STM32的GND引脚。 将DHT11的DATA引脚连接到STM32的一个GPIO输入引脚(PB0)。 (3)粉尘浓度模块(GP2Y10): 将GP2Y10的VCC引脚连接到STM32的3.3V电源。
将传感器的模拟输出连接到STM32的一个ADC输入通道(PA0)。 (2)环境温湿度传感器(DHT11): 将DHT11的VCC引脚连接到STM32的3.3V电源。 将DHT11的GND引脚连接到STM32的GND引脚。 将DHT11的DATA引脚连接到STM32的一个GPIO输入引脚(PB0)。 (3)粉尘浓度模块(GP2Y10): ...
注意一下:同一个时间,只能有一个IO口映射到同一个中断线。也就是说,PA0和PB0不能同一时间映射到同一个中断线,而PA0、PA1则可以同时映射,因为它们不是在同一个中断线上。 由上图可以PA0和PB0公用一个中断线,如果发生中断,在HAL_GPIO_EXTI_Callback()中如何判断时PA0触发的还是PB0触发的那 ...
部分重映像是相对于没有重映像的引脚来说的,比如上图没有重映像的引脚组是PA0、PA1、PA2、PA3,而部分重映像就是在使用重映像功能时只重映像了这几个原始引脚的部分而不是全部,在使用部分重映像时应当注意查阅参考手册,选取对应的一整组部分重映像,例如图上的PA0、PA1、PB10、PB11这一组和图上PA15、PB13...
必须要使能时钟,而且还要使能复用功能时钟,RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO , ENABLE);不
TIM2 PA0 PA1 PA2 PA3 TIM3 PA6 PA7 PB0 PB1 TIM4 PB6 PB7 PB8 PB9 TIM5 PA0 PA1 PA2 PA3 这里需要注意的是,如果对引脚进行了重映射,则通道对应引脚会发生变化。以TIM3为例 复用功能没有重映射部分重映射完全重映射 TIM3_CH1 PA6 PB4 PC6 TIM3_CH2 PA7 PB5 PC7 TIM3_CH3 PB0 PB0 PC...