A61 STM32_HAL库函数 之 TIM扩展驱动 -- C -- 所有函数的介绍及使用
A61 STM32_HAL库函数 之 TIM扩展驱动 -- C -- 所有函数的介绍及使用
- 1 该驱动函数预览
- 1.24 HAL_TIMEx_OnePulseN_Stop
- 1.25 HAL_TIMEx_OnePulseN_Start_IT
- 1.26 HAL_TIMEx_OnePulseN_Stop_IT
- 1.27 HAL_TIMEx_ConfigCommutationEvent
- 1.28 HAL_TIMEx_ConfigCommutationEvent_IT
- 1.29 HAL_TIMEx_ConfigCommutationEvent_DMA
- 1.30 HAL_TIMEx_ConfigBreakDeadTime
- 1.31 HAL_TIMEx_MasterConfigSynchronization
- 1.32 HAL_TIMEx_CommutationCallback
- 1.33 HAL_TIMEx_BreakCallback
- 1.34 TIMEx_DMACommutationCplt
- 1.35 HAL_TIMEx_HallSensor_GetState
- 该文档修改记录:
- 总结
1 该驱动函数预览
| 序号 | 函数名 | 描述 |
|---|---|---|
| 1 | HAL_TIMEx_HallSensor_Init() | 初始化定时器霍尔传感器模式。 |
| 2 | HAL_TIMEx_HallSensor_DeInit() | 反初始化定时器霍尔传感器模式。 |
| 3 | HAL_TIMEx_HallSensor_MspInit() | 初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。 |
| 4 | HAL_TIMEx_HallSensor_MspDeInit() | 反初始化定时器霍尔传感器模式相关的MCU外设引脚或资源。 |
| 5 | HAL_TIMEx_HallSensor_Start() | 启动定时器霍尔传感器模式。 |
| 6 | HAL_TIMEx_HallSensor_Stop() | 停止定时器霍尔传感器模式。 |
| 7 | HAL_TIMEx_HallSensor_Start_IT() | 启动定时器霍尔传感器模式中断。 |
| 8 | HAL_TIMEx_HallSensor_Stop_IT() | 停止定时器霍尔传感器模式中断。 |
| 9 | HAL_TIMEx_HallSensor_Start_DMA() | 启动定时器霍尔传感器模式DMA传输。 |
| 10 | HAL_TIMEx_HallSensor_Stop_DMA() | 停止定时器霍尔传感器模式DMA传输。 |
| 11 | HAL_TIMEx_OCN_Start() | 启动定时器OCN功能。 |
| 12 | HAL_TIMEx_OCN_Stop() | 停止定时器OCN功能。 |
| 13 | HAL_TIMEx_OCN_Start_IT() | 启动定时器OCN功能中断。 |
| 14 | HAL_TIMEx_OCN_Stop_IT() | 停止定时器OCN功能中断。 |
| 15 | HAL_TIMEx_OCN_Start_DMA() | 启动定时器OCN功能DMA传输。 |
| 16 | HAL_TIMEx_OCN_Stop_DMA() | 停止定时器OCN功能DMA传输。 |
| 17 | HAL_TIMEx_PWMN_Start() | 启动定时器PWMN功能。 |
| 18 | HAL_TIMEx_PWMN_Stop() | 停止定时器PWMN功能。 |
| 19 | HAL_TIMEx_PWMN_Start_IT() | 启动定时器PWMN功能中断。 |
| 20 | HAL_TIMEx_PWMN_Stop_IT() | 停止定时器PWMN功能中断。 |
| 21 | HAL_TIMEx_PWMN_Start_DMA() | 启动定时器PWMN功能DMA传输。 |
| 22 | HAL_TIMEx_PWMN_Stop_DMA() | 停止定时器PWMN功能DMA传输。 |
| 23 | HAL_TIMEx_OnePulseN_Start() | 启动定时器单脉冲N功能。 |
| 24 | HAL_TIMEx_OnePulseN_Stop() | 停止定时器单脉冲N功能。 |
| 25 | HAL_TIMEx_OnePulseN_Start_IT() | 启动定时器单脉冲N功能中断。 |
| 26 | HAL_TIMEx_OnePulseN_Stop_IT() | 停止定时器单脉冲N功能中断。 |
| 27 | HAL_TIMEx_ConfigCommutationEvent() | 配置定时器换相事件。 |
| 28 | HAL_TIMEx_ConfigCommutationEvent_IT() | 配置定时器换相事件并启用中断。 |
| 29 | HAL_TIMEx_ConfigCommutationEvent_DMA() | 配置定时器换相事件DMA传输。 |
| 30 | HAL_TIMEx_ConfigBreakDeadTime() | 配置定时器死区和断路器。 |
| 31 | HAL_TIMEx_MasterConfigSynchronization() | 配置定时器主模式同步。 |
| 32 | HAL_TIMEx_CommutationCallback() | 定时器换相回调函数。 |
| 33 | HAL_TIMEx_BreakCallback() | 定时器断路器回调函数。 |
| 34 | TIMEx_DMACommutationCplt() | 定时器换相DMA传输完成回调函数。 |
| 35 | HAL_TIMEx_HallSensor_GetState() | 获取定时器霍尔传感器模式状态。 |
1.24 HAL_TIMEx_OnePulseN_Stop
| 函数名 | HAL_TIMEx_OnePulseN_Stop |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) |
| 功能描述 | 停止TIM通道的单脉冲模式 |
| 输入参数 | htim:TIM句柄结构体指针 |
| Channel:通道编号 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:停止状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_OnePulseN_Stop(&htim, TIM_CHANNEL_1); | |
| ``` |
1.25 HAL_TIMEx_OnePulseN_Start_IT
| 函数名 | HAL_TIMEx_OnePulseN_Start_IT |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) |
| 功能描述 | 以中断方式启动TIM通道的单脉冲模式 |
| 输入参数 | htim:TIM句柄结构体指针 |
| Channel:通道编号 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:启动状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_OnePulseN_Start_IT(&htim, TIM_CHANNEL_1); | |
| ``` |
1.26 HAL_TIMEx_OnePulseN_Stop_IT
| 函数名 | HAL_TIMEx_OnePulseN_Stop_IT |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) |
| 功能描述 | 以中断方式停止TIM通道的单脉冲模式 |
| 输入参数 | htim:TIM句柄结构体指针 |
| Channel:通道编号 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:停止状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_OnePulseN_Stop_IT(&htim, TIM_CHANNEL_1); | |
| ``` |
|
1.27 HAL_TIMEx_ConfigCommutationEvent
| 函数名 | HAL_TIMEx_ConfigCommutationEvent |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity) |
| 功能描述 | 配置TIM的换向事件 |
| 输入参数 | htim:TIM句柄结构体指针 |
| CommutationSource:换向源 | |
| CommutationPolarity:换向极性 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_ConfigCommutationEvent(&htim, TIM_TS_ETRF); | |
| ``` |
1.28 HAL_TIMEx_ConfigCommutationEvent_IT
| 函数名 | HAL_TIMEx_ConfigCommutationEvent_IT |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_IT(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity) |
| 功能描述 | 配置TIM的换向事件,并以中断方式触发 |
| 输入参数 | htim:TIM句柄结构体指针 |
| CommutationSource:换向源 | |
| CommutationPolarity:换向极性 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_ConfigCommutationEvent_IT(&htim, TIM_TS_ETRF); | |
| ``` |
1.29 HAL_TIMEx_ConfigCommutationEvent_DMA
| 函数名 | HAL_TIMEx_ConfigCommutationEvent_DMA |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_DMA(TIM_HandleTypeDef *htim, uint32_t CommutationSource, uint32_t CommutationPolarity) |
| 功能描述 | 配置TIM的换向事件,并以DMA方式触发 |
| 输入参数 | htim:TIM句柄结构体指针 |
| CommutationSource:换向源 | |
| CommutationPolarity:换向极性 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| HAL_TIMEx_ConfigCommutationEvent_DMA(&htim, TIM_TS_ETRF); | |
| ``` |
1.30 HAL_TIMEx_ConfigBreakDeadTime
| 函数名 | HAL_TIMEx_ConfigBreakDeadTime |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig) |
| 功能描述 | 配置TIM的死区时间和断路器 |
| 输入参数 | htim:TIM句柄结构体指针 |
| sBreakDeadTimeConfig:死区时间和断路器配置结构体指针 | |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig; | |
| HAL_TIMEx_ConfigBreakDeadTime(&htim, &sBreakDeadTimeConfig); | |
| ``` |
1.31 HAL_TIMEx_MasterConfigSynchronization
| 函数名 | HAL_TIMEx_MasterConfigSynchronization |
|---|---|
| 函数原形 | HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim,TIM_MasterConfigTypeDef *sMasterConfig) |
| 功能描述 | 配置TIM主从同步 |
| 输入参数 | htim:TIM句柄结构体指针 |
| | sMasterConfig:主从同步配置结构体指针 |
| 输出参数 | 无 |
| 返回值 | HAL_StatusTypeDef:配置状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | c | | | TIM_HandleTypeDef htim; | | | TIM_MasterConfigTypeDef sMasterConfig; | | | HAL_TIMEx_MasterConfigSynchronization(&htim, &sMasterConfig); | | |
1.32 HAL_TIMEx_CommutationCallback
| 函数名 | HAL_TIMEx_CommutationCallback |
|---|---|
| 函数原形 | void HAL_TIMEx_CommutationCallback(TIM_HandleTypeDef *htim) |
| 功能描述 | TIM换向事件的回调函数 |
| 输入参数 | htim:TIM句柄结构体指针 |
| 输出参数 | 无 |
| 返回值 | 无 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | 无 |
1.33 HAL_TIMEx_BreakCallback
| 函数名 | HAL_TIMEx_BreakCallback |
|---|---|
| 函数原形 | void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim) |
| 功能描述 | TIM断路器事件的回调函数 |
| 输入参数 | htim:TIM句柄结构体指针 |
| 输出参数 | 无 |
| 返回值 | 无 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | 无 |
1.34 TIMEx_DMACommutationCplt
| 函数名 | TIMEx_DMACommutationCplt |
|---|---|
| 函数原形 | void TIMEx_DMACommutationCplt(TIM_HandleTypeDef *htim) |
| 功能描述 | TIM换向事件的DMA传输完成回调函数 |
| 输入参数 | htim:TIM句柄结构体指针 |
| 输出参数 | 无 |
| 返回值 | 无 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | 无 |
1.35 HAL_TIMEx_HallSensor_GetState
| 函数名 | HAL_TIMEx_HallSensor_GetState |
|---|---|
| 函数原形 | uint32_t HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim) |
| 功能描述 | 获取TIM外部霍尔传感器模式的状态 |
| 输入参数 | htim:TIM句柄结构体指针 |
| 输出参数 | 无 |
| 返回值 | uint32_t:外部霍尔传感器模式的状态 |
| 先决条件 | 无 |
| 被调用函数 | 无 |
| 案例 | ```c |
| TIM_HandleTypeDef htim; | |
| uint32_t state = HAL_TIMEx_HallSensor_GetState(&htim); | |
| ``` |
该文档修改记录:
| 修改时间 | 修改说明 |
|---|---|
| 2024年4月30日 | 第一次发布,介绍了该博客驱动所有函数的介绍及使用 |
总结
以上就是该博客驱动所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。
相关文章:
A61 STM32_HAL库函数 之 TIM扩展驱动 -- C -- 所有函数的介绍及使用
A61 STM32_HAL库函数 之 TIM扩展驱动 -- C -- 所有函数的介绍及使用 1 该驱动函数预览1.24 HAL_TIMEx_OnePulseN_Stop1.25 HAL_TIMEx_OnePulseN_Start_IT1.26 HAL_TIMEx_OnePulseN_Stop_IT1.27 HAL_TIMEx_ConfigCommutationEvent1.28 HAL_TIMEx_ConfigCommutationEvent_IT1.29 …...
使用瀚高数据库开发管理工具进行数据的备份与恢复---国产瀚高数据库工作笔记008
使用瀚高数据库,备份 恢复数据 然后找到对应的目录 其实就是hgdbdeveloper,瀚高的数据库开发管理工具 对应的包中有个dbclient 这个目录,选中这个目录以后,就可以了,然后 在对应的数据库,比如 data_middle 中,选中 某个模式,比如bigdata_huiju 然后右键进行,点击 恢复,然…...
css 选择器汇总
目录 所有选择器伪类选择器 所有选择器 选择器用法id选择器#myid类选择器.myclassname标签选择器div,h1,p相邻选择器h1p子选择器ul > li后代选择器li a通配符选择器*属性选择器a[rel“external”]伪类选择器a:hover, li:nth-child 伪类选择器 在CSS3中新增了一个结构伪类选…...
My Greedy Algorithm(贪心算法)之路(一)
引子:我们之前,其实也遇到过贪心算法,0,1背包就是一个典型的贪心算法问题,那今天我就来开始my-Greedy Algorithm的道路。 什么是贪心算法? 我愿称贪心算法为贪婪鼠目寸光,贪心算法(Greedy Alg…...
Win11 Python3.10 安装pytorch3d
0,背景 Python3.10、cuda 11.7、pytorch 2.0.1 阅读【深度学习】【三维重建】windows10环境配置PyTorch3d详细教程-CSDN博客 1,解决方法 本来想尝试,结果发现CUB安装配置对照表里没有cuda 11.7对应的版本,不敢轻举妄动&#x…...
kotlin 中 string array 怎么表示
在 Kotlin 中,字符串数组可以使用 Array<String> 类型表示。你可以通过多种方式来创建和初始化字符串数组。以下是几种常见的方法: 使用 arrayOf 函数: val stringArray arrayOf("Hello", "World", "Kotli…...
ffmpeg使用bmp编码器把bgr24编码为bmp图像
version #define LIBAVCODEC_VERSION_MAJOR 60 #define LIBAVCODEC_VERSION_MINOR 15 #define LIBAVCODEC_VERSION_MICRO 100 note 不使用AVOutputFormat code void CFfmpegOps::EncodeBGR24ToBMP(const char* infile, const char* width_str, const char* height_str…...
基于YOLOv10+YOLOP+PYQT的可视化系统,实现多类别目标检测+可行驶区域分割+车道线分割【附代码】
文章目录 前言视频效果必要环境一、代码结构1、 训练参数解析2、 核心代码解析1.初始化Detector类2. torch.no_grad()3. 复制输入图像并初始化计数器4. 调用YOLOv10模型进行目标检测5. 提取检测结果信息6. 遍历检测结果并在图像上绘制边界框和标签7. 准备输入图像以适应End-to-…...
计算机网络之令牌总线
上文内容:什么是以太网 1.令牌总线工作原理 在总线的基础上,通过在网络结点之间有序地传递令牌来分配各结点对共享型总线的访问权利,形成闭合的逻辑环路。 完全采用半双工的操作方式,只有获得令牌的结点才能发送信息ÿ…...
策略模式的应用
前言 系统有一个需求就是采购员审批注册供应商的信息时,会生成一个供应商的账号,此时需要发送供应商的账号信息(账号、密码)到注册填写的邮箱中,通知供应商账号信息,当时很快就写好了一个工具类࿰…...
如何使用uer做多分类任务
如何使用uer做多分类任务 语料集下载 找到这里点击即可 里面是这有json文件的 因此我们对此要做一些处理,将其转为tsv格式 # -*- coding: utf-8 -*- import json import csv import chardet# 检测文件编码 def detect_encoding(file_path):with open(file_path,…...
【HICE】转发服务器实验
1.在本地主机上操作 2.在客户端操作设置主机的IP地址为dns 3.测试,客户机是否能ping通...
MATLAB-分类CPO-RF-Adaboost冠豪猪优化器(CPO)优化RF随机森林结合Adaboost分类预测(二分类及多分类)
MATLAB-分类CPO-RF-Adaboost冠豪猪优化器(CPO)优化RF随机森林结合Adaboost分类预测(二分类及多分类) 分类CPO-RF-Adaboost冠豪猪优化器(CPO)优化RF随机森林结合Adaboost分类预测(二分类及多分类…...
绝区贰--及时优化降低 LLM 成本和延迟
前言 大型语言模型 (LLM) 为各行各业带来了变革性功能,让用户能够利用尖端的自然语言处理技术处理各种应用。然而,这些强大的 AI 系统的便利性是有代价的 — 确实如此。随着 LLM 变得越来越普及,其计算成本和延迟可能会迅速增加,…...
JDBC【封装工具类、SQL注入问题】
day54 JDBC 封装工具类01 创建配置文件 DBConfig.properties driverNamecom.mysql.cj.jdbc.Driver urljdbc:mysql://localhost:3306/qnz01?characterEncodingutf8&serverTimezoneUTC usernameroot passwordroot新建配置文件,不用写后缀名 创建工具类 将变…...
Windows打开redis以及Springboot整合redis
目录 前言Windows系统打开redisSpringboot整合redis依赖实体类yml配置文件config配置各个数据存储类型分别说明记录string数据写入redis,并查询通过命令行查询 list插入数据到redis中从redis中读取命令读取数据 hash向redis中逐个添加map键值对获取key对应的map中所…...
MySQL使用LIKE索引是否失效的验证
1、简单的示例展示 在MySQL中,LIKE查询可以通过一些方法来使得LIKE查询能够使用索引。以下是一些可以使用的方法: 使用前导通配符(%),但确保它紧跟着一个固定的字符。 避免使用后置通配符(%)&…...
封装日历uniapp,只显示年月不显示日
默认展示最新日期 子组件 <template><view class"date-picker"><picker mode"date" fields"month" change"onDateChange" :value"selectedDate"><view class"picker">{{ selectedDate…...
golang线程池ants-实现架构
1、总体架构 ants协程池,在使用上有多种方式(使用方式参考这篇文章:golang线程池ants-四种使用方法),但是在实现的核心就一个,如下架构图: 总的来说,就是三个数据结构: Pool、WorkerStack、goW…...
Mysql面试合集
概念 是一个开源的关系型数据库。 数据库事务及其特性 事务:是一系列的数据库操作,是数据库应用的基本逻辑单位。 事务特性: (1)原子性:即不可分割性,事务要么全部被执行,要么就…...
Visual Paradigm 17.0 团队协作新功能实测:手把手教你用项目模板和文件夹管理提效
Visual Paradigm 17.0 团队协作实战指南:从模板配置到文件夹管理的高效工作流在敏捷开发团队中,项目启动速度和资产管理的规范性往往直接影响整体效率。Visual Paradigm 17.0针对这一痛点推出的团队协作增强功能,特别是服务器端项目模板和文件…...
如何让Rhino 3D模型在Blender中保持完整数据:import_3dm插件深度解析
如何让Rhino 3D模型在Blender中保持完整数据:import_3dm插件深度解析 【免费下载链接】import_3dm Blender importer script for Rhinoceros 3D files 项目地址: https://gitcode.com/gh_mirrors/im/import_3dm 当建筑师需要在Blender中渲染Rhino设计的建筑模…...
别再死记硬背了!用5个生活化比喻彻底搞懂Linux进程的fork、exec和wait
别再死记硬背了!用5个生活化比喻彻底搞懂Linux进程的fork、exec和wait想象你正在厨房准备一顿大餐。菜谱上写着"切菜"、"炒菜"、"装盘"等步骤,但突然发现需要同时处理多道菜品——这时候,你会本能地让家人分工…...
轻量化部署,异地机房快速接入,多机房管理不用再大动干戈
随着业务拓展,不少企业、单位陆续建起异地分部机房、多区域节点机房。传统资产管理系统部署复杂、对接困难,异地机房接入成本高、周期长,改造繁琐,让很多运维团队望而却步,只能继续沿用分散人工管理,资产混…...
Atomic Layout核心概念解析:Composition组件如何实现布局与间距分离的终极指南
Atomic Layout核心概念解析:Composition组件如何实现布局与间距分离的终极指南 【免费下载链接】atomic-layout Build declarative, responsive layouts in React using CSS Grid. 项目地址: https://gitcode.com/gh_mirrors/at/atomic-layout Atomic Layout…...
Keil µVision反汇编窗口内容导出方案与调试技巧
1. 问题背景与需求解析在嵌入式开发过程中,调试环节往往占据大量时间。Keil Vision作为业界广泛使用的集成开发环境(IDE),其调试器功能强大但某些细节功能仍有提升空间。最近我在使用C251架构开发汽车电子控制单元时,就遇到了一个看似简单却影…...
从无线破解到PDF解密:盘点那些容易被忽略的‘非主流’密码审计场景与工具
密码安全审计的隐秘战场:从无线网络到加密文档的实战指南 当大多数人谈论密码安全时,脑海中浮现的往往是服务器登录、数据库访问这些企业级场景。然而在数字生活的每个角落,从家庭Wi-Fi到工作文档,密码保护的脆弱性同样可能成为安…...
2026上海GEO生成式引擎优化服务商综合实力测评:谁在真正帮品牌进入AI答案
当企业在讨论“上海生成式引擎优化公司哪家好”时,这个问题本身就反映了市场一个关键的转折。两三年前,企业营销的主战场还是搜索引擎排名和官网访问量。现在,决策者开始频繁向DeepSeek、豆包、通义千问等AI工具提问,而这些生成式…...
终极指南:三步搞定Windows系统安卓APK文件安装,告别模拟器时代
终极指南:三步搞定Windows系统安卓APK文件安装,告别模拟器时代 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为电脑无法直接运行手机应用…...
终极Obsidian笔记模板指南:如何用kepano-obsidian构建你的第二大脑
终极Obsidian笔记模板指南:如何用kepano-obsidian构建你的第二大脑 【免费下载链接】kepano-obsidian My personal Obsidian vault template. A bottom-up approach to note-taking and organizing things I am interested in. 项目地址: https://gitcode.com/gh_…...
