【电机控制器】STC8H1K芯片——ADC电压采集
【电机控制器】STC8H1K芯片——ADC电压采集
文章目录
- @[TOC](文章目录)
- 前言
- 一、ADC
- 1.ADC初始化
- 1.ADC_CONTR
- 2.ADCCFG
- 3.ADCTIM
- 4.代码
- 2.ADC读取
- 1.ADC_RES、ADC_RESL
- 2.代码
- 3.VREF电压读取——MCU工作电压
- 1.MCU工作电压计算公式
- 2.代码
- 4.ADC被转换通道的输入电压读取
- 1.ADC被转换通道的输入电压计算公式
- 2.代码
- 二、实验——VREF——MCU工作电压
- 1.原理图
- 2.USB供电
- 3.锂电池供电
- 三、参考资料
- 总结
文章目录
- @[TOC](文章目录)
- 前言
- 一、ADC
- 1.ADC初始化
- 1.ADC_CONTR
- 2.ADCCFG
- 3.ADCTIM
- 4.代码
- 2.ADC读取
- 1.ADC_RES、ADC_RESL
- 2.代码
- 3.VREF电压读取——MCU工作电压
- 1.MCU工作电压计算公式
- 2.代码
- 4.ADC被转换通道的输入电压读取
- 1.ADC被转换通道的输入电压计算公式
- 2.代码
- 二、实验——VREF——MCU工作电压
- 1.原理图
- 2.USB供电
- 3.锂电池供电
- 三、参考资料
- 总结
前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、ADC
1.ADC初始化
1.ADC_CONTR


2.ADCCFG


3.ADCTIM


4.代码
void ADC_Init(void)
{ADCTIM=0X3F;ADCCFG=0X2F;ADC_CONTR=0X80;
}
2.ADC读取
1.ADC_RES、ADC_RESL

2.代码
unsigned int ADC_Read(int channel)
{ADC_RES=0;ADC_RESL=0;ADC_CONTR=(ADC_CONTR&0XF0)|0X40|channel;_nop_();_nop_();_nop_();_nop_();while((ADC_CONTR&0X20)==0);ADC_CONTR&=~0X20;return ((unsigned int)ADC_RES<<8|ADC_RESL);
}
3.VREF电压读取——MCU工作电压
1.MCU工作电压计算公式


2.代码
unsigned int VREF_GetValtage(void)
{unsigned int res;unsigned char i;float Valtage_VREF;ADC_Read(ADC_CHANEEL_15);ADC_Read(ADC_CHANEEL_15);res=0;Valtage_VREF=0.00;for(i=0;i<8;i++){res+=ADC_Read(ADC_CHANNEL_15);}res>>=3;Valtage_VREF=(ADC_10BIT*ADC_BGV/res);return (unsigned int)(Valtage_VREF*ADC_GAIN);
}
4.ADC被转换通道的输入电压读取
1.ADC被转换通道的输入电压计算公式

2.代码
unsigned int OverLoad_GetValtage(void)
{unsigned int res;unsigned char i;unsigned int adcvin;float Valtage_Overload;ADC_Read(ADC_CHANNEL_10);ADC_Read(ADC_CHANNEL_10);res=0;Valtage_Overload=0.00;for(i=0;i<8;i++){res+=ADC_Read(ADC_CHANNEL_10);}res>>=3;adcvin=VREF_GetValtage();Valtage_Overload=(adcvin*res/ADC_10BIT);return (unsigned int)(Valtage_Overload);
}
二、实验——VREF——MCU工作电压
1.原理图


2.USB供电


3.锂电池供电


