一个关于STM32的DAC输出的遗忘点

news2024/11/13 14:27:49

 众所周知熟练使用HAL库可以帮你解决不少stm32的开发难题,但是是谁让你陷入了这些难题,别问。

如上图所示,正常初始化这个模块后生成代码如下图所示;

* DAC init function */
void MX_DAC_Init(void)
{

  /* USER CODE BEGIN DAC_Init 0 */

  /* USER CODE END DAC_Init 0 */

  DAC_ChannelConfTypeDef sConfig = {0};

  /* USER CODE BEGIN DAC_Init 1 */

  /* USER CODE END DAC_Init 1 */

  /** DAC Initialization
  */
  hdac.Instance = DAC;
  if (HAL_DAC_Init(&hdac) != HAL_OK)
  {
    Error_Handler();
  }

  /** DAC channel OUT1 config
  */
  sConfig.DAC_Trigger = DAC_TRIGGER_NONE;
  sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE;
  if (HAL_DAC_ConfigChannel(&hdac, &sConfig, DAC_CHANNEL_1) != HAL_OK)
  {
    Error_Handler();
  }
  /* USER CODE BEGIN DAC_Init 2 */

  /* USER CODE END DAC_Init 2 */

}

但在这种情况下我们直接使用HAL_DAC_SetValue函数来配置通道输出模拟信号是无效的,因为既没有使GPIO引脚进入模拟输出状态,也没有开启外设通道,解决方法是添加这些代码

  /* USER CODE BEGIN DAC_Init 0 */
  HAL_DAC_MspInit(&hdac);
  /* USER CODE END DAC_Init 0 */
  /* USER CODE BEGIN DAC_Init 2 */
   HAL_DAC_Start(&hdac,DAC_CHANNEL_1);
   HAL_DAC_Start(&hdac,DAC_CHANNEL_2);
  /* USER CODE END DAC_Init 2 */

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1935819.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【LabVIEW作业篇 - 3】:数组相加、for循环创建二位数组、数组练习(求最大最小值、平均值、中位数、提取范围内的数据、排序)

文章目录 数组相加for循环实现直接使用加函数 for循环创建二位数组数组练习 数组相加 要求:用两种方法实现两个数组相加 for循环实现 在前面板中分别创建两个数值类型的一维数组,并设置相应的值,然后在程序框图中创建一个for循环&#xff…

数据结构(Java):力扣牛客 二叉树面试OJ题(一)

👉 ​​​​​​目录 👈 1、题一:检查两棵树是否相同 1.1 思路分析 1.2 代码 2、题二:另一棵树的子树 2.1 思路分析 2.2 代码 3、题三:翻转二叉树 3.1 思路分析 3.2 代码 4、题四:判断树是否对称 …

小模型大突破!神经网络透视空间异质性,准确描述复杂地理现象

为推进 AI4S 的普适化,降低学术机构科研成果的传播壁垒,为更多行业学者、科技爱好者及产业单位提供交流平台,HyperAI超神经策划了「Meet AI4S」系列直播栏目, 邀请深耕 AI for Science 领域的科研人员或相关单位,以视频…

新时代多目标优化【数学建模】领域的极致探索——数学规划模型

目录 例1 1.问题重述 2.基本模型 变量定义: 目标函数: 约束条件: 3.模型分析与假设 4.模型求解 5.LINGO代码实现 6.结果解释 ​编辑 7.敏感性分析 8.结果解释 例2 奶制品的销售计划 1.问题重述 ​编辑 2.基本模型 3.模…

北京邮电大学,中央空调的分户计费系统

北京邮电大学 中央空调如何公平、公正、合理的收取费用,一直都是各建筑管理者的首要问题。北京邮电大学也面临着能源分配不公,学校管理者空调收费管理困难等问题。根据学校的具体情况,拓森为其制定了一套中央空调管理运营方案—无线中央空调…

jupyter学习笔记

简介 Jupyter Notebook是一个Web应用程序,它可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。 安装使用 前提:必须安装python 先升级pip至最新版本 pip3 install --upgrade pip安装jupyter notebook pi…

springboot的简单应用

Mvc与三层架构 创建Spring项目 勾选web和mabais框架 配置yml文件,这里创建spring项目默认生成的是propertise文件,但是properties文件的格式看起来没有yml文件一目了然。yml文件配置数据库还有映射mapper层的xml文件以及设置日志级别,比如map…

