首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
HYSRF05 stm32代码
2024-10-17
STM32(HY-SRF05)超声波测距项目
参考资料: https://www.cnblogs.com/qsyll0916/p/6964638.html http://blog.csdn.net/zhangdaxia2/article/details/50783566 首先,先来看一下这个模块的基本功能和原理. HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm:模块包括超声波发射器.接收器与控制电路.像智能小车的测距以及转向,或是一些项目中,常常会用到.智能小车测距可以及时发现前方的障碍物
STM32代码常见的坑
1 混淆换行符\和除号/造成的坑 入坑代码: GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5/ GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10; 问题所在: 这个代码KEIL不报错,但是换成 |/ 会报错,所以不容易发现这个BUG.结果是GPIO5和GP
STM32 Unicode 与 GBK 转换 .bin文件放到SD卡是啥意思
2个数组 : }; }; 一个是Unicode 编码,一个是GBK编码: 用c2b软件转成.bin 二进制文件放到SD卡里: SD卡放入字库 .FON STM32 代码: 代码中SD卡字库和二进制路径 //http://www.cnblogs.com/xiaobo-Linux/ QQ463431476 赵存档 //在sd卡中的路径 const u8 *GBK16_SDPATH="0:/SYSTEM/FONT/GBK16.FON"; //GBK16的存放位置 const u8 *GBK1
STM32学习笔记(六) SysTick系统时钟滴答实验(stm32中断入门)
系统时钟滴答实验很不难,我就在面简单说下,但其中涉及到了STM32最复杂也是以后用途最广的外设-NVIC,如果说RCC是实时性所必须考虑的部分,那么NVIC就是stm32功能性实现的基础,NVIC的难度并不高,但是理解起来还是比较复杂的,我会在本文中从实际应用出发去说明,当然最好去仔细研读宋岩翻译的<Cortex-M3权威指南>第八章,注意这不是一本教你如何编写STM32代码的工具书,而是阐述Cortex-M3内核原理的参考书,十分值得阅读. SysTick系统时钟的核心有两个,外设初始化和S
电子称DIY(贴应变片+写代码)
第一步.应变片介绍 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------
STM32 Cube mx 安装
原文链接:http://www.cnblogs.com/strongerHuang/p/5778216.html Ⅰ.写在前面 相信很多人都知道STM32CubeMX这个工具,也是近年来开发STM32比较流行的一个工具.这个工具从两年前第一版到现在已经有多个版本了,功能也从简单越来越强大了. STM32CubeMX是一个配置STM32代码的工具,它把很多东西封装的比较好,硬件抽象层.中间层.示例代码等. 现在ST公司主要升级和维护的库主要就是"Cube库"和"标准外设库&qu
VS code写stm32
第一次在知乎写博客,献丑了. VS code写stm32 今天实在觉得KEIL太丑,突然想到VS code也可以实现STM32代码的编写,遂决定写一个文章,把VScode变成一个STM32的IDE,实现KEIL的绝大部分功能,实现编译,链接,下载,调试为一体的IDE.参考了如下开源项目,这个项目用起来挺舒服的,自己也不会去写这些,这个还支持keil项目的导入. 基于CUBEMX构建VS code得IDE 先安装VS code 先安装python,这个...我就不写教程了,网上多的很,但我还是
stm32串口的配置方案
最近老板要我去做控制方面的内容,所以买了一块正点原子的开发板,现在是研究了一下usart.c,函数的代码如下: void USART1_IRQHandler(void) { u8 Res; #ifdef OS_TICKS_PER_SEC //串口 1 中断服务程序//如果时钟节拍数定义了,说明要使用 ucosII 了.OSIntEnter(); #endif if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //接收中断(接收到的数据必须
STM32程序异常——中断处理要谨慎
问题背景 最近有一个新项目(车载项目),板子上除了原来的ARM + STM32F030K6Tx又多了一个8bit的mcu的单片机,这可真是嵌入式全家福了. 系统的主要核心工作是由arm来完成,但是在开机早期及休眠.唤醒等过程是由stm32来控制完成的. 开机过程中的ACC打火检测.高低压检测,同时也是为了保证休眠的时候整块板子的的低功耗(休眠时只有rtc有电及stm32处于深度休眠,其他全部掉电). 最近添加了一颗tw8836mcu,主要是为了快速开机出预览,因为我的linux系统开机起来出摄像
动手实践丨手把手教你用STM32做一个智能鱼缸
摘要:本文基于STM32单片机设计了一款基于物联网的智能鱼缸. 本文分享自华为云社区<基于STM32+华为云IOT设计的物联网鱼缸[玩转华为云]>,作者: DS小龙哥 . 1. 前言 为了缓解学习.生活.工作带来的压力,提升生活品质,许多人喜欢在家中.办公室等场所养鱼.为节省鱼友时间.劳力.增加养鱼乐趣:为此,本文基于STM32单片机设计了一款基于物联网的智能鱼缸.该鱼缸可以实现水温检测.水质检测.自动或手动换水.氛围灯灯光变换和自动或手动喂食等功能为一体的控制系统,鱼缸通过ESP8266连接
CubeMX使用及感受
简介 CubeMX这几年刚流行起来,是一个STM32代码的初始化配置工具,里面封装了硬件层.中间层,以及示例代码. cube使用 该软件的安装需要较高版本jdk支持,固件库安装时需要注意和主程序的版本匹配,否则报错. 整体工程的新建.配置.生成步骤较为简便,但前提是你对32的整体架构较为熟悉,包括时钟.存储.外设等. 生成项目可指定配套软件如MDK.IAR等,后可直接打开项目进行用户部分编辑. cube代码生成是基于hal库,较为完备,基本可代替其他实现方式. HAL库&标准外设库对比 HAL库
STM32CubeMX介绍、下载与安装
一.简介 STM32CubeMX是一个配置STM32代码的工具,它把很多东西封装的比较好,硬件抽象层.中间层.示例代码等.现在ST公司升级和维护的库主要就是STM32CubeMX的HAL库和标准外设库,使用这两种库开发STM32各有各的好处,下面简单描述一下. 如果你是一名刚学STM32的初学者,想要把硬件底层相关的东西搞明白,不建议使用STM32CubeMX这个工具,建议使用之前经典的标准外设库来开发(先学习标准外设库,但有必要抽时间了解STM32CubeMX).标准外设库可以很简单直接跟踪到
(四)HXDZ-30102-ACC检测心率血氧数据并通过串口助手显示
主要参考模块说明书 写在前面的话 硬件原理我是真的搞不明白,所以心率血氧传感器数据检测就是模块卖家自带的代码... 我使用HXDZ-30102-ACC传感器也是偶然在网上检索到的,集成心率血氧和三轴加速度一起的,当时想法就是图简单,没想到卖家没实现三轴加速度的代码,因此我只用到了心率血氧传感器.建议不要用这个,直接使用MAX30102就能够实现功能(关键是便宜). 主要参考资料HXDZ-30102-ACC使用说明书V3.2(模块卖家提供资料包中有) 说明书中的原理介绍 首先连接开发板的COM端口
STM32启动代码分析 IAR 比较好
stm32启动代码分析 (2012-06-12 09:43:31) 转载▼ 最近开始使用ST的stm32w108芯片(也是一款zigbee芯片).开始看他的启动代码看的晕晕呼呼呼的. 还好在csdn上看到一片文章写的不错,分享下: 文章转载至:http://blog.chinaunix.net/uid-2595338-id-2139588.html,感谢原作者! 使用的芯片是 STM32F103VET,编译器使用 IAR ARM V5.5 设置头文件查找路径,例如: $PROJ_
stm32直流电机驱动与测速代码配套视频资料
说实话就现在的市场应用中stm32已经占到了绝对住到的地位,51已经成为过去式,32的功能更加强大,虽然相应的难度有所增加,但是依然阻止不了大家学习32的脚步,不说大话了这些大家都懂要不然也不会学习stm32的人那么多!!! 进入我们今天的主题,今天给大家介绍的是stm32中一个很小但是比较实用的stm32直流电机驱动与测速,话不多说先给大家上一段直流电机控制的代码. void pwm_ARRPreloadConfig(void) { PrescalerValue = (uint16_t) (S
stm32阅读代码工具source insight
不知道学stm32有没有这样的烦恼,想看一个项目的代码,但是用keil又发现建立工程太麻烦,单个打开文件又找不到函数和变量之间的依赖关系,变量和函数又不能高亮显示,linux下vim和emacs虽然很强大,但是学习的成本代价太高,因此选择了source insight 用来查看stm32的代码和linux内核的源代码. 快捷键Alt+Shift+S可以同步文件,同步文件后就可以自动找到源代码之间的依赖关系了(如:可以自动找到调用某个函数或变量的位置). 快速更名ctrl+',选中某个函数名,然后
STM32的CRC32 软件实现代码
对于STM32的32位CRC,如果假定它的一个主要目的是为了校验往内部FLASH存储数据的可靠性,那么(余数)初值是全1当然是比较合理的.由于STM32的32位CRC是纯32位,即每次必须输入32位的数,所以如果数据不到32位,应该往低位用1来填充比较合理: 另外,如果输入数据是 "1234"-0x31 0x32 0x33 0x34, 那么输入的CRC数据是 0011-0100 0011-0011 0011-0010 0011-0001 :: 0x34333231 由于STM32的32
STM32启动代码分析
STM32启动文件简单分析(STM32F10x.s适用范围)定时器, 型号, 名字在<<STM32不完全手册里面>>,我们所有的例程都采用了一个叫STM32F10x.s的启动文件,里面定义了STM32的堆栈大小以及各种中断的名字及入口函数名称,还有启动相关的汇编代码.STM32F10x.s是MDK提供的启动代码,从其里面的内容看来,它只定义了3个串口,4个定时器.实际上STM32的系列产品有5个串口的型号,也只有有2个串口的型号,定时器也是,做多的有8个定时器.比如,如果你用的ST
STM32 启动代码 bootloader
什么是启动代码? 启动代码是系统上电或者复位后运行的第一段代码,是进入C 语言的main 函数之前需要执行的那段汇编代码.STM32的启动代码在startup_stm32f10x_hd.s 启动代码有何用? 它的作用是在用户程序运行之前对系统硬件及软件环境进行必要的初始化并在最后使程序跳转到用户程序.它直接面对ARM 处理器内核及硬件控制器进行编程,所执行的操作与具体的目标系统紧密相关. C语言程序的运行需要具备一定的条件,如分配好外部数据空间.设置初始堆栈指针.配置时钟
STM32学习笔记:读写内部Flash(介绍+附代码)
一.介绍 首先我们需要了解一个内存映射: stm32的flash地址起始于0x0800 0000,结束地址是0x0800 0000加上芯片实际的flash大小,不同的芯片flash大小不同. RAM起始地址是0x2000 0000,结束地址是0x2000 0000加上芯片的RAM大小.不同的芯片RAM也不同. Flash中的内容一般用来存储代码和一些定义为const的数据,断电不丢失, RAM可以理解为内存,用来存储代码运行时的数据,变量等等.掉电数据丢失. STM32将外设等都映射为地址的形式
STM32窗口看门狗和独立看门狗的区别,看门狗介绍及代码演示
一.介绍: STM32看门狗分为独立看门狗和窗口看门狗两种,其两者使用调条件如下所示, IWDG和WWDG两者特点如下图所示: 独立看门狗的手册资料: 窗口看门狗的手册资料: 应当注意:在窗口看门狗中,当递减计数器在窗口外被重新装载,(若看门狗被启动)则产生复位 [注]图中的WDGTB为3表示2^3=8,表示8分频,最小时间910us也等于每次计数器减一所需要经过的时间:T(LSB),每隔910us减1.最大值也等于,设置重载(喂狗)值127时(最大),一个复位周
热门专题
数字后端里面的max_fanout怎么解决
hmmer构建蛋白质库
art-template 解析json
多数据源和分布式事务
chooserandom在jmeter哪个版本
laravel-admin 多字段唯一 验证
python 读取httponly cookies
00110101B转化为ASCII
LR的损失函数为什么要加log
hive drop tbale卡住
windows安装Volatility
TCP socket ipv6与ipv4的区别 java
spark2.x版本不支持alter
wpf MessageBox 退出全屏
sql server 产生大量日志的原因
JSP Servlet JavaBean Dao模式
基于redis 的服务器架构
vue表格编辑插件大全
Oracle19c 闪回恢复区设置2TB大小
centos 双网卡 默认路由