三、参考资料
STC8H1K08-36I-TSSOP20-规格书.PDF
STC8H单片机利用 ADC 第 15 通道测量外部电压或电池电压
51单片机——串口通信(发送和接受数据)
STC单片机基于Keil平台在线调试仿真
printf函数在Keil 开发C51单片机当中的使用细节
总结
本文仅仅简单介绍了【电机控制器】STC8H1K芯片——ADC电压采集,评论区欢迎讨论。
相关文章:
【电机控制器】STC8H1K芯片——ADC电压采集
【电机控制器】STC8H1K芯片——ADC电压采集 文章目录 [TOC](文章目录) 前言一、ADC1.ADC初始化1.ADC_CONTR2.ADCCFG3.ADCTIM4.代码 2.ADC读取1.ADC_RES、ADC_RESL2.代码 3.VREF电压读取——MCU工作电压1.MCU工作电压计算公式2.代码 4.ADC被转换通道的输入电压读取1.ADC被转换通…...
图像格式中的 stride 和 pix stide
最近发现media codec 解码后 yuv 的拷贝时间很大,进一步分析后发现底层会一个像素一个像素拷贝,非常花时间。用过调整解码后图像的Stride(步幅)后直接进行内存块拷贝,可以大幅缩短拷贝时间 在YUV图像格式中,…...
传统POE供电P1摄像头实现
首先,我们来了解一下什么是poe供电?poe供电是一种通过网络线(通常为网线)传输电能的技术。这种技术可以省去马达、插头等传统供电设备,以及不需要另外的电源延长线,从而实现方便的供电。 那么,…...
云计算基础:AWS入门指南
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 云计算基础:AWS入门指南 云计算基础:AWS入门指南 云计算基础:AWS入门指南 引言 AWS概述 什么…...
pytorch torch.tile用法
指定各维度分别重复多少次 tile 是 PyTorch 中用于重复张量的函数。它可以沿指定的维度重复张量的元素。以下是一个示例代码,展示 tile 的用法: import torch# 创建一个张量 weight_hh torch.tensor([[1, 2], [3, 4]])# 假设批量大小为3 bs 3# 使用 …...
实战项目:通过自我学习让AI学习五子棋 - 1 - 项目定义
项目介绍 五子棋是一种博弈游戏。在棋盘上黑子和白子交替落子,先于在任何方向上将至少五个棋子连在一起的一方获胜。在我们这个项目中我们尝试使用自学习的方法训练出一套走五子棋的算法。 这个项目本身并无特别大的实用价值。我们的目的在于: 尝试自…...
统信UOS开发环境支持Electron
全面支持Electron开发环境,同时还提供了丰富的开发工具和开发资源,进一步提升工作效率。 文章目录 一、环境部署1. Electron应用开发介绍2. Electron开发环境安装安装Node.js和npm安装electron环境配置二、代码示例Electron开发案例三、常见问题一、环境部署 1. Electron应用…...
2024.11.09【BUG报错】| Fastuniq “Error in Reading pair-end FASTQ sequence!”解决方案
解决 Fastuniq 中“Error in Reading pair-end FASTQ sequence!”报错的指南 在使用 Fastuniq 进行高通量测序数据分析时,用户可能会遇到“Error in Reading pair-end FASTQ sequence!”的错误提示。这通常表明在读取配对的 FASTQ 序列时出现了问题。以下是一些可能…...
k8s组件原理
文章目录 1、kubernetes控制平面组件1、kube-apiserver2、etcd3、controller-manager4、schedule 2、node组件1、kubelet2、container runtime3、kube-proxy 3、附加组件1、kubedns2、dashboard 4、创建pod的原理 1、kubernetes控制平面组件 1、kube-apiserver 是公开kubernete…...
0基础跟德姆(dom)一起学AI 深度学习02-Pytorch基本使用
1 基本介绍 (1)什么是Pytorch? PyTorch是一个开源机器学习和深度学习框架。PyTorch 允许您使用 Python 代码操作和处理数据并编写深度学习算法,能够在强大的GPU加速基础上实现张量和动态神经网络。 PyTorch是一个基于 Python 的科学计算包…...
九州未来再度入选2024边缘计算TOP100
随着数智化转型的浪潮不断高涨,边缘计算作为推动各行业智能化升级的重要基石,正在成为支持万物智能化的关键点。近日,德本咨询(DBC)联合《互联网周刊》(CIW)与中国社会科学院信息化研究中心(CIS),共同发布《2024边缘计算TOP100》榜…...
《物理化学学报》
《物理化学学报》主要刊载化学学科物理化学领域具有原创性实验和基础理论研究类文章。《物理化学学报》的办刊宗旨是引领物理化学前沿、服务国家战略需求,坚持正确的办刊方针,以促进学术交流及本学科发展为已任,为发现和培养科技人才服务&…...
【数据集】【YOLO】【目标检测】树木倒塌识别数据集 9957 张,YOLO道路树木断裂识别算法实战训练教程!
一、数据集介绍 【数据集】树木倒塌识别数据集 9957 张,目标检测,包含YOLO/VOC格式标注。 数据集中包含2种分类:{0: fallen_tree},代表倒塌或者断裂的树木。 数据集来自国内外图片网站和视频截图; 可用于无人机树木…...
iOS 18.2 六大新功能外媒實測|ChatGPT進化版SIRI、自製Genmoji
iOS 18.2 測試版再次帶來備受矚目的功能,當中包括 Image Playground、Genmoji,以及很多果迷都期待已久的 Siri與ChatGPT 的整合。外媒實測這些新功能的實際效果和操作體驗,發現當中有不少令人滿意的地方。 1)Image Playground-圖像…...
简单介绍一下mvvm mvc mvp以及区别、历史
MVC(Model - View - Controller) 因MVC架构的灵活性,架构图形式很多,仅供参考 历史: MVC 是最早出现的软件架构模式之一,其历史可以追溯到 20 世纪 70 年代,最初被用于 Smalltalk - 80 环境。…...
达梦8-达梦数据实时同步软件(DMHS)配置-Oracle-DM8
1、安装环境 源端目的端IP地址192.168.6.111192.168.6.110系统版本Red Hat 6.4Kylin v10数据库版本Oracle11g达梦 v8系统用户Oracledmdba字符集MERICAN_AMERICA.AL32UTF8UTF-8端口15215236实例名PRODDMSERVER数据库软件目录/u01/app/oracle/opt/dmdbmsDMHS安装目录/u01/dmhs/o…...
mysql常见死锁的分析
概念: 死锁是指两个或多个事务在数据库操作过程中相互等待对方释放资源,而导致无法继续执行的现象。在 MySQL 中,死锁是较为常见的问题,特别是在高并发环境中。 一、识别死锁 当 MySQL 检测到死锁时,会自动中止其中一个事务&am…...
Go Energy 跨平台(GUI)应用编译和安装包制作
构建打包 energy cli 平台介绍描述windowNSIS安装包制作工具可通过 energy cli 安装linuxdpkg 命令系统自带macosenergy 仅生成 xxx.app系统自带 安装包制作 config/energy_[os].json是初始化应用时自动生成的应用配置文件,在编译和制作应用安装包时使用 Windows…...
众测遇到的一些案列漏洞
文章中涉及的敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打码处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行…...
大华乐橙设备私有平台EasyCVR视频设备轨迹回放平台支持哪些摄像机?摄像机如何选型?
在现代安全监控系统中,视频监控设备扮演着至关重要的角色。视频设备轨迹回放平台EasyCVR以其卓越的兼容性和灵活性,支持接入多种品牌和类型的摄像机。这不仅为用户提供了广泛的选择空间,也使得视频监控系统的构建和管理变得更加高效和便捷。本…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
网络编程(UDP编程)
思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...
SpringAI实战:ChatModel智能对话全解
一、引言:Spring AI 与 Chat Model 的核心价值 🚀 在 Java 生态中集成大模型能力,Spring AI 提供了高效的解决方案 🤖。其中 Chat Model 作为核心交互组件,通过标准化接口简化了与大语言模型(LLM࿰…...
