实验目的:通过STM32Cube MX来快速配置对SD卡的使用 实验芯片:STM32F407 1、通过SDIO的通讯方式可以对SD卡进行读写操作,此次需要将采集的数据放置入SD卡中,通过文件管理系统对文件进行创建和读取。 2、STM32Cube MX中的配置SDIO的配置: SDIOXLK clovk divide factor参数的选择与晶振有关,若出现后续挂载不成功等问题时,可以增加分频系数,
#嵌入式# #STM32HAL库# #CubeMX#嵌入式-STM32-CubeMX系列教程–首篇1.自述 首先简单介绍下我自己,目前大四在某公司从事嵌入式STM32单片机的开发实习工作,最终目 标是想转到Linux驱动方向,下一步准备往Linux应用方向学习,有从事相关行业的大佬或者学这 个专业的大佬求分享下学习计划啥的,感谢。 嗯,同时我也是稚晖君的忠实粉丝,大三期间复刻过稚晖君的HoloCu
SD卡读写前言材料SD卡SD卡简介SD管脚简介SDIO介绍原理图工程配置时钟树基本信息指示灯和串口SDIO配置进入代码一些源码及分析main函数下载验证失败可能原因结语 前言其实STM32CubeMX这款软件本身只是一个工具,它可以让我们更方便地去开发STM32,让我们更少地去关注硬件底层的关联,但这并不代表着底层硬件就不再重要了。一个优秀的嵌入式工程师往往不仅仅是关注着自己的程序是否实现基本功
STM32CubeMx软件是ST公司为STM32系列单片机快速建立工程,并快速初始化使用到的外设、GPIO等,大大缩短了我们的开发时间。同时,软件不仅能配置STM32外设,还能进行第三方软件系统的配置,例如FreeRtos、FAT32、LWIP等等,而且还有一个功能,就是可以用它进行功耗预估,还有,这款软件可以输出PDF、TXT文档,显示你工程里面的GPIO等外设的配置信息,供你进行原理图设计等。
转载 2024-07-12 00:24:23
68阅读
文章背景 笔者最近使用沁恒CH32V307处理器进行应用开发,基于RT Thread实时操作系统和LWIP做TCP和CAN的透传。因为官方BSP并没有适配RT Thread的CAN驱动,暂时将RT Thread作为普通实时系统使用,先不对CAN外设进行系统抽象。但写完调试程序后发现中断只能进入一次,遂开始研究解决,将解决过程撰文记录,供后来人参考。解决方法 先不过多的说废话,直接贴上解决方案,由于
关键词:DMA、sync、async、SIGIO、F_SETSIG。 DMA本身用于减轻CPU负担,进行CPU off-load搬运工作。在DMA驱动内部实现有同步和异步模式,异步模式使用dma_async_issue_pending(),然后在callback()中发送SIGIO信号,用户空间收到SIGIO进行handler处理视为一个周期完成。同步模式,采用dma_sync_wait
转载 6月前
70阅读
文章目录1、配置嘀嗒定时器2、hal库中的延时函数3、使用SysTick来实现us延时4、测试延时效果5、cubemx版本问题不同中断优先级变化7、中断优先级的问题8、嘀嗒定时器的执行 系统嘀嗒定时器是存在于所有m3内核中的一个外设,但是m3内核的其他定时器数量却不一,因此一般使用系统嘀嗒定时器作为系统时基,这样也方便在不同芯片中RTOS的移植。1、配置嘀嗒定时器在cubemx的图形页面可以很方
功能实现:采用定时器PWM功能实现呼吸灯的功能,PWM频率为1KHz,呼吸灯周期为5s准备工作:1、STM32开发板(我的是STM32F103C8)2、STM32CubeMx软件、 IDE: Keil软件什么是PWM 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛
1、添加SD卡SPI模式驱动STM32CubeMX配置SPI模式/** * @brief SPI1 Initialization Function * @param None * @retval None */ static void MX_SPI1_Init(void) { /* USER CODE BEGIN SPI1_Init 0 */ /* USER CODE E
                         关于STM32 SPI NSS问题的探讨。      对于S
定时器详细介绍(基于标准库的,原理部分可参考1. 定时器中断配置 配置参考  使用内部时钟:internal clock,其它默认 定时器计数值更新时间:   T为定时时间,Psc为预分频数,Arr为自动重装载寄存器的值,Tclk为定时器的输入时钟。这里为T为1s,Tclk为72MHz,设置Psc为7200-1,Arr为10000-1。自动重载值。
1. 定时器基础1.1 Counter SettingsPrescaler(16bit)分频值:将定时器之中频率分频。Counter Period : 周期计数值,按照分频后的时间进行计数。1.2 Channel InitMode :模式选择1)Mode = Toggele on match(即定时器ARR寄存器周期计数值溢出就翻转电平)Pulse : 电平跳变值。通过定时器计数,计数到Pulse
转载 2024-07-11 14:04:52
163阅读
还没有用过STM32的SPI功能, 所以想尝试着做做看.以前做串口通信都是用中断方式做的, 所以做SPI通信, 首先想到的就是用中断方式做, 网上有一些例程, 但是好像也有没有解释的很清楚的, 至少我没有理解.以下我将从自己的认知来写一下, 大神绕过, 小白可以看看, 来看看是否有你自己的盲点, 本文也只是描述我自己碰到的问题的点, 不包含整个代码.1. 关于GPIO口模式的设置输出口没有什么可说
CubeMX配置STM32并驱动0.96寸OLED 一、使用CubeMX进行基础的配置1、配置时钟 这里的时钟我试了一下,设置为72MHZ和32MHZ好像对IIC的影响区别不是很大,这个就看个人吧。1、配置IIC 在这里只需要选择需要用的IICX就可以了。因为我使用的是C8T6,所以使用了IIC2就无法再使用USART3了。 然后选择IIC speed MODE为高速模式(其实选择标准模式也可以用
转载 2024-07-17 22:03:01
194阅读
STM32H7系列芯片不像F4系列,其通过FMC来驱动TFTLCD需要先配置MPU,这个步骤是必要的,然后是配置FMC的相关设置,最后生成对应代码,同时将自己的LCD代码嵌入其中,就可以实现对TFTLCD的显示控制!!第一步:在如下的配置框中对MPU进行配置!! 图上为什么基地址是0X60000000?请看下图, 上面两个图可以看到,块1才是用于设置F
前言前面提到,要想使用DMA首先要配置DMA废话不多说,直接上代码吧typedef struct { //源地址高8位 unsigned char SRCADDRH; //源地址低8位 unsigned char SRCADDRL; //目的地址高8位 unsigned char DESTADDRH; //目的地址低8位 unsigned char DES
SMT32CubeMx安装详解 文章目录SMT32CubeMx安装详解前言一、准备工作二、CubeMax安装三、工程参数配置总结 前言记录CubeMax软件安装和相关工程配置的简单操作一、准备工作在我们进行软件安装之前首先将我们需要用到的各类软件下好,安装包链接放下面了需要的自行下载哈。链接: https://pan.baidu.com/s/1a0Cgyxxq0MCX6kNFA7ClCQ 提取码:
工具【STM32CubeMX官网下载地址】 【STM32CubeProg官网下载地址】安装JRE由于STM32CubeMX和STM32CubeProg是基于java环境运行,所以要安装JRE配置Java环境,由于我的电脑之前安装eclipse时已经配置过java环境,所以没有做JRE安装教程,具体教程可去网上找一下。(一定要先安装JRE!!!!!)STM32CubeMX下载安装1.点击上述链接进入
转载 2024-04-29 09:55:39
110阅读
这节主要是GPIO的应用 包括点亮led灯和数码管使用。使用CubeMax进行配置使用keil5编写代码。应用效果演示 链接GPIO介绍General Purpose Input Output (通用输入/输出)简称为GPIO 许多设备或电路只要求有开/关两种状态就够了,比如LED的亮与灭。对这些设备的控制,在嵌入式微处理器上通常提供了一种“通用可编程I/O端口”,也就是GPIO。对GPIO的配置
使用CUDA写一个矩阵乘法C = A X B(矩阵维度:A: M X K, B: K X N, C: M X N),当然可以自己写核函数,但效率不如CUDA自带的cublas算法效率高。使用cublas唯一值得注意的地方是,在CPU中的矩阵数据存储是行优先存储,而在GPU中是列优先存储,这相当于对原矩阵做了一次转置,我们知道矩阵的两次转置等于原矩阵,要让最后的结果正确,在GPU中计算要使用:TC
  • 1
  • 2
  • 3
  • 4
  • 5