LP-MSPM03507学习资料汇总

news2024/12/23 13:41:42

(因对MSPM0研究不够深入,故暂不开启浏览权限,权当记录学习。但愿尽快掌握供大家免费阅读。有意者可私信我共同学习)

一、延时函数

1、滴答定时器SYSTICK

1.1 SysConfig配置

配置1ms延时函数,并开启中断

7e037d9659a54420a91d2877343c0386.png

1.2 编写延时函数delay_ms

unsigned int utick = 0;//滴答定时器中断计数
void SysTick_Handler(void)
{
	SysTick->CTRL &= ~(1 << 16); /*清除滴答定时器中断标志位*/
	utick++;//滴答定时器中断计数
}

void delay_ms(unsigned int ms)
{
	unsigned int tick = utick;
	while(utick < (tick + ms));
}

1.3 调整代码优先等级

 3f1453fa85e449048abd23b3d29763af.png

1.4 代码填写

unsigned int utick = 0;//滴答定时器中断计数
void SysTick_Handler(void)
{
	SysTick->CTRL &= ~(1 << 16); /*清除滴答定时器中断标志位*/
	utick++;//滴答定时器中断计数
}

void delay_ms(unsigned int ms)
{
	unsigned int tick = utick;
	while(utick < (tick + ms));
}


int main(void)
{
    SYSCFG_DL_init();
	
    while (1) {
		DL_GPIO_clearPins(GPIO_GRP_0_PORT,GPIO_GRP_0_LED_PIN);
		delay_ms(500);
		DL_GPIO_setPins(GPIO_GRP_0_PORT,GPIO_GRP_0_LED_PIN);
		delay_ms(500);
    }
}

2、官方延时函数

2.1 SysConfig配置

a5d5f12cf45c4bbfbcb74c79480c7316.png

2.2 重定义延时函数

 bae26b5ca80548d9b2674537e7309dc1.png

2.3 代码填写

int main(void)
{
    SYSCFG_DL_init();
    while (1) {
        /*翻转PA0的输出*/
        DL_GPIO_togglePins(GPIO_GRP_0_PORT,GPIO_GRP_0_LED_PIN);
        delay_cycles(1600000);
    }
}

二、点亮LED

1. SysConfig配置

fac6cd7104e8468d9efc42e5bbfaa49c.png

2.代码填写

while (1) {
    DL_GPIO_clearPins(GPIO_GRP_0_PORT, GPIO_GRP_0_LED_PIN);
}

三、按键中断

1、SysConfig配置

532e391ccaed422dbf49ec1a931d3662.png

a7ae52708c7f4ebabfcef3702d385db0.png

2. 代码填写

int main(void)
{
    SYSCFG_DL_init();
	NVIC_EnableIRQ(GPIO_GRP_1_INT_IRQN);		//中断使能
    while (1) {
    }
}

void GROUP1_IRQHandler(void)					//中断回调
{
	switch (DL_Interrupt_getPendingGroup(DL_INTERRUPT_GROUP_1)) {
		case GPIO_GRP_1_INT_IIDX://检测到中断翻转PA0电平
			DL_GPIO_togglePins(GPIO_GRP_0_PORT, GPIO_GRP_0_LED_PIN);
			break;
	}
}

四、 定时器生成PWM波

1、SysConfig配置

e0013f49e9d14793a85682296bd10081.png

 8416bd92f3c64083a01a2643508e9ce7.png

2、填写代码

unsigned short CompareValue0 = 100;

int main(void)
{
    SYSCFG_DL_init();
	NVIC_EnableIRQ(GPIO_GRP_1_INT_IRQN);		//中断使能
	DL_TimerG_setCaptureCompareValue(PWM_0_INST, CompareValue0, DL_TIMER_CC_0_INDEX);
    while (1) {
    }
}



