
使用PWM Generator的ADC触发器

学习如何使用DSPIC33C MP设备的PWM和ADC,实验7:DSPIC33CK和DSPIC33CH设备的代码示例,显示了PWM Generator的基本配置触发ADC输入。在ADC中断服务例程(ISR)内部的测试引脚内部切换以允许用户观察触发响应延迟。同样,早期中断生成,具有编译器属性的替代工作寄存器和采样时间调整优化功能用于调整触发响应时间。
请始终在相应的产品网站上检查最新数据表:

对设备进行编程并启动MCU后,PWM1H触发专用的ADC Core 0。在277NS触发响应延迟左右后,ADC Core O ISR Test PIN指示器tp55 tp55切换tpgles请参见下面的屏幕捕获。由于启用了ADC Core 0的早期中断发生器,因此优化了触发响应延迟。
通过按数字电源开发板上的板载按钮用户,PWM2H触发专用的ADC Core 1。在265NS触发响应延迟左右后,ADC Core 1 ISR测试引脚指示器TP53切换tp53切换tp53 tp53切换术,请参见下面的屏幕截图。触发响应延迟进一步减少,因为除了启用了早期中断发电机外,ADC Core 1 ISR使用编译器的上下文属性将ISR与备用寄存器集相关联。
通过再次按下板上按钮用户,PWM3H触发共享的ADC Core 6。大约335NS之后,ADC Core 6 ISR测试引脚指示器tp50 tp50切换tp5 tpgles,请参见下面的屏幕捕获。共享ADC的配置与专用的ADC Core 1相同,除了共享ADC采样时间设置为8个TADCORE。与以前的专用ADC内核不同,共享ADC Core 6没有专用的模拟引脚。这需要延长采样时间,以确保ADC连接到模拟引脚并在转换之前正确采样输入信号。但是,此示例时间添加了触发响应延迟。
请参阅下面的“固件快速启动指南”部分,以获取有关初始化过程和代码结构的更多信息。

此代码示例在以前的代码示例上构建,显示了如何使用Microchip代码配置器(MCC)设置设备时钟域。尽管MCC还支持用于PWM和ADC模块的配置工具,但在此示例中,PWM和ADC配置在通用外围驱动程序上构建,以帮助用户更好地了解特定配置和操作模式的外围架构和关键方面。在每个PWM和ADC示例代码项目中,PWM和ADC配置过程位于用户文件pwm.c和adc.c中,其中设置了要实现/启用特定功能或感兴趣模式所需的每个寄存器位,并用注释描述其功能。一旦用户熟悉体系结构,功能和功能,则可以使用配置选项(通用外围图书馆或MCC)。
该项目包含四个子目录
在硬盘驱动器上,main.c/h位于MPLAB X项目目录中。所有其他用户文件,包括。外围驱动器位于子目录中。 MCC生成的文件始终位于其自己的子目录MCC_Generated-Files中
PWM和ADC外围驱动程序文件P33C_PWM.C/H和P33C_ADC.C/H提供代表PWM和ADC实例的特殊功能寄存器(SFR)集的数据结构,以及PWM和ADC基础模块。这些“虚拟” PWM和ADC对象用于加载,读取和修改PWM和ADC配置,而无需硬编码说明,这将使代码难以从一个外围迁移到另一个外围或跨设备。为了简化PWM和ADC配置,在这些示例中,在设置了兴趣的用户配置之前,每个寄存器将重置为已知的默认状态。因此,仅显示对某些功能/功能真正重要的寄存器设置。
要了解有关通用PWM和ADC驱动程序的更多信息,其支持的功能和预期用例,请阅读p33c_pwm.c和p33c_adc.c.c.c.c.c.c.c.c.
该代码已编写以自动启动并执行感兴趣的功能。请阅读文件main.c之上的演示说明,以了解有关代码示例,测试点,预期信号和演示模式操作的更多信息。
©2020,Microchip Technology Inc.