MSP430串口接收控制LED

发布者:EtherealEssence最新更新时间:2019-04-11 来源: eefocus关键字:MSP430  串口接收  控制LED 手机看文章 扫描二维码
随时随地手机看文章

/**********************************************    

*程序描述:单片机的P3.4、P3.5作为串口接收字符,将接受到的字符再发送出去

*并且根据接受到的字符‘1’‘2’‘3’‘4’分别点亮LED1、LED2、LED3、LED4

P2.0->LED1 ,P2.1->LED2, P2.2->LED3 ,P2.3->LED4

***********************************************/  

#include 

void usartInit(void);                           //串口初始化  

void main(void)  

{  

  WDTCTL = WDTPW + WDTHOLD;                     // Stop WDT  

  P2DIR |= BIT0+BIT1+BIT2+BIT3;

  P2OUT |= BIT0+BIT1+BIT2+BIT3;

  usartInit();                                  //初始化串口

  while(1){  

  _BIS_SR(LPM3_bits + GIE);                     // Enter LPM3 w/ interrupt  

  while((UTCTL0&TXEPT)==0);                     //等待数据发送完毕     

   TXBUF0 = RXBUF0;                             // RXBUF0 to TXBUF0  

   switch(RXBUF0){

     case'1':P2OUT&=~BIT0;break;                //打开LED1

     case'2':P2OUT&=~BIT1;break;                //打开LED2

     case'3':P2OUT&=~BIT2;break;                //打开LED3

     case'4':P2OUT&=~BIT3;break;                //打开LED4

     default:P2OUT|=BIT0+BIT1+BIT2+BIT3;break;  //熄灭所有的LED

  }  

  }

}  

  

#pragma vector=UART0RX_VECTOR  

__interrupt void usart0_rx (void)  

{  

   LPM3_EXIT;  

}  

/****************************************************************************    

*函数名: uartInit()                                                          /    

*作用  :USART0的初始化配置,使用P3.4和P3.5,使用接收中断                    /    

*返回值:无                                                                  /    

*参数  :无                                                                  /    

*作者  :Zhenhua Liu                                                         /     

*时间  :2017.11.02                                                          /     

*****************************************************************************/    

void usartInit(){  

  P3SEL |= 0x30;                            // P3.4,5 = USART0 TXD/RXD  

  ME1 |= UTXE0 + URXE0;                     // Enable USART0 TXD/RXD  

  UCTL0 |= CHAR;                            // 8-bit character  

  UTCTL0 |= SSEL0;                          // UCLK = ACLK  

  UBR00 = 0x03;                             // 32k/9600 - 3.41  

  UBR10 = 0x00;                             //  

  UMCTL0 = 0x4A;                            // Modulation  

  UCTL0 &= ~SWRST;                          // Initialize USART state machine  

  IE1 |= URXIE0;                            // Enable USART0 RX interrupt  

  

}  


关键字:MSP430  串口接收  控制LED 引用地址:MSP430串口接收控制LED

上一篇:实验二:MSP430简单程序设计
下一篇:STM8 UART中断发,中断收

推荐阅读最新更新时间:2024-03-16 16:27