void GROUP1_IRQHandler(void)
{
	switch (DL_Interrupt_getPendingGroup(DL_INTERRUPT_GROUP_1)) {
		case GPIO_GRP_1_INT_IIDX:
		if (DL_GPIO_readPins(GPIO_GRP_1_PORT, GPIO_GRP_1_KEY_PIN)) {
			/*按键增大PWM波的计数比较值,从而增大占空比*/
			DL_TimerG_setCaptureCompareValue(PWM_0_INST, CompareValue0 += 100, DL_TIMER_CC_0_INDEX);
			CompareValue0 = (CompareValue0 > 900)?100:CompareValue0;
			DL_GPIO_togglePins(GPIO_GRP_0_PORT, GPIO_GRP_0_LED_PIN);
		}
		break;
		
		case KEY1_INT_IIDX:
		if (DL_GPIO_readPins(KEY1_PORT, KEY1_KEY1_1_PIN)) {
			TIMA0->CLKDIV ++;                                //改变分频系数
			DL_GPIO_togglePins(GPIO_GRP_0_PORT, GPIO_GRP_0_LED_PIN);
		}
		break;
	}
}

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

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

相关文章

Day21:Leetcode513.找树左下角的值 +112. 路径总和 113.路径总和ii + 106.从中序与后序遍历序列构造二叉树

LeetCode&#xff1a;513.找树左下角的值 解决方案&#xff1a; 1.思路 在遍历一个节点时&#xff0c;需要先把它的非空右子节点放入队列&#xff0c;然后再把它的非空左子节点放入队列&#xff0c;这样才能保证从右到左遍历每一层的节点。广度优先搜索所遍历的最后一个节点…

php基础笔记

开端&#xff1a; PHP 脚本可以放在文本的任意位置 PHP 脚本以 开始&#xff0c;以 ?>** 结束&#xff1a; PHP 文件的默认文件扩展名是 ".php" 标签替换 <? echo 123;?> //short_open_tagson 默认开启 <?(表达式)?> 等价于 <?php echo …

Servlet 的 API

HttpServlet init&#xff1a;当 tomcat 收到了 /hello 这样的路径是请求后就会调用 HelloServlet&#xff0c;于是就需要对 HelloServlet 进行实例化&#xff08;只实例一次&#xff0c;后续再有请求也不实例了&#xff09;。 destory&#xff1a;如果是通过 smart tomcat 的停…

基础常用动词,柯桥西班牙语培训

1. Ser&#xff1a;是 表示身份: Soy Ana. Soy estudiante. 我是安娜。我是一名学生。 表示属性: Es duro. 这是硬的。 表示国籍: Soy espaol, de Madrid. 我是西班牙人&#xff0c;来自马德里。 2. Estar: 是..., 在... 表示身体状况: Estoy muy cansada, necesito dormir.我很…

springboot3项目练习详细步骤(第四部分:文件上传、登录优化、多环境开发)