刚起步的家庭海外仓:涉及到的全部业务优化流程

对于家庭海外仓来说,最难的阶段应该就是刚起步的时候。对业务流程不熟悉,也没有客户积累,本身的预算又十分有限。 在这个情况下应该注意什么,怎样才能顺利的开展业务?今天我们就针对这个问题详细的梳理了一下家庭海外…

尚品汇-(二十一)

目录: (1)使用redis实现分布式锁 (2)优化之设置锁的过期时间 (3.)优化之UUID防误删 (4)优化之LUA脚本保证删除的原子性 (1)使用redis实现分布…

go语言编程 小试牛刀 goroutine和reflect知识点

(一)goroutine package _caseimport "fmt"// sum 函数计算整数切片 values 的总和,并将结果发送到 resultChan 通道中 func sum(values []int, resultChan chan int) {sum : 0for _, value : range values {sum value}resultChan…

HarmonyOS NEXT学习——@Styles、@Extend、stateStyles

Styles装饰器 定义组件重用样式 仅支持通用属性和通用事件不支持参数可以定义全局和组件内使用,全局使用需要加function // 全局 Styles function functionName() { ... }// 在组件内 Component struct FancyUse {Styles fancy() {.height(100)} }组件内Styles的优…

智能一体式闸门在灌区中的应用

在现代化的农业灌溉领域,智能一体式闸门作为一种集自动化、智能化、高效能于一体的先进设备,正逐渐在灌区管理中发挥着重要作用。 灌区是农业生产的重要基地,其水资源的管理和利用直接关系到农作物的生长和产量。然而,传统的闸门管…

旋转中的图片视觉差效果

Hello,亲爱的宝子们?最近我一个前端架构师却临时顶替产品经理的工作,导致最近一周实在太忙了,都没有来得及更新文章。在这里想大家道歉了!也想厚颜无耻的问问大家想我了吗?(●◡●) 今天给大家带来一个非常…

Vue 使用 Element UI 组件库

https://andi.cn/page/621589.html

RAG介绍

一,RAG概述 RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合了信息检索与生成任务的技术,它通过将外部知识库与大模型的生成能力相结合,提高了生成内容的准确性和丰富性。以下是关于RAG应用的…

【产品那些事】固件安全-关于OTA升级包分析

文章目录 前言什么是OTA?升级包(固件)的类型和架构案例tp-link路由器升级包怎么解包分析?binwalk安装及使用ubi_reader安装及使用unsquashfs安装及使用某车企OTA升级包通用Android OTA解包相关分区第二层解包前言 什么是OTA? OTA(Over-the-Air)是一种通过无线通信网络(…

go的Mutex实现原理及演进

下面的这个是对于昨天晚上读的几篇关于go中锁的文章知识点的总结 文章目录 1. 引言1.1 并发编程的挑战1.2 Mutex 的角色1.3 Mutex 设计的演进1.4 技术追求的美妙 引言部分详细解释引言部分注意点引言部分流程图 2. Mutex 架构演进2.1 初版 Mutex 设计2.2 性能优化 - 给新人机会…

【ffmpeg】一篇文章搞定YUV

文章目录 前言YUV是什么?YUV的用途YUV采样格式采样格式是什么YUV采样格式有哪些YUV采样格式的区别 YUV与RGBRGB 颜色空间YUV 颜色空间RGB 与 YUV 的比较RGB 转 YUV 公式YUV 转 RGB 公式注意事项 YVU数据计算通用公式4:4:4 采样格式4:2:2 采样格式4:2:0 采样格式实例…

win10删除鼠标右键选项

鼠标右键菜单时,发现里面的选项特别多,找一下属性,半天找不到。删除一些不常用的选项,让右键菜单变得干净整洁。 1、按下键盘上的“winR”组合按键,调出“运行”对话框,输入“regedit”命令,点击…

达梦数据库的系统视图v$rapply_log_task

达梦数据库的系统视图v$rapply_log_task 达梦数据库的V$RAPPLY_LOG_TASK视图是一个动态性能视图,主要用于在备库上查询。该视图需要在备库上查询(DMDSC 备库需要在控制节点(重演节点)上查询),用于查询备库…