-
相较于51单片机,stm32的时钟系统可以说是非常复杂了,我们现在看下面的一张图:上图说明了时钟的走向,是从左至右的从时钟源一步步的分配给外设时钟。需要注意的是,上图左侧一共有四个时钟源,从上到下依次是:高速内部时钟(HSI):以内部RC振荡器产生,频率为8Mhz,但相较于外部时钟不稳定。高速内部时钟(HSE):以外部晶振作为时钟源,晶振频率可取范围为4~16Mhz,一般采用8Mhz的...[详细]
-
一开始学习51单片机就是用的MDK这个IDE软件,IDE软件虽然看起来直观好像更加容易入门(因为有界面看起来很形象),但是实际上IDE却是向我们这些入门人员隐藏了背后真实存在的过程,让我们以为编译就是点一下一个按键就完成了。直到使用了大半年的STM32芯片,我觉得不能一直依赖IDE软件,所以打算试试在Linux下开发STM32,首先需要一个linux下STM32的编译器查了一下,度娘告诉我a...[详细]
-
有时IAR工程因异常关闭,再次打开IAR工程时,会出现Workspace栏不显示工程的现象,如下图所示:原因:demo.eww文件内容丢失,丢失后demo.eww文件内容的内容如下:?xmlversion=1.0encoding=UTF-8?workspacebatchBuild//workspace正常的demo.eww文件内容应该如下,即丢失了下述...[详细]
-
/*************************************************************************************************///38kNEC编码接收和模拟发射//完整的信号构成:引导码+8位的客户码+8位客户码的补码+8位的按键值+8位按键值的补码+结束码//接收使用外部中断0,发射管低电平触发//STC15F...[详细]
-
设计总说明随着科学技术的不断发展,高集成度、高精度、高可靠性的一体化温湿度变送器开始得到广泛的应用.同时随着应用场景的增多,更多类如管理不及时、数据丢失、响应速度慢、不便于远距离传输等问题日益凸显.为满足现代生产实际需要,本文设计并实现了基于SHT11及同类型传感器的温湿度变送器及温湿度监测软件系统.本文设计温湿度变送器以STM32为核心控制器,可连接包括SHT11及SHT21、DHT...[详细]
-
1.安装pythonhttps://www.python.org/downloads/a.添加环境变量b.Python换pip源(1)阿里云http://mirrors.aliyun.com/pypi/simple/(2)豆瓣http://pypi.douban.com/simple/(3)清华大学https://p...[详细]
-
STM32单片机的每组IO口都有4个32位配置寄存器用于配置GPIOx_MODER,GPIOx_OTYPER,GPIOx_OSPEEDR和GPIOx_PUPDR,2个32位数据寄存器用于配置输入和输出寄存器GPIOx_IDR和GPIOx_ODR,1个32位置位复位寄存器GPIOx_BSRR,1个32位锁定寄存器GPIOx_LCKR和2个32位复用功能选择寄存器GPIOx_AFRH和GPIOx...[详细]
-
测试效果bsp_usart_dma.c文件代码#include"bsp_usart_dma.h"u8RxBuffer={0x00};//串口1接收后存放到此数组u8TxBuffer={0x00};//串口1发送此数组的数据u16RxBufferSize=0;voidusart_dma_init(void){GPIO_InitTy...[详细]
-
任务描述:某企业承担了一个LED数码显示设计任务;要求单片机控制一个数码管显示0→1→2→3→4→5→6→7→8→9,每个状态停留1秒。请用单片机设计其控制系统并调试运行。仿真视频https://www.bilibili.com/video/BV1g34y1m7tx/硬件图元件清单C语言程序#includereg51.hvoid...[详细]
-
前言本文主要介绍STM32多种的内部Flash读写方式和读写长文件的功能函数怎样编写。阅读完本文可以使你能够正常的完成Flash读写操作。介绍STM32FLASH不同型号的STM32,其FLASH容量也有所不同,最小的只有16K字节,最大的则达到了1024K字节。本次实验选用的STM32开发板是F103ZET6,其FLASH容量为512K字节,属于大容量产品(...[详细]
-
硬件外观引脚说明关于如何接线?1,CS2,MISO3,3.3V4,GND5,MOSI6,SCK7,3.3V8,3.3V关于如何查询芯片引脚?(打开STM32手册)代码摘要这段来自野火源码,需要修改的是芯片地址程序的流程是预先设置一个地址,也就是上面的地址,然后在程序跑起来的时候读取芯片的地址,读取地址后与预先设置的地址对照,然后打印提示信息。intmain...[详细]
-
如果你只有C语言基础就马上学习STM32,你一定会有这些疑惑:为什么有这么多没见过的API函数?没见过的变量(寄存器)名称?为什么工程除了main.c,还有这么多其它没见过的文件?它们有什么用?什么是Flash?什么是RAM?什么是ROM?什么是寄存器?什么是时钟?什么是中断?什么是定时器?什么是DMA?什么是端口复用与重映射?什么是ADC?什么是PWM?什么是UART?什么是IIC?...[详细]
-
源代码:#include"reg52.h"#include"intrins.h"/***********************Function:花式流水实验Hardware:硬件连接:LED0-LED7-P1.0-P1.7Author:欢迎关注逗比小憨憨*******************/#defineu8...[详细]
-
引言本文详细介绍如何移植FreeRTOS到STM32单片机上。移植操作系统是嵌入式开发的入门基础,单片机和嵌入式在物理上其实是一摸一样的,区别就是软件上嵌入式跑了操作系统而单片机没有。文本选用市场上最常见的STM32和FreeRTOS,为大家介绍如何移植操作系统到MCU上。介绍什么是RTOS?实时操作系统(Real-timeoperatingsystem,RTOS),它会按照...[详细]
-
当你熟悉了程序的仿真和下载,你就应该了解一下IAP了。本质上IAP和单片机内部固化的ISP程序一样,都是负责帮你把新程序下进单片机的FLASH。那为什么还需要IAP呢?举个例子,ISP的启动一般需要硬件控制BOOT0,因此对于加USB转TTL和三极管电容电阻等组成自动下载电路这种烧钱做法一般做产品肯定是不提倡的。而即便是不使用自动下载电路,也需要你手动去设置这个管脚,而产品批量...[详细]