一.Feature list功能: 1.按键控制继电器,按下接通,松手断开。 2.CAN控制继电器通过CAN发送继电器状态,一个比特位对应一个按键,按下发1,放开发0。通过接收CAN信息,控制七个继电器,一个直接字节控制一个继电器。 3.串口调试
转载
2024-10-18 10:05:06
395阅读
五一假期已过,大家是否还像五一五二五三那样快乐呢??答案就交给你们自己寻找了哈、、说到五一、、就从五一开始的那一刻起、、就开始计时着、、到五一假期结束、、呵呵、、在这里,智商和情商比我高的人估计又猜到我要说什么了、、关于日期,关于时间、STM32也提供了强大的RTC模块、、至于RTC模块到底是哪三个英文单词的缩写,我就不说了、好了,言归正传、
STM32配置FDCAN通讯由于总线上有设备不支持FDCAN,为了保持兼容性,将本机FDCAN配置为传统CAN运行。CubeMX配置开启SW调试接口 开启FDCAN2 开启外部时钟 外部晶振为12M,主频480M,FDCAN时钟来自PLL1Q FDCAN2参数设置,参数设置的说明,在代码中有注释, 在此强调2点: 1 配置为传统CAN模式时要关闭自动重传,原子哥建议,不知为何,有待测试,CAN标准
STM32CubeMX 教程简介:STM32CubeMX 是 ST 意法半导体近几年来大力推荐的 STM32 芯片图形化配置工具,允许用户使用图形化向导生成 C 初始化代码。其特性如下:直观的选择 MCU 型号,可指定系列、封装、外设数量等条件;微控制器图形化配置;自动处理引脚冲突;动态设置时钟树,生成系统时钟配置代码;可以动态设置外围和中间件模式和初始化;功耗预测;C 代码工程生成器覆盖了 ST
由于本人做题目时发现正点原子的串口发送教程是单字节,也在网上找了许多案例,但都不是很满意,这里借鉴了一下B站江科大UP主的代码,结合自己的需求,改了一下,大家可以参考一下,讲的很好,话不多说,直接上代码,希望帮助更多小伙伴。同时哪里不对的地方望大神多多指教。usart.c头文件自己添加#if 1
#pragma import(__use_no_semihosting)
uint8_t Ser
1:下载软件点击 这里立即下载,共454M。2:通过STM32CubeMX配置USART1,CAN11:创建工程创建文件夹存放工程 添加工程名称及路径:为每个驱动单独创建.c和.h文件。2:配置时钟3:配置串口驱动4:配置CAN驱动 配置波特率为500K5:选择调试引脚6:生成代码7:调试 发现生成的代码无法调试,注释掉这一行。 编辑并删除掉下面这一行:Message(2,"Not a genui
转载
2024-09-06 11:19:46
89阅读
STM32F4定时器时钟频率和时钟源(1)高级定时器timer1, timer8以及通用定时器timer9, timer10, timer11的时钟来源是APB2总线(2)通用定时器timer2timer5,通用定时器timer12timer14以及基本定时器timer6,timer7的时钟来源是APB1总线cubemx配置以下转自:https://blog.csdn.net/qq_42967008/article/details/89267010一、打开Cube,建立工程图片:点击ACCE
转载
2021-06-08 14:40:40
2952阅读
第一步 使用stm32cubeMX配置串口可以在NVIC里面设置串口的优先级,避免bug的出现。第二步 生成代码并修改串口打印重定向在usart.c里面添加/** * @brief 串口重定向 */#include <stdio.h>int fputc(int ch, FILE *f){ HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1, 0xFFFF); return ch;}在使用的地方要
原创
2021-06-08 14:41:03
3615阅读
前面说了USB鼠标,这次趁热打铁,说一下USB键盘。依然只说如何修改,不说背后的原理。原因你懂的,涉及的知识点太多了。会不会写成USB三部曲? 不知道猜猜我下一步再写个啥?1 生成工程首先,STM32CubeMX的配置部分不说了,和USB鼠标部分的一样。唯一需要注意的一点是,VID和PID这两个值要改一下,否则主机(也就是电脑)会以为你还是
转载
2024-09-12 23:08:45
142阅读
随着集成电路发展,现在购买过去的IC越来越难买,而且量越来越少,价格越来越高,经过研究决定,准备把目前的CPU DS80C400升级到STM32,在这向有经验的过来者请教。 STM32特点: 内核:ARM32位Cortex-M3 CPU,最高工作频率72MHz,1.25DMIPS/MHz。单周期乘法和硬件除法。 存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器。
文章目录一、准备工具二、前置知识1.ADC简介2.DMA简介2.STM32Cubemx配置1.新建工程2.时钟源选择及时钟树配置3.时基选择调试接口选择4.配置ADC采集1.选择要配置为ADC采集的引脚2.开启DMA传输,循环模式3.选择分辨率,使能ADC持续转换,DMA持续请求4.选择触发源5.生成工程3.Keil编写代码4.烧录观察工程下载地址 一、准备工具STM32F407VE核心板 ST
转载
2024-10-29 07:36:05
139阅读
title: stm32F407cubeIDE环境搭建 tags:单片机编程 categories: 技术 abbrlink: efd77299一、安装软件官网地址地址下载安装二、配置工程1. 选择对应的芯片直接搜索即可2. 配置时钟先在rcc选项中设置时钟为外部时钟168M时钟配置如下:144M时钟配置如下:3.配置SYSDubug: 应该是选择调试的方式,但是我没有选择,也可以使用SWD调试,
FatFs介绍 FatFs 是面向小型嵌入式系统的一种通用的 FAT 文件系统。 它完全是由 ANSI C 语言编写并且完
全独立于底层的
I/O
介质。因此它可以很容易地不加修改地移植到其他的处理器当中,如
8051
、 PIC
、
AVR
、
SH
、
Z80
、
H8
、
ARM
F103&BxCANbxCAN总体描述有一个增强的过滤机制来处理各种类型的报文此外,应用层任务需要更多CPU时间,因此报文接收所需的实时响应程度需要减轻。接收FIFO的方案允许,CPU花很长时间处理应用层任务而不会丢失报文。 构筑在底层CAN驱动程序上的高层协议软件,跟CAN控制器之间有高效的接口。BxCAN与CAN的区别?硬件结构:BxCAN是基本扩展CAN(Basic Extended
看完sd卡读写,我也忍不住自己试一试 使用spi1的时候,程序运行成功,但是当我尝试用spi2 的时候,一次一次的fail,现在总结发现本身错在这几个地方,其中也有一些地方是大家的普遍错误: 1,自己尝试硬件的时候,一定要把硬件先连接好,这个是基础保障,不能急
IIC简介 IIC物理层用软件模拟IIC时序一、空闲状态(初始化):SCL 和SDA都保持高电平二、开始信号 :SCL为高电平期间,SDA由高电平变为低电平。三、
芯片是stm32f407ve 软件 stm32cubemx5.3.0 和keil5 F4的RTC提供了日历时钟和两个可编程闹钟中断,一个周期性可编程唤醒标志。这样很方便设置系统时间,并不会像F1的RTC那样要自己计算年月日时分秒。F4的RTC是一个独立的BCD定时计数器,系统可以自动将月份天数补偿为28、29(闰年)、30、31天。并且还可以进行夏令时补偿。1、设置RCC RTC设备因为其独特的运
STM32有3中低功耗模式: 1)睡眠模式(CM3 内核停止,外设仍然运行) 2)停止模式(所有时钟都停止) 3)待机模式(1.8V 内核电源关闭) 在运行模式下,我们也可以通过降低系统时钟关闭 APB 和 AHB 总线上未被使用的外设的时钟来降低功耗。三种低功耗模式一览表见表 21.1.1 所示 在这三种模式中,最低功耗的属于第三种模式,即待机模式,最低只需要2uA的电流。停机模式是次低功耗的,
STM32F4 的定时器功能十分强大,有TIME1 和 TIME8 等高级定时器,也有 TIME2-TIME5,TIM9-TIM14 等通用定时器,还有 TIME6 和 TIME7 等基本定时器,总共达 14 个定时器之多。STM32F4 定时器分类(共14个):高级定时器:TIME1 、TIME8通用定时器: TIME2-TIME5,TIM9-TIM14基本定时器: TIME6 、 TIME7S
参考正点原子视频DMA简介DMA全称Direct Memory Access,即直接存储器访问DMA传输将数据从一个地址空间复制到另一个地址空间。当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场过程,通过硬件为RAM和IO设备开辟一条直接传输数据的通道,使得CPU的效率大大提高。作用:为CPU减负