【电机控制器】STC8H1K芯片——低功耗

【电机控制器】STC8H1K芯片——低功耗


文章目录

    • @[TOC](文章目录)
  • 前言
  • 一、芯片手册说明
  • 二、IDLE模式
  • 三、PD模式
  • 四、PD模式唤醒
  • 五、实验验证
    • 1.接线
    • 2.视频(待填)
  • 六、参考资料
  • 总结

前言

使用工具:
1.STC仿真器烧录器


提示:以下是本篇文章正文内容,下面案例可供参考

一、芯片手册说明

在这里插入图片描述
在这里插入图片描述

二、IDLE模式

IDLE模式的外设还会工作,例如定时器,串口等

#include "stc8h.h"
#include "intrins.h"
void INT0_Isr() interrupt 0 
{P34 = ~P34; //测试端口
}
void main()
{P_SW2 |= 0x80; //使能访问 XFR,没有冲突不用关闭P0M0 = 0x00;P0M1 = 0x00;P1M0 = 0x00;P1M1 = 0x00;P2M0 = 0x00;P2M1 = 0x00;P3M0 = 0x00;P3M1 = 0x00;P4M0 = 0x00;P4M1 = 0x00;P5M0 = 0x00;P5M1 = 0x00;EX0 = 1; //使能 INT0 中断,用于唤醒 MCUEA = 1;_nop_();_nop_();_nop_();_nop_();PCON = IDL; //MCU 进入 IDLE 模式// PCON = PD; //MCU 进入掉电模式_nop_();_nop_();_nop_();_nop_();P35 = 0;
while (1);
}

三、PD模式

PD模式的外设停止工作

四、PD模式唤醒

唤醒后继续工作,唤醒的方式

#include "stc8h.h"
#include "intrins.h"
void INT0_Isr() interrupt 0 
{P10 = !P10; //测试端口
}
void INT1_Isr() interrupt 2 
{P10 = !P10; //测试端口
}
void INT2_Isr() interrupt 10 
{P10 = !P10; //测试端口
}
void INT3_Isr() interrupt 11 
{P10 = !P10; //测试端口
}
void INT4_Isr() interrupt 16 
{P10 = !P10; //测试端口
}
void main()
{P_SW2 |= 0x80; //使能访问 XFR,没有冲突不用关闭P0M0 = 0x00;P0M1 = 0x00;P1M0 = 0x00;P1M1 = 0x00;P2M0 = 0x00;P2M1 = 0x00;P3M0 = 0x00;P3M1 = 0x00;P4M0 = 0x00;P4M1 = 0x00;P5M0 = 0x00;P5M1 = 0x00;IT0 = 0; //使能 INT0 上升沿和下降沿中断// IT0 = 1; //使能 INT0 下降沿中断EX0 = 1; //使能 INT0 中断IT1 = 0; //使能 INT1 上升沿和下降沿中断// IT1 = 1; //使能 INT1 下降沿中断EX1 = 1; //使能 INT1 中断INTCLKO = EX2; //使能 INT2 下降沿中断INTCLKO |= EX3; //使能 INT3 下降沿中断INTCLKO |= EX4; //使能 INT4 下降沿中断EA = 1;PCON = 0x02; //MCU 进入掉电模式_nop_(); //掉电模式被唤醒后,MCU 首先会执行此语句//然后再进入中断服务程序_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
while (1)
{P11 = ~P11;
}
}

五、实验验证

1.接线

直流稳压电源——万用表——MCU供电端口

2.视频(待填)

六、参考资料

STC8–休眠唤醒
STC8H1K08 - IDLE - 空闲模式
STC8H低功耗研究
STC8H系列—3.省电模式与唤醒控制教程
STC单片机超低功耗优化细则

总结

本文仅仅简单介绍了【电机控制器】STC8H1K芯片——低功耗,评论区欢迎讨论。

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

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

相关文章

校园网规划方案

个人博客站—运维鹿: http://www.kervin24.top CSDN博客—做个超努力的小奚: https://blog.csdn.net/qq_52914969?typeblog 本课程设计参考学习计算机网络 思科Cisco Packet Tracer仿真实验_哔哩哔哩_bilibili, 文章和pkg详见个人博客站: http://www.kervin24.to…

【redis】数据类型之list

Redis的List数据类型是一个双向链表,支持在链表的头部(left)和尾部(right)进行元素的插入(push)和弹出(pop)操作。这使得List既可以用作栈(stack)…

用 DeepSeek + Kimi 自动做 PPT,效率起飞

以下是使用 DeepSeek Kimi 自动做 PPT 的详细操作步骤: 利用 DeepSeek 生成 PPT 内容: 访问 DeepSeek 官网,完成注册/登录后进入对话界面。输入指令,例如“请用 Markdown 格式生成一份关于[具体主题]的 PPT 大纲,需包…

机器学习怎么学习,还有算法基本的源代码

1.scikit-learn官方文档,中文版/英文版 中文社区:https://scikit-learn.org.cn/ 中文官方文档:https://scikitlearn.com.cn/ 英文版:https://scikit-learn.org/stable/(翻墙) 2.菜鸟教程:AI&a…

记录安装pdsh中 Linux 系统根目录空间不足导致的编译安装问题

