文章目录
- 前言
- 一、配置过程
- 1,选择引脚
- 2,DIO模块配置
- 1)新建DioChannel
- 3,PORT模块配置
- 4,保存并生成DIO,PORT模块
- 二、实现并验证
- 1,调用函数接口
- 2,示波器测量周期
- 总结
->返回总目录<-
前言
本章节主要基于DaVinCi工具链来展开具体DIO的配置以及最终实现。
DIO通常理解为数字量信号,实现流程包括如下几点:
1, 配置DIO 2, 配置PORT 3, 调用函数接口
本文最终实现的功能是:通过数字量信号来测试函数执行周期 (可用于更多的Debug情况)
话不多说,走你~
一、配置过程
1,选择引脚
Tips: 避免对芯片已经使用的IO引脚做额外的干扰。
打开电路图,选择一个未使用的IO引脚,如下图P8_4(芯片第30号引脚)
2,DIO模块配置
1)新建DioChannel
打开 /Dio/DioConfigs/DioConfig/DioPorts/DioPortG8/DioChannels
Tips: 这里DioPortG8已经有了,是因为在DIO配置了选择了芯片信号,因此会自动识别数字IO是哪些。
因此针对博主这款芯片是P10 和 P8为数字IO引脚。
新建内容如下:
Short Name: PORT_G8P4_ChunFengYouXin
Channel Bit Position: 4 (P8_4引脚)
Channel Id: 3 (默认的,一种索引)
~
3,PORT模块配置
在 /Port/PortConfigSets/PortConfigSet/PortGroup8
新建内容如下:
Short Name: PORT_G8P4_ChunFengYouXin
Pin Direction: PORT_PIN_OUT (配置引脚方向为输出)
Pin Initial Mode: DIO_PFC_PMCSR (配置引脚模式为DIO功能)
Pin Level Value: PORY_PIN_LEVEL_LOW(配置引脚输出为低电平)
4,保存并生成DIO,PORT模块
如下图,无需生成其他模块。
二、实现并验证
上述所配置的DIO,会自动生成在Dio_Cfg.h文件中,如下图
1,调用函数接口
找到一个函数,这里博主直接用20ms的task来进行测试任务执行周期。
在函数调用时对P8_4引脚输出高电平,函数结束前对P8_4引脚输出低电平。
2,示波器测量周期
Step1:用示波器的表笔连接到芯片的P8_4引脚
Step2:用示波器测量引脚的周期,如下图:
Task的周期是20.014ms。
总结
关于DIO的功能实现比较简单,但是这种方法可经常使用在代码Debug的情况。
AutoSar也提供了很多测试的接口:任务执行周期,堆栈监控,内存保护等。只是博主还未找到。如果哪位大佬知道的话,分享一下,感谢~
->返回总目录<-