msp432p401整理示例程序

软件环境ccs,每一个小实验备注了说明,其他环境(keil5/IAR等等)可拷贝BSP加入自己工程中
包含基本的io输入输出,滴答定时器,串口实验,ADC实验,定时器功能实验。

在这里插入图片描述
在这里插入图片描述

部分代码展示如下
uart.c中

#include <uart.h>   // 0117 

/*=================================UART结构体参数配置(9600)====================================*/

/*注:波特率的设置与时钟频率有关,这里配置的时钟为12Mhz,若时钟为24Mhz则配置波特率的时钟参数则将发生变化,具体参考技术应用手册*/


//#define Baud   //将该段注释掉波特率设置为115200否则波特率为9600
#ifdef   Baud
/*==============Baud  9600====12MHZ=================================*/
const eUSCI_UART_ConfigV1 uartConfig =
{
        EUSCI_A_UART_CLOCKSOURCE_SMCLK,          // SMCLK Clock Source
        78,                                     // BRDIV = 78
        2,                                       // UCxBRF = 2
        0,                                       // UCxBRS = 0
        EUSCI_A_UART_NO_PARITY,                  // No Parity
        EUSCI_A_UART_LSB_FIRST,                  // LSB First
        EUSCI_A_UART_ONE_STOP_BIT,               // One stop bit
        EUSCI_A_UART_MODE,                       // UART mode
        EUSCI_A_UART_OVERSAMPLING_BAUDRATE_GENERATION,  // Oversampling
        EUSCI_A_UART_8_BIT_LEN                  // 8 bit data length
};


#else

/*================Baud  115200==========12MHZ===========================*/
const eUSCI_UART_ConfigV1 uartConfig =
{
        EUSCI_A_UART_CLOCKSOURCE_SMCLK,          // SMCLK Clock Source
        6,                                      // BRDIV = 6
        8,                                       // UCxBRF = 8
        0x20,                                      // UCxBRS = 0x20
        EUSCI_A_UART_NO_PARITY,                  // No Parity
        EUSCI_A_UART_MSB_FIRST,                  // MSB First
        EUSCI_A_UART_ONE_STOP_BIT,               // One stop bit
        EUSCI_A_UART_MODE,                       // UART mode
        EUSCI_A_UART_OVERSAMPLING_BAUDRATE_GENERATION,  // Oversampling
        EUSCI_A_UART_8_BIT_LEN                  // 8 bit data length
};



#endif
/*================================================================================================*/
/*====================================UART1初始化=====12Mhz=============================================*/
void Uart_Init(void) //P1.2--RX       P1.3--TX
{
     GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P1,\
                GPIO_PIN2 | GPIO_PIN3, GPIO_PRIMARY_MODULE_FUNCTION);   /* Selecting P1.2 and P1.3 in UART mode */
     CS_setDCOCenteredFrequency(CS_DCO_FREQUENCY_12); /* Setting DCO to 12MHz   将DOC设置为12Mhz */
     UART_initModule(EUSCI_A0_BASE, &uartConfig); /* Configuring UART Module */
     UART_enableModule(EUSCI_A0_BASE); /* Enable UART module */
              /* Enabling interrupts */
      UART_enableInterrupt(EUSCI_A0_BASE, EUSCI_A_UART_RECEIVE_INTERRUPT);
      Interrupt_enableInterrupt(INT_EUSCIA0);
      Interrupt_enableSleepOnIsrExit();
      Interrupt_enableMaster();
}
/*================================================================================================*/
/*===================================UART2初始化=======12Mhz=============================================*/
void Uart2_Init(void) //P3.2--RX       P3.3--TX
{
     GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P3,\
                GPIO_PIN2 | GPIO_PIN3, GPIO_PRIMARY_MODULE_FUNCTION);   /* Selecting P1.2 and P1.3 in UART mode */
     CS_setDCOCenteredFrequency(CS_DCO_FREQUENCY_12); /* Setting DCO to 12MHz   将DOC设置为12Mhz */
     UART_initModule(EUSCI_A2_BASE, &uartConfig); /* Configuring UART Module */
     UART_enableModule(EUSCI_A2_BASE); /* Enable UART module */
              /* Enabling interrupts */
      UART_enableInterrupt(EUSCI_A2_BASE, EUSCI_A_UART_RECEIVE_INTERRUPT);
      Interrupt_enableInterrupt(INT_EUSCIA2);
      Interrupt_enableSleepOnIsrExit();
      Interrupt_enableMaster();
}
/*================================================================================================*/

百度网盘link>>>

提取码:qq:2995560796获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值