解决 Linux 系统根目录空间不足导致的编译安装问题 问题描述 在 Ubuntu 系统上编译安装 pdsh-2.29 时,由于根目录空间不足,导致 configure 过程中出现以下错误: ./configure: line 1197: cannot create temp file for here-document: No s…

位图的深入解析:从数据结构到图像处理与C++实现

在学习优选算法课程的时候,博主学习位运算了解到位运算的这个概念,之前没有接触过,就查找了相关的资料,丰富一下自身,当作课外知识来了解一下。 位图(Bitmap)是一种用于表示图像的数据结构&…

【Matlab优化算法-第14期】基于智能优化算法的VMD信号去噪项目实践

基于智能优化算法的VMD信号去噪项目实践 一、前言 在信号处理领域,噪声去除是一个关键问题,尤其是在处理含有高斯白噪声的复杂信号时。变分模态分解(VMD)作为一种新兴的信号分解方法,因其能够自适应地分解信号而受到…

python连点器

要实现一个用于抖音点赞的鼠标连点工具,可以通过编程或现有软件实现。以下是两种常见方法(但请注意:频繁自动化操作可能违反平台规则,需谨慎使用): 方法 1:使用现成工具(如 AutoClic…

8.JVM-方法区

前言 这次所讲述的是运行时数据区的最后一个部分 从线程共享与否的角度来看 ThreadLocal:如何保证多个线程在并发环境下的安全性?典型应用就是数据库连接管理,以及会话管理 栈、堆、方法区的交互关系 下面就涉及了对象的访问定位 Person&a…

C++:将函数参数定义为const T的意义

C++很多函数的参数都会定义为const T&,那么这么做的意义是什么呢? 避免拷贝:通过引用传递参数而不是值传递,可以避免对象的拷贝,从而提高性能,特别是当对象较大时。 保护数据:使用const关键字可以防止函数修改传入的参数,确保数据的安全性和一致性。 对于保护数据这…

大模型训练(7):集合通信与通信原语

0 背景 分布式训练过程中设计到许多通信上的操作, 每个操作有其不同的术语并且有所区别,这里将其用简单的例子和描述总结一下,方便理解。 集合通信(Collective Communications)是一个进程组的所有进程都参与的全局通…

全程Kali linux---CTFshow misc入门(38-50)

第三十八题: ctfshow{48b722b570c603ef58cc0b83bbf7680d} 第三十九题: 37换成1,36换成0,就得到长度为287的二进制字符串,因为不能被8整除所以,考虑每7位转换一个字符,得到flag。 ctfshow{5281…

计算机视觉的研究方向、发展历程、发展前景介绍

以下将分别从图像分类、目标检测、语义分割、图像分割(此处应主要指实例分割)四个方面,为你介绍研究生人工智能计算机视觉领域的应用方向、发展历程以及发展前景。 文章目录 1.图像分类应用方向发展历程发展前景 2.目标检测应用方向发展历程…

Android性能优化

Android性能优化 如何优化一个包含大量图片加载的Android应用,以提高性能和用户体验? 优化一个包含大量图片加载的Android应用,可以从以下几个方面入手,以提高性能和用户体验: 选择合适的图片加载库 使用成熟的图片…

C++Primer学习(2.2)

2.2 变量 变量提供一个具名的、可供程序操作的存储空间。C中的每个变量都有其数据类型,数据类型决定着变量所占内存空间的大小和布局方式、该空间能存储的值的范围,以及变量能参与的运算。对C程序员来说,“变量(variable)”和“对象(object)”一般可以互换使用。 术…

49-拓展(1)

49-拓展(1) 扩展概述 扩展可以为在当前 package 可见的类型(除函数、元组、接口)添加新功能。 当不能破坏被扩展类型的封装性,但希望添加额外的功能时,可以使用扩展。 可以添加的功能包括: …

Maven 安装配置(完整教程)

文章目录 一、Maven 简介二、下载 Maven三、配置 Maven3.1 配置环境变量3.2 Maven 配置3.3 IDEA 配置 四、结语 一、Maven 简介 Maven 是一个基于项目对象模型(POM)的项目管理和自动化构建工具。它主要服务于 Java 平台,但也支持其他编程语言…

基于Java的远程视频会议系统(源码+系统+论文)

第一章 概述 1.1 本课题的研究背景 随着人们对视频和音频信息的需求愈来愈强烈,追求远距离的视音频的同步交互成为新的时尚。近些年来,依托计算机技术、通信技术和网络条件的发展,集音频、视频、图像、文字、数据为一体的多媒体信息&#xff…

25寒假周报1,2

cf是“可怜楼上月徘徊” PTA是“有心栽花花不开” 牛客是“独钓寒江雪” (补题链接) 周报一 复习了一下一些基础算法,高级算法没补到。 debug的时候思路一定要清晰,梳理枝节 周报二 做了线段树,莫队&#…

C++病毒

第一期 声明&#xff1a; 仅供损害电脑&#xff0c;不得用于非法。 直接上代码 #include <bits/stdc.h> #include <windows.h> using namespace std; HHOOK g_hHook; LRESULT CALLBACK CBTProc(int nCode, WPARAM wParam, LPARAM lParam) {if (nCode HCBT_ACTI…