MSP430锁频环的使用
#include msp430f149.h void delay(int x) { int i,j; for(i=x;i 0;i--) for(j=112;j 0;j--); } int main( void ) { // Stop watchdog timer to prevent time out reset BCSCTL1 |= DIVA_2; WDTCTL = WDT_ADLY_1000; IE1 = WDTIE; P2DIR |= BIT2; P2OUT |= BIT2; while(1) { _BIS_SR(LPM3_bits+GIE); P2OUT &= ~BIT2; d
[单片机]
STM32 USART串口DMA 接收和发送的源码详解
硬件平台:STM32F103ZET6; 开发环境:KEIL 4; 先说说应用通讯模式,串口终端的工作方式和迪文屏差不多,终端被动接受MCU发的指令,终端会偶尔主动发送一些数据给MCU(像迪文屏的触摸信息上传)。 串口DMA发送: 发送数据的流程: 前台程序中有数据要发送,则需要做如下几件事 1.在数据发送缓冲区内放好要发送的数据,说明:此数据缓冲区的首地址必须要在DMA初始化的时候写入到DMA配置中去。 2.将数据缓冲区内要发送的数据字节数赋值给发送DMA通道,(串口发送DMA和串口接收DAM不是同一个DMA通道) 3.开启DMA,一旦开启,则DMA开始发送数据,说明一下:在KEIL调试好的时候,D
[单片机]
英飞凌推出具备无频闪控制和低待机功率的数字LED驱动IC
2016年9月20日,德国慕尼黑 现代LED技术为照明应用提供了许多高级功能。英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)推出的XDPL8220进一步壮大了其数字可配置LED驱动IC产品组合。有了这颗IC,照明行业可以实现其重要的特性 智能照明,并使终端用户和制造商双方都能从中获益。这颗器件的原边控制无需额外元件,可在节省成本的同时,增强可靠性。 XDPL8220采用现代双级架构,可以消除市电低频率变化,适应不断变化中的频闪标准,确保稳定输出。通过实现高能效及低待机功耗,保证了电子控制装置(ECG)的持续运行。XDPL8220的待机功率不足70 mW,可降低非活动模式下的功耗,同时仍可对外部事
[电源管理]
英飞凌推出具备无频闪<font color='red'>控制</font>和低待机功率的数字<font color='red'>LED</font>驱动IC
STM32开发笔记82: 使用C++语言控制LED闪烁
单片机型号:STM32L053R8T6 本文介绍应用C++语言控制LED闪烁的方法。 先看电路图,单片机PB12引脚控制LED的亮灭,当PB12引脚给出低电平LED亮,当PB12引脚给出高电平LED灭。 步骤如下: 1、打开hal.h文件,建立CLed类,其从CIO_Output_OST_High类继承,CIO_Output_OST_High类为引脚输出类,OST是指其具有3个成员函数,分别为Open(打开操作),Shut(关闭操作)和Turn(翻转操作),High的意思是指其上电为高电平。 同样还有CIO_Output_OST_Low类,其上电为低电平。 class CLed:public CIO_Out
[单片机]
STM32开发笔记82: 使用C++语言<font color='red'>控制</font><font color='red'>LED</font>闪烁
基于MSP430F449的电子血压计设计
随着生活水平的不断提高以及城市老龄化比例的提高,医疗电子设备的家庭化逐渐成为了趋势。其中家用电子血压计就是典型的家庭医疗检测设备之一。目前血压计大致上可分为两种:一是水银式血压计,其优点为数值稳定,其缺点为无法一个人自行操作,必须专业医护人员操作,且肉眼观察误差极大,主观性强,体积较大不易携带。二是电子式血压计,其优点为:使用简易,可一人独自操作;测量值便于记录,体积轻巧便于携带。电子式血压计具备了诸多优点,越来越受到普通家庭的欢迎。本文介绍了以MSP430F449为控制核心,辅以BP01型压力传感器与MCU之间模拟信号处理电路以及LCD显示、语音提示,实现家用电子血压计的设计。 血压测量原理 血压的概念就是血液流经血管壁时的
[单片机]
基于<font color='red'>MSP430</font>F449的电子血压计设计
MSP430读写flash程序
//****************************************************************************** //****************************************************************************** #include #define FLASH_ADDRESS 0x01000 //定义FLASH信息区地址B段 unsigned char write_buff ={0x01,0x03,0x04,0x09}; //用于存放被数组 unsigned char checkout ;
[单片机]
MSP430 flash写入(二)
/* --COPYRIGHT--,BSD_EX * Copyright (c) 2012, Texas Instruments Incorporated * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * * Redistributions of source code must retain the above c
[单片机]
德州仪器推出带有两颗MSP430与 Chipcon RF模块连接器的开发工具
2007 年 4 月 5 日,北京讯 日前,德州仪器 (TI) 宣布推出 MSP430 实验板, 其部件号为 MSP-EXP430FG4618。该工具可帮助设计人员利用高集成度片上信号链 (SCoC) MSP430FG4618 或 14 引脚小型F2013 微控制器快速开发超低功耗医疗、工业与消费类嵌入式系统。该电路板除集成两个 16 位 MSP430 器件外,还包含一个 TI(Chipcon 产品线)射频 (RF) 模块连接器,以用于开发低功耗无线网络。另外,它还支持多种输入输出选项,其中包括扩音器、蜂鸣器、液晶显示屏 (LCD)、电容触摸板、按钮以及引脚板原型空间等。如欲了解有关最新 MSP430 实验板的更多详情,敬请访问:
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved