MSP432E401Y学习笔记day2

昨天有关于触发AD采样的定时器初始化忘了写,今天准备补充在文章前面,然后是AD的几种触发方式和DMA的几种模式的说明,相当于是对昨天的补充

目录

MSP432E401Y定时器初始化

ADC的几种触发方式

DMA的几种使用模式


MSP432E401Y定时器初始化

    /* 使能定时器0的时钟并且设置频率为1KHz,使能ADC触发方式为定时器0 */
    MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0);
    while(!(MAP_SysCtlPeripheralReady(SYSCTL_PERIPH_TIMER0)))
    {
    }

    MAP_TimerConfigure(TIMER0_BASE, TIMER_CFG_A_PERIODIC);
    MAP_TimerLoadSet(TIMER0_BASE, TIMER_A, (systemClock/SAMP_FREQ));
    MAP_TimerADCEventSet(TIMER0_BASE, TIMER_ADC_TIMEOUT_A);
    MAP_TimerControlTrigger(TIMER0_BASE, TIMER_A, true);
    MAP_TimerEnable(TIMER0_BASE, TIMER_A);

这里的SAMP_FREQ是采样频率,此处为1KHz;systemClock为时钟主频。

以上的部分和昨天的结合就是整个的MSP432E401Y关于AD部分的初始化。

ADC的几种触发方式

MSP432E401Y中的AD一共有以下几种触发方式

#define ADC_TRIGGER_PROCESSOR   0x00000000  // Processor event
#define ADC_TRIGGER_COMP0       0x00000001  // Analog comparator 0 event
#define ADC_TRIGGER_COMP1       0x00000002  // Analog comparator 1 event
#define ADC_TRIGGER_COMP2       0x00000003  // Analog comparator 2 event
#define ADC_TRIGGER_EXTERNAL    0x00000004  // External event
#define ADC_TRIGGER_TIMER       0x00000005  // Timer event
#define ADC_TRIGGER_PWM0        0x00000006  // PWM0 event
#define ADC_TRIGGER_PWM1        0x00000007  // PWM1 event
#define ADC_TRIGGER_PWM2        0x00000008  // PWM2 event
#define ADC_TRIGGER_PWM3        0x00000009  // PWM3 event
#define ADC_TRIGGER_NEVER       0x0000000E  // Never Trigger
#define ADC_TRIGGER_ALWAYS      0x0000000F  // Always event

将其中的参数使用MAP_ADCSequenceConfigure这个函数设置AD的触发方式,这里主要应用的是ADC_TRIGGER_TIMER,也就是定时器中断,至于如果用ADC_TRIGGER_ALWAYS做触发方式能不能提高AD采样速度我准备进一步去研究研究。

DMA的几种使用模式

MSP432E401Y中的AD一共有以下几种使用模式

#define UDMA_MODE_STOP                  0x00000000
#define UDMA_MODE_BASIC                 0x00000001
#define UDMA_MODE_AUTO                  0x00000002
#define UDMA_MODE_PINGPONG              0x00000003
#define UDMA_MODE_MEM_SCATTER_GATHER    0x00000004
#define UDMA_MODE_PER_SCATTER_GATHER    0x00000006
#define UDMA_MODE_ALT_SELECT            0x00000001

 这里的设置库函数为MAP_uDMAChannelTransferSet,主要使用的是BASIC和PINGPONG。

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: MSP432E401Y是一款高性能的低功耗微控制器,适用于各种嵌入式应用。学习MSP432E401Y可以使我们了解到如何开发和设计各种应用程序。 首先,我们可以学习MSP432E401Y的架构和硬件功能。该微控制器具有强大的处理能力和多种接口,包括串口、SPI、I2C和GPIO,可以与其他外部设备进行通信。此外,它还具有LCD控制器和触摸屏接口,方便我们与用户界面进行交互。 其次,我们可以学习如何使用MSP432E401Y进行编程。它支持多种编程语言,如C和汇编语言,并提供了丰富的软件开发工具和库,如代码编辑器、编译器和调试器。通过学习如何编写代码并调试程序,我们可以实现各种功能,如控制外部设备、处理数据和实现算法。 另外,学习MSP432E401Y还可以了解到如何进行电源管理和低功耗设计。它具有多种节能模式,可以根据应用需求进行灵活配置,从而延长电池寿命和降低功耗。此外,它还支持外部功耗管理接口,可以与其他电源管理器件进行通信,实现更高效的功耗管理。 最后,通过学习MSP432E401Y的应用案例和开发方案,我们可以掌握如何将它应用于实际项目中。无论是物联网、智能家居还是工业自动化,MSP432E401Y都可以为我们提供强大且可靠的解决方案。 总之,学习MSP432E401Y可以让我们掌握嵌入式系统设计和开发领域的知识和技能,为我们未来的职业发展和创新提供了基础。 ### 回答2: MSP432E401Y是一款现代微控制器,由德州仪器(Texas Instruments)公司设计和生产。它基于Cortex-M4内核,并具备低功耗特性。那么,如何进行MSP432E401Y学习呢? 首先,要深入了解MSP432E401Y的硬件特性和技术规格。可以查阅官方文档和技术手册,并关注官方社区和论坛,以便获取更多有关该微控制器的信息。 其次,熟悉MSP432E401Y的软件开发环境。Texas Instruments提供了MSP432软件开发工具包(SDK)和集成开发环境(IDE)。学习使用这些工具,编写、调试和测试MSP432E401Y的应用程序。可以通过阅读相关文档和教程,动手实践来提高自己的技能。 与此同时,可以尝试各种不同的实际应用场景。可以选择一些简单的项目,并逐步增加复杂度。通过实践深入了解如何使用MSP432E401Y来解决不同类型的问题。 此外,参与社区和论坛活动也是学习MSP432E401Y的好方式。与其他开发者分享经验和知识,提出问题并讨论解决方案。 最后,不断学习并保持热情。MSP432E401Y是一款功能强大且灵活的微控制器,但要掌握它需要持续的学习和实践。通过不断挑战自己,研究新的应用和技术,可以不断提升自己的技能水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值