STM32F103固件库编程(6)—I2C(一)I2C时序表(二) STM32的I2C特性及架构(三)寄存器映射(四)代码(CV工程师)#include "stm32f10x.h" #include "bsp_usart.h" #include "bsp_i2c.h" uint8_t readData[10]={0}; uint8_t writeData[8]={4,5,6,7,8,9,10,1
转载 10月前
487阅读
const static uint32_t FLASH_START_ADDRESS = 0x0800FC00; //f103c8t6 The last p
原创 2022-12-23 00:14:58
519阅读
电路连接:SCL和SDA分别接到PB6和PB7上,并都外接上10kΩ上拉电阻。电路板如下图所示:最左边的4个排针接的是电源和串口。由于板上没有任何外部晶振,所以在Keil中建好工程后, 要将RTE/Device/STM32F103C8/system_stm32f10x.c中的SYSCLK_FREQ_72MHz的定义注释掉,防止SystemInit函数打开HSE晶振。#if defined (STM
主要是讲解怎么看懂这个图。一、内置RC振荡器(HSI RC)频率是约为8MHz,因为其频率不是很稳定。其可作为系统时钟的一个选项。二、晶振振荡器(HSE OSC)从图中可以看到其是一个高速的外部时钟。一般接一个8MHz的晶振,这个晶振可以是4-16MHz这个范围,其可以作为选择器PLLXTPRE的输入,也可以两分频后作为选择器PLLXTPRE的输入,还可以作为系统时钟的一个时钟源。三、PLLMUL
目录一、综述二、中断详解:1NVIC:1介绍2中断优先级2EXTI 1介绍 2原理分析    3中断处理函数一、综述        中断是什么,那么多中断由谁控制(NVIC),他是怎么被触发的(EXTI等)触发后发生什么。(中断处理函数)二、中断详解:&nbs
上一个博文介绍了编码器实现测试,这也是编码器最普遍的应用,我们需要操作的东西并不多,通常来说记录脉冲数。STM32操作增量式编码器(一)----使用外部中断实现测速1.增量式编码器实现定位思路对于增量式编码器如何进行定位,我也是一直存在疑惑,并不是说整体定位算法难,这仅仅需要利用一个变量去记录当前脉冲数即可,正转递增,反转递减。但是真实情况真的如此简单吗?首先我们需要明确两个存在的问题:1.如何去
目录一安装 Altium Designer18 并用其绘制 stm32 最小系统的电路原理图1.下载与安装2.文件配置 3.绘制 stm32 最小系统的电路原理图3.1绘制前目标3.2创建工程3.3元件库3.4绘制开始3.5绘制结果4 SD卡原理图5.最终原理图STM32C8T6+SD二、掌握SD卡协议原理,用STM32F103完成对SD卡的数据读取(fat文件模式)。sd卡协议1.st
文章目录系列文章目录一、Free-Rtos是什么?二、在stm32工程模板里如何使用free-rtos系统 1.如何在官网下载free-rtos源码 2.如何在stm32工程中使用free-rtos系统总结 前言程序需要沉淀沉淀再沉淀提示:以下是本篇文章正文内容,下面案例可供参考一、free-rtos是什么? 这里我就直接参考正点原子资料了。二、在stm32工程模板里如何使用
由于stm32的库默认是外部晶振8M的情况下实现的,所以配置波特率的时候也是按8M,包括主频,如果用12M晶振就需要改动几个地方: 在system_stm32f10x.c中找到相应类型的文件,进行如下修改。 1)72M主频: 8M时: RCC->CFGR |= (uint32_t)(RCC_CFGR
转载 2018-07-14 21:40:00
837阅读
一、STM32 启动过程 通过Boot引脚设定,寻找初始地址 初始化栈指针 __initial_sp 指向复位程序 Reset_Hander 设置异常中断 HardFault_Handler 设置系统时钟 SystemInit 调用C库函数 _main二、介绍GPIO GPIO 8种工作模式(gpio_init.GPIO_Mode): (1) GPIO_Mode_AIN 模拟输入 (2) GPIO
转载 2023-10-23 09:33:21
460阅读
文章目录前言1. 移植FreeRTOS2. 测试FreeRTOS3. 移植工程 前言该篇环境为:STM32F103ZET6、Keil 库函数版本 F4、F7、H7移植同理。FreeRTOS源码:链接:https://pan.baidu.com/s/10l8TmseEJKkFdwFY3qZc1Q?pwd=8uqw 提取码:8uqw1. 移植FreeRTOS选取平时编程的一个库函数工程进行移植。
STM32F407ZG连接MODBUS模块实现ADC模数转换0 实现结果说明1 视频2 ADC的基本原理2.1 ADC的特点2.2 STM32F40x系列ADC外部通道和引脚对应关系2.3 ADC引脚2.4 STM32通道组2.5 单次转化VS 连续转换2.6 扫描模式3 ADC相关的寄存器3.1 ADC_CR1控制寄存器13.2 ADC_CR2寄存器3.3 ADC_SMPR1/2寄存器3.4
1.什么是ARMARM是一家芯片设计企业,也是对一大类微处理器的统称。2.什么是STM32ST:意法半导体(一个公司名),是一个SOC企业 M——Microelectronics的缩写即微控制器,M0、M3、M4 32——32位,表示是一个32位微控制器STM32的芯片结构图3.STM32F10x最常见的系列STM32F101 基本型系列,主频为36MHz STM32F102USB 基本型系列,主
目录1、画图Cortex-M3内部结构图,要体现相应的总线,并标注其作用。2、关于RCC时钟,完成如下任务(1)画出RCC时钟树简图,要体现出相关的时钟源Systick 介绍(2)简述由8M晶振到72M主频的过程,以及通过寄存器方式配置72M主频的过程(3)阅读如下代码,理解并解释每一步的作用3.flash寄存器设置延时周期的作用4.通过寄存器点亮ledDMASTM32 DMA使用详解1、画图Co
STM32F103是一款由意法半导体(STMicroelectronics)推出的一款微控制器,它采用ARM Cortex-M3内核,拥有丰富的外设和功能,广泛应用于各种嵌入式系统中。而Linux作为一种开源的操作系统,也被广泛应用于各种设备中,包括嵌入式系统。本文将介绍如何在STM32F103上运行Linux系统的相关内容。 首先,需要明确的是,STM32F103虽然是一款功能强大的微控制器,
原创 2024-05-15 10:28:44
462阅读
# OpenHarmony与STM32F103的集成 OpenHarmony是一款开源的分布式操作系统,它旨在构建一个统一的软硬件生态系统。STM32F103是一款由意法半导体(STMicroelectronics)公司推出的32位微控制器,具有丰富的外设和强大的性能。本文将介绍如何在STM32F103上集成OpenHarmony,并提供代码示例。 ## 1. OpenHarmony简介 O
原创 2024-01-09 20:58:57
278阅读
最近偶然看到B站bad apple的视频, 是基于stm32单片机的,心血来潮自己也来弄了一个小视频,哈哈。。。  和bad apple的播放原理一样,视频其实就是一张张小图片,保存为.bin二进制文件格式,放在SDcard里面,通过stm单片机读取SD的bin文件,再显示在TFT上面。第一步,截取视频图片。截取视频图片的方法很多,这里选择通过KMPlayer播放截取一段视频。右
转载 2024-06-03 11:06:42
169阅读
STM32F103 一:ADC前言总结数据采集系统A/D转换原理A/D转换器的主要参数STM32 ADC的一些配置扫描模式规则组注入组转换模式ADC 寄存器ADC实验 前言将模拟量转换为数字量的过程称为模数(A/D)转换,完成这一转换的器件叫模数转换器(ADC),将数字量转换为模量的过程叫数模(D/A)转换,完成这一转换的器件成为数模转换器(DAC)。 可以去看看刘凯老师的课:https://w
概述 SRAM的简介 折腾过电脑的朋友都知道,当电脑运行比较卡的时候,我们可以通过给电脑加装内存条来改善电脑的性能。那么号称微型计算机的单片机能不能像电脑一样加装内存条呢?装内存条倒是不行,但是我们可以给单片机外加和内存条效果一样的SRAM来提升单片机的性能。下面以STM32F407ZGT6单片机来讲解一下来扩展外部SRAM。原理:给STM32芯片扩展内存与给PC扩展内存的原理是一样的,只是PC上
转载 2024-03-17 15:52:26
239阅读
作者:iceiilin转自:RTC可以用来设置实时时钟,并产生秒中断或闹钟中断。在芯片有电源供电的情况下,系统掉电后仍能保持时钟计时。RTC设置需要涉及对电源(PWR)、备份区域(BKP)和RCC部分寄存器的改写。RTC所需的晶振在RCC部分的寄存器中选择。在芯片时钟系统中对RTC的时钟提供如下图所示。RTC时钟可以从LSI, LSE和HSE分频中选择。这些需要对RCC寄存器的一些位进行设置。RT
转载 2月前
532阅读
  • 1
  • 2
  • 3
  • 4
  • 5