两套程序,一套仅显示,另一套带触摸,并口驱动,均测试通过。
2022-02-17 19:05:57 10.88MB stm32 arm 嵌入式硬件 单片机
1
STM32F407单片机读写 OneWire_DHT11温湿度传感器驱动DEMO例程源码,DHT11传感器包括一个电阻式测湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。DHT11与单片机之间能采用简单的单总线进行通信,仅仅需要一个I/O口。传感器内部湿度和温度数据40bit的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。DHT11功耗很低,5V电源电压下,工作平均最大电流0.5mA。 int main(void) { char str[50]; uint32_t lcdid; /* 复位所有外设,初始化Flash接口和系统滴答定时器 */ HAL_Init(); /* 配置系统时钟 */ SystemClock_Config(); /* 初始化串口并配置串口中断优先级 */ MX_DEBUG_USART_Init(); /* 模块初始化 */ DHT11_Init(); /* 初始化3.5寸TFT液晶模组,一般优先于调试串口初始化
有关stm32f407freertos的相关例程,有助于初学者更好的学习freertos。
2022-02-16 11:25:58 26.69MB stm32f407 freertos
1
该设计使用STM32F407为主要控制芯片,使用不同的PWM输出口,分别各自单独控制电机,使得电机互相直接独立工作互不干涉,可以多个电机同时运动,提高设备运动性能,通过加减速算法,电机运行S型曲线。本设计同时设计了水泵和风扇等驱动电路。
1
主要内容是设计并制作一个基于stm32f407的智能风扇系统,这个智能风扇系统能够实现测量是否有人出现,是否温度过高,是否有火灾险情出现,这个系统完美解决了电力资源浪费以及在危险环境下处理不及时的问题,是一个智能家居发展下的完美代表。
2022-02-14 19:03:05 14.54MB stm32 arm 嵌入式硬件 单片机
STM32F407_最小系统开发板PDF原理图
2022-02-14 14:09:09 67KB stm32 arm 嵌入式硬件 单片机
1
STM32F407的三相正弦波调制程序源码 SPWM,SVPWM两种算法,频率,载频,幅值可调,可以做为你的学习设计参考。 int main(void) { NVIC_InitTypeDef NVIC_InitStructure; double pwmcs; NVIC_InitStructure.NVIC_IRQChannel = TIM1_UP_TIM10_IRQn ; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); for(i8=0;i8<800;i8++) sinA[i8] = sin( (double)i8*3.1415926/180 ) ; for(i8=0;i8<4
2022-02-14 14:08:13 31.61MB 算法 arm 嵌入式硬件 单片机
1、所有的按键操作都有,包括单击,双击,多击,长按,以及按键释放,也可用于矩阵扫描按键,任意组合键的各种动作,基本上你能想到的按键功能,这个例程都能实现。 2、程序通过定时器定时滤波,不用delay函数,不浪费CPU资源。 3、这是自己保存的资源,非共享资源,请同学们不要下载,有解压密码的。 4、密码:~拼音+短号+~符号
2022-01-30 13:02:28 8.4MB stm32 arm 嵌入式硬件 单片机
1
STM32F407单片机读写 MH-Z14A二氧化碳传感器模块并串口输出软件DEMO例程源码,可做为你的学习设计参考。 int main(void) { uint32_t strL; /* 复位所有外设,初始化Flash接口和系统滴答定时器 */ HAL_Init(); /* 配置系统时钟 */ SystemClock_Config(); /* 初始化串口并配置串口中断优先级 */ MX_DEBUG_USART_Init(); MX_USARTx_Init(); HMI_USARTx_Init(); /* 无限循环 */ while (1) { /* 发送读取数值指令 */ if(HAL_UART_Transmit(&husartx,&aTxBuffer[0],9,0xFFFF)==HAL_OK) /* 读取返回值 */ HAL_UART_Receive(&husartx,&aRxBuffer[0],9,0xFFFF); /* 计算气体浓度值 */ strL=aRxBuffer[2]*256+aRxBuffer[3]; HMI_value_setting("page1.t1.txt",aRxBuffer[0]); HMI_value_setting("page1.t7.txt",aRxBuffer[1]); HMI_value_setting("page1.t9.txt",aRxBuffer[2]); HMI_value_setting("page1.t11.txt",aRxBuffer[3]); HMI_value_setting("page1.t13.txt",aRxBuffer[4]); HMI_value_setting("page1.t15.txt",aRxBuffer[5]); HMI_value_setting("page1.t17.txt",aRxBuffer[6]); HMI_value_setting("page1.t19.txt",aRxBuffer[7]); HMI_value_setting("page1.t21.txt",aRxBuffer[8]); HMI_string_setting("page1.t3.txt",strL); printf("二氧化碳浓度为:%d ppm\n",strL); HAL_Delay(5000); } } /** * 函数功能: 向串口屏发送数据 * 输入参数: 无 * 返 回 值: 无 * 说 明: 无 */ void HMI_value_setting(const char *val_str,uint32_t value) { uint8_t tmp_str[30]={0}; uint8_t i; sprintf((char *)tmp_str,"%s=\"%x\"",val_str,value); for(i=0;iDR=tmp_str[i]; while(__HAL_UART_GET_FLAG(&husartx_HMI, UART_FLAG_TXE) == RESET); } HMI_USARTx->DR=0xFF; while(__HAL_UART_GET_FLAG(&husartx_HMI, UART_FLAG_TXE) == RESET); HMI_USARTx->DR=0xFF; while(__HAL_UART_GET_FLAG(&husartx_HMI, UART_FLAG_TXE) == RESET); HMI_USARTx->DR=0xFF; while(__HAL_UART_GET_FLAG(&husartx_HMI, UART_FLAG_TXE) == RESET); } /** * 函数功能: 向串口屏发送数据 * 输入参数: 无 * 返 回 值: 无 * 说 明: 无 */ void HMI_string_setting(const char *val_str,int32_t value) { uint8_t tmp_str[50]={0}; uint8_t i; sprintf((char *)tmp_
stm32f07使用入门手册 希望对每一个学习stm32的有所帮助
2022-01-28 13:54:17 4.33MB stm32f407
1