目录 本地文件上传 接口文档 业务实现 登录优化 SpringBoot集成redis 实现令牌主动失效机制 多环境开发 本地文件上传 接口文档 业务实现 创建FileUploadController类并编写请求方法 RestController public class FileUploadController {PostMapping("/upload&…

英码科技算能系列边缘计算盒子再添新成员!搭载TPU处理器BM1688CV186AH,功耗更低、接口更丰富

在数据呈现指数级增长的今天&#xff0c;越来越多的领域和细分场景对实时、高效的数据处理和分析的需求日益增长&#xff0c;对智能算力的需求也不断增强。为应对新的市场趋势&#xff0c;英码科技凭借自身的硬件研发优势&#xff0c;携手算能相继推出了基于BM1684的边缘计算盒…

uniappx 应用未读角标插件(完善推送、通知、消息效果) Ba-Shortcut-Badge-U

简介&#xff08;下载地址&#xff09; Ba-Shortcut-Badge-U 是设置应用未读角标的原生插件&#xff0c;UTS版本&#xff08;同时支持uniapp和uniappx&#xff09; 支持设置未读、清空未读支持机型有Huawei、oppo、xiaomi、Samsung、Sony、LG、HTC、ZUK、ASUS、ADW、APEX、NO…

如何使用Matlab进行三角剖分(自定义函数实现delaunayTriangulation 使用Bowyer-Watson 算法)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 一、Delaunay三角形 二、使用步骤 1.Bowyer-Watson算法 2.算法步骤 三、动画演示 四、核心代码 五、对比matlab自带函数和我们的算法&#xff1a; 总结 前…

【C++】学习笔记——二叉搜索树

文章目录 十四、二叉搜索树1. 二叉搜索树的概念2. 二叉搜索树的实现查找插入中序遍历删除拷贝构造析构函数赋值重载完整代码 3. 二叉搜索树的应用K搜索模型KV搜索模型 未完待续 十四、二叉搜索树 1. 二叉搜索树的概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&…

BUUCTF---misc---[MRCTF2020]ezmisc

1、附件下载后是一张图片 2、查看属性&#xff0c;winhex分析&#xff0c;没发现什么 3、在kali中binwalk和foremost也没找到什么信息 4、用stegsolve分析也没发现什么 5、这里几乎常见的misc方法都试过了&#xff0c;还是没有发现什么 6、回归到图片本身&#xff0c;想到的…

正心归一、绽放真我 好普集团正一生命文化艺术大赛(中老年赛区)正式启动

为进一步弘扬社会主义核心价值观&#xff0c;弘扬生命文化&#xff0c;提升公众对生命价值的认识与尊重&#xff0c;同时展现中老年艺术家的创作才华&#xff0c;激发广大中老年朋友的艺术热情和创造力。好普集团主办&#xff0c;幸福金龄会与正一生命科学研究&#xff08;广州…

CSS单行、同行文本左右对齐

再项目需求中&#xff0c;UI小姐姐常常要考虑项目的排版样式更简洁高级&#xff0c;常常会在项目设置内容或者字体两端对齐的效果&#xff0c;比如&#xff0c;在做表单时我们经常遇到让上下两个字段对齐的情况&#xff0c;比如姓名&#xff0c; 手机号码&#xff0c; 出生地等…

分布式音乐播放器适配了Stage模型

OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;应用开发自API 8及其更早版本一直使用的是FA模型进行开发。FA模型是Feature Ability的缩写&#xff0c;它和PA&#xff08;Particle Ability&#xff09;两种类型是过往长期推广的术语&#xff0c;深入人心…

flannel详细介绍

一、前言 Flannel 是一个简单、高效的容器网络解决方案&#xff0c;适用于需要在多个主机上运行容器的场景。它通过虚拟网络技术和 IP 地址管理来实现容器之间的通信和跨主机连接&#xff0c;为容器平台提供了可靠的网络基础设施&#xff0c;flannel有三种模式&#xff0c;分别…

【OceanBase诊断调优】—— 直连普通租户时遇到报错:Tenant not in this server

本文介绍了直连 OceanBase 数据库中的普通租户时&#xff0c;出现报错&#xff1a;ERROR 5150 (HY000) : Tenant not in this server 的处理方法。 问题描述 在 n-n 或者 n-n-n (n>1) 的部署架构中&#xff0c;使用 2881 端口 直连 OceanBase 集群的普通租户&#xff0c;可…

Vue2基础及其进阶面试(一)

简单版项目初始化 新建一个vue2 官网文档&#xff1a;介绍 — Vue.js 先确保下载了vue的脚手架 npm install -g vue-cli npm install -g vue/cli --force vue -V 创建项目 vue create 自己起个名字 选择自己选择特性 选择&#xff1a; Babel&#xff1a;他可以将我们写…

华院计算 | 简单而复杂的“生命游戏”

人类是社会动物&#xff0c;而人类的社会活动则既简单又复杂。长期以来&#xff0c;数学家、计算机科学家和社会学家们一直试图用简单明了的方式方法去刻画错综复杂的社会现象&#xff0c;其中“生命游戏”提供了一个“寓科学于娱乐”的活动框架。 【一】导引 让我们先来玩一…

接口自动化测试Requests库实战超细详解

一、requests库 Requests is an elegant and simple HTTP library for Python, built for human beings. Requests库就是一个使用Python语言发送HTTP请求的一个类库。 github地址&#xff1a;GitHub - psf/requests: A simple, yet elegant, HTTP library. 中文地址&#xff…

【华为】将eNSP导入CRT,并解决不能敲Tab问题

华为】将eNSP导入CRT&#xff0c;并解决不能敲Tab问题 eNSP导入CRT打开eNSP&#xff0c;新建一个拓扑右键启动查看串口号关联CRT成功界面 SecureCRT连接华为模拟器ensp,Tab键不能补全问题选择Options&#xff08;选项&#xff09;-- Global Options &#xff08;全局选项&#…

民国漫画杂志《时代漫画》第6期.PDF

时代漫画06.PDF: https://url03.ctfile.com/f/1779803-1247397790-72c351?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了&#xff0c;截止1937年6月战争来临被迫停刊共发行了39期。 ps:资源来源网络&#xff01;