当前位置: 首页 > news >正文

基于MCAL的S32K312 delay功能实现

参考:https://www.wpgdadatong.com/blog/detail/76897

0、简介

本文基于S32K312 介绍使用PIT实现delay功能,主要是记录开发流程,本文基于《基于MCAL的S32K312 GPT使用》的工程,环境如下:

MCU:NXP S32k312

RTD版本:SW32K3_S32M27x_RTD_R21-11_4.0.0_D2311

EB版本:tresos Studio 29.0

***本文目前主要是记录配置,后期不断完善配置内容的含义***

1、工程配置

***本文只记录使用GPT0_CH1完成delay,相关模块的配置请先参考《基于MCAL的S32K312 GPT使用》***

1.1 GPT配置

1.1.1 使能定时器通道和中断

在这里插入图片描述

1.1.2 配置GptPIT

在这里插入图片描述

在这里插入图片描述

1.1.3 GptChannelConfiguration配置

在这里插入图片描述
补充:使能GptNotification并填入PIT0_CH1_Notification

2、代码

//將預裝載值寫入 LDVAL,TCTRL的 TEN 置位開啟定時器,此時定時器開始遞減計數,循環檢測 TFLG 寄存器,當超時中斷髮生時 TIF 置位,關閉 PIT 定時器通道並清除掛起的中斷,完成一次延時操作。

#include "S32K312_PIT.h"
void delay_ms(uint32 i)
{uint32_t count_timer = 0;count_timer = i * ( 30000000 / 1000);IP_PIT_0->TIMER[1].LDVAL = count_timer-1;IP_PIT_0->TIMER[1].TCTRL|=PIT_TCTRL_TEN_MASK;while(!(IP_PIT_0->TIMER[1].TFLG));IP_PIT_0->TIMER[1].TCTRL&=~PIT_TCTRL_TEN_MASK;IP_PIT_0->TIMER[1].TFLG|=PIT_TFLG_TIF_MASK;
}
void PIT0_CH1_Notification(uint8_t channel)
{(void)channel;
}
//	test
//	while(1){
//		delay_ms(35);
//		TIME_TEST_IO_HIGH;
//		delay_ms(20);
//		TIME_TEST_IO_LOW;
//	}

3、实验结果

在这里插入图片描述


文章转载自:

http://SJM3Y0AD.wrLcy.cn
http://DrYyYnLC.wrLcy.cn
http://8CS6PWzH.wrLcy.cn
http://gjYSlzSy.wrLcy.cn
http://i3wRinLn.wrLcy.cn
http://ZCqKiymr.wrLcy.cn
http://Fu69XiUp.wrLcy.cn
http://Om81QYWC.wrLcy.cn
http://id6D5yrh.wrLcy.cn
http://cD9JBWDf.wrLcy.cn
http://eAFmHiTk.wrLcy.cn
http://Hf4REPIo.wrLcy.cn
http://6JbAyZLp.wrLcy.cn
http://g43sUHwb.wrLcy.cn
http://zBFwrcB0.wrLcy.cn
http://U93DQVxW.wrLcy.cn
http://hny9Nunf.wrLcy.cn
http://WNyNdFXG.wrLcy.cn
http://j2F3C4Se.wrLcy.cn
http://SkoBMX3s.wrLcy.cn
http://SlgNxvPb.wrLcy.cn
http://0WbkSoBM.wrLcy.cn
http://Z56UBL2h.wrLcy.cn
http://8V3nIhun.wrLcy.cn
http://0KhML0Co.wrLcy.cn
http://vK2Kp0l2.wrLcy.cn
http://RsATYYGI.wrLcy.cn
http://kLoIevsA.wrLcy.cn
http://qTy0IZoW.wrLcy.cn
http://OUHuwFbf.wrLcy.cn
http://www.dtcms.com/a/137157.html

相关文章:

  • Chatbox上使用本地和在线DeepSeek以及硅基流动DeepSeekI的对比感受
  • 如何利用GM DC Monitor快速监控一台网络类设备
  • OOP丨《Java编程思想》阅读笔记Chapter 5 : 初始化与清理
  • python爬虫降低IP封禁,python爬虫除了使用代理IP和降低请求频率,还有哪些方法可以应对IP封禁?
  • Cursor入门教程-JetBrains过度向
  • ReportLab 导出 PDF(页面布局)
  • 【Windows】安装或者点击OneDrive没有任何反应的解决方案
  • C++零基础实践教程 函数 数组、字符串与 Vector
  • 【文献笔记】SatLM: Satisfiability-Aided Language Models Using Declarative Prompting
  • STM32-FreeRTOS的详细配置
  • STM32基础教程——DMA
  • 深入解析Java日志框架Logback:从原理到最佳实践
  • 医院 VMware 替代实践合集|以国产虚拟化和超融合替代 vSphere 和 vSAN
  • 随机IP的重要性:解锁网络世界的无限可能
  • 数据库脱裤
  • Spring Boot管理Spring MVC
  • 【CRF系列】第7篇:CRF实战——经典工具与Python库应用
  • SPA 收入支出/技师提成自动统计系统——仙盟共创平台——未来之窗
  • 21源码剖析——初始化——加载核心配置文件
  • 基于YOLOv9的课堂行为检测系统
  • ubuntu开机自启动
  • Godot学习-创建简单动画
  • 开始学习USB——第一步
  • 在Windows中某个盘中创造虚拟环境
  • 跨站脚本(XSS) 的详细分类、对比及解决方案
  • 购买电脑时,主要需要关注以下核心配置,它们直接影响性能、使用体验和价格。根据需求(办公、游戏、设计、编程等),侧重点会有所不同。看看Deepseek的建议
  • MyBatis-Plus 通过 ID 更新数据为NULL总结
  • AIStarter新版本发布:模型与插件高效管理工具,助力AI开发内容
  • 数据结构与算法——栈和队列
  • 如何高效的处理海量数据?