msp430f5529串口通信

发布者:码农闲散人最新更新时间:2020-02-12 来源: eefocus关键字:msp430f5529  串口通信 手机看文章 扫描二维码
随时随地手机看文章

调了一天,终于通了。


这个板子有点坑人,看引脚功能图UART_RXTX是P3.4P3.5,结果调了半天都不通,上网查了很久才知道USB的串口是P4.4P4.5。


对于我这种初学者来说,要走的路还很长呀!


#include


void delay(int ms)        //延时函数

{

for(int i=0;i for(int j=0;j<240;j++);

}


void send_buf(unsigned char *ptr)    //发送字符串

{

while(*ptr != '')

{

while(!(UCA1IFG & UCTXIFG));

UCA1TXBUF = *ptr;

ptr++;

delay(50);

}

}


void main(void)

{

WDTCTL = WDTPW + WDTHOLD;      //关闭看门狗

P4DIR |= BIT7;                               //初始化LED


//串口初始化

P4SEL    |=  BIT4+BIT5 ;                // P5.6,7 = USCI_A1 TXD/RXD

    UCA1CTL1 |=  UCSWRST;                      // **Put state machine in reset**

    UCA1CTL1 |=  UCSSEL_1;                     // ACLK

    UCA1BR0   =  0x03;                        // 32768Hz 9600 波特率为9600

    UCA1BR1   =  0x00;                        // 32768Hz 9600

    UCA1MCTL |=  UCBRS_3 + UCBRF_0;           // Modulation UCBRSx=1, UCBRFx=0

    UCA1CTL1 &= ~UCSWRST;                   // **Initialize USCI state machine**

    UCA1IE   |=  UCRXIE;                      // Enable USCI_A1 RX interrupt 使能中断

         

         //S2

P2IE |= BIT;

P2IES |= BIT1;

P2IFG &= ~ BIT1;

P2REN |= BIT1;

P2OUT |= BIT1;

_EINT();                                               //中断使能


send_buf("串口通信rn");

while(1)

{

;

}

}


#pragma vector = USCI_A1_VECTOR

__interrupt void USCI_ISR()

{

switch(_even_in_range(UCA1IV,4))

{

case 0:break;                             // Vector 0 - No interrupt

    case 2:                                   // Vector 2 - RXIFG

        UCA1TXBUF = UCA1RXBUF;                // 发送接收到的数据

                                              // 如需对发送信息进行处理修改此处

        break;

    case 4:break;                             // Vector 4 - TXIFG

    default: break;

}

}


#pragma vector = PORT2_VECTOR

__interrupt void P2_ISR()

{

if(P2IFG & BIT1)

{

while((P2IN & BIT1)==0);

P4OUT ^= BIT7;

send_buf("Pressedrn");

}

P2IFG &=~ BIT1;

}

关键字:msp430f5529  串口通信 引用地址:msp430f5529串口通信

上一篇:基于msp430G2553的低频方波频率、占空比、峰峰值测量函数
下一篇:MSP430按键控制串口发送数据

推荐阅读最新更新时间:2024-11-12 21:44

学习笔记-CCS-MSP430F5529[快速入门篇一]
一·开发环境的选择 关于MSP430的开发环境,有很多种选择,常见的有Energia,CCS,IAR for MSP430,MDK等,本人仅使用过Energia和CCS,这两个开发环境都是TI公司官方给我们用来开发TI板子的开发环境,其中Energia是一个开源的社区驱动型开发环境,界面与Arduino有97%的类似度,如果你之前有过Arduino的开发经验,那么大概率可以无缝衔接到Energia,Arduino的开源库大多都可以移植到Energia,源代码都托管到了github上面,点击Energia 可查看。而CCS是Eclipse软件框架结合嵌入式开发调试功能的产品,对于常用VS,Eclipse以及MDK等环境的朋友
[单片机]
学习笔记-CCS-MSP430F5529[快速入门篇一]
单片机小白学习之路(二十一)---单片机串口通信理解(一)
目标: 单片机串口通信理解(一) 1.通信的基本概念 通信的方式可以分为多种,按照数据传送方式可分为串行通信和并行通信。按照通信的数据同步方式,可分为异步通信和同步通信。按照数据的传输方向又可分为单工、半双工和全双工通信。在这个单片机上起的作用是单片机与上面模块的通信和单片机之间的通信 1.1串行通信与并行通信 (1)串行通信 串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信。 特点:传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂,速度慢 (2
[单片机]
基于ADS的S3C2410实现嵌入式串口通信
引言   ARM ADS全称为ARM Developer suite(ARM开发套件)。ADS的CodeWarrior集成开发环境(IDE)是基于Metrowerks CodeWarrior IDE4.2版本的,经过适当的裁剪以支持ADS工具链,为管理和开发项目提供了简单多样化的图形用户界面,用户可以使用ADS的CodeWarrior IDE为ARM和Thumb处理器开发用C、C++或ARM汇编语言的程序代码,缩短了用户开发项目代码的周期。ADS中包括3个调试器:AXD(ARM ExtendedDebugger)、ARMSD(ARM Symbo l i c Debugger)、ADW/ADU(Appl ICat ion Deb
[单片机]
基于ADS的S3C2410实现嵌入式<font color='red'>串口通信</font>
Stm32RS232串口通信——中断接收发送数据
main.c配置: /* *说明: *PA0:KEY1;PA1:KEY2; *PA2:LED1;PA3:LED2; *PA9:USART1_TX;PA10:USART1_RX */ #include stm32f10x.h #include stm32f10x_rcc.h #include stm32f10x_gpio.h #include stm32f10x_usart.h #include stm32f10x_exti.h #include system_stm32f10x.h #include misc.h void RCC_Configurati
[单片机]
MSP430F5529与常见的矩阵键盘
键盘外观 键盘外观一般是这个样子的,淘宝上常见的有4x4和4x3的,也有不是薄膜而是按键矩阵的键盘,但是原理都大同小异。 键盘原理图 一般来说,键盘有多少行多少列,就有行数+列数这么多的管脚。当按钮按下后,按钮所在行列开关合上,行列之间的管脚就连通了。 单片机实现 4x3键盘 根据键盘的原理图,不难想到我们要用管脚扫描的方式来检测哪个键按下。 将行管脚设为输入,列管脚设为输出(当然也可以反着来),每次只让一个列管脚为高电平,再检测行管脚的电平高低情况,即可检测键盘是哪个键按下了。 初始化管脚 void keyboard_init(){ //设置行管脚为输入 P3DIR &= ~BIT6; //P3.6端口
[单片机]
<font color='red'>MSP430F5529</font>与常见的矩阵键盘
MSP430F5529之1.44寸OLED显示
前言 有几天没更新了,最近一直忙着电赛,学习这个TI处理器芯片,因为我之前并没有接触过。毕竟我学的51单片机和32单片机,感觉这个16位的单片机“食之乏味,弃之可惜”,但是没办法,电赛TI公司赞助的,还是得准备准备哈哈,这里我是用CCS软件来入门的。 一、1.44寸OLED “独白” 其实相对于0.96寸OLED ,该OLED 最明显的特点就是它多出了四个接口(RES、DC、CS、BLK),同时保留了原有的接口(VCC、GND、SCL、SDA),下面讲一下接线问题: 电源接线: VCC :接 5V GND :接地 液晶屏数据线接线: CS : 片选信号 SCL(CLK): SPI 时钟信号引
[单片机]
<font color='red'>MSP430F5529</font>之1.44寸OLED显示
51串口通信程序(带详细注释)
#include reg51.h #include string.h //后面有一个比较函数 #define uchar unsigned char #define uint unsigned int bit UART_Flag=0; //定义串口接收标志位 uchar str ; //定义一数组 uchar length=0; //数组长度从0开始 void init() //初始化uart { TMOD=0X20; //定时器1定时器方式 工作模式2,可自动重载的8位计数器常把定时/计数器1以模式2作为串行口波特率发生器 SCON=0X50; //选择工作模式1使能接收,允许发送,允许接收 EA=1;
[单片机]
RS485轻松取代RS232,实现串口通信太简单!
利用RS232来实现串口通信已经太落后了,现如今串口通信完全可以使用RS485来实现。本文阐述了利用RS485取代RS232实现串口通信的具体操作流程,以及总体的硬件电路设计步骤。  ARM(AdvancedRISCMachines)是对一类微处理器的通称。ARM是微处理器行业的一家知名企业,它设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。ARM微处理器是一种高性能、低功耗的32位微处理器,该处理器广泛应用于嵌入式系统中。ARM9代表了ARM公司主流的处理器,已经在手持电话、机顶盒、数码相机、GPS、个人数字助理以及因特网 设备 等方面有了广泛的应用。在此,以ST公司生产的ARM9系列中典型的STR912FW44X
[嵌入式]
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved