#include "msp430x22x4.h"
//此程序是USCI_A0工作在异uart模式下,采用1200波特率进行全双功通讯
//如果只有一块实验板,可以置位USLISTEN来自发自收
// MSP430F2274 MSP430F2274
// (1) (2)
// ----------------- -----------------
// /|\| XIN|- -|XIN |/|\
// | | | | | |
// --|RST XOUT|- -|XOUT RST|--
// | | | |
// | P1.0|-->LED LED<--| |
// | p3.4UCA0TXD|------------------->|p3.5UCA0RXD |
// | p3.5UCA0RXD|------------------->|p3.4UCA0TXD |
// | DVSS|--------------------|DVSS |
__no_init char send_data[256] @ 0x0400; //数据存储首地址为0x0400
int main( void )
{
WDTCTL =WDTPW+WDTHOLD; //关看门狗
BCSCTL1 =CALBC1_1MHZ; //设定DCO为1MHZ
DCOCTL =CALBC1_1MHZ;
volatile unsigned int n;
do //等待晶振稳定
{
IFG1 &=~OFIFG;
for(n=5000;n>0;n--);
} while(OFIFG&IFG1);
P1DIR |=BIT0; //点亮LED
P1OUT |=BIT0;
P3SEL |=BIT4+BIT5; //p3.4为TX,P3.5为RX
P3DIR |=BIT4; //P3.4为输出方向
//UCA0STAT |=UCLISTEN; //调试时用于自发自收
UCA0CTL1 |=UCSSEL0; //时钟源选择32768晶振
UCA0BR1=0; //设置波特率32768/1200=27.3
UCA0BR0=27;
UCA0MCTL |=UCBRS1; //UCBRSx=INT(0.3*8)=2
UCA0CTL1 &=~UCSWRST; //退出USCI设置
IE2 |=UCA0RXIE+UCA0TXIE; //使能收发中断
_BIS_SR(LPM3_bits+GIE); //进入低功耗3并使能总中断
_NOP();
return 0;
}
#pragma vector =USCIAB0RX_VECTOR
__interrupt void rx_isr(void)
{
static char i=0;
P1OUT ^=BIT0; //如果作为接收方,每收一帧LED翻转一次
send_data[i]=UCA0RXBUF; //将收到的数据放入0x0400开始的RAM地址
if(i==255) //比较是否已经收到了256个数据
{
i=0; //接收了256个后,再从0x0400开始放数据
}
else
{
i++;
}
}
#pragma vector =USCIAB0TX_VECTOR
__interrupt void tx_isr(void)
{
static char j=0;
P1OUT ^=BIT0; //如果作为接收方,每收一帧LED翻转一次
unsigned int x;
for(x=0;x<15000;x--); //在发送前一段延时,确保对方已经处理完上一帧数据
UCA0TXBUF=j; //将待发数据放入发送缓存寄存器中
j++;
}
没有合适的资源?快使用搜索试试~ 我知道了~
430 2274 各模块例程
共173个文件
pbd:19个
c:19个
dbgdt:19个
需积分: 9 9 下载量 145 浏览量
2008-08-03
10:29:10
上传
评论
收藏 284KB RAR 举报
温馨提示
这是2274 各模块的源代码
资源推荐
资源详情
资源评论
收起资源包目录
430 2274 各模块例程 (173个子文件)
main.c 3KB
main.c 3KB
main.c 3KB
main.c 2KB
main.c 2KB
main.c 2KB
main.c 2KB
main.c 2KB
main.c 2KB
main.c 2KB
main.c 1KB
main.c 1KB
main.c 1KB
main.c 1KB
main.c 1KB
main.c 1KB
main.c 1017B
main.c 837B
main.c 746B
ADC10_sch_st.d43 15KB
usci_duplex_1200.d43 15KB
usci_spi_tx.d43 15KB
Flash_RW.d43 14KB
i2c_int_sa.d43 14KB
i2c_int_ma.d43 14KB
OA_M5.d43 14KB
usci_spi_rx.d43 13KB
TA_2.d43 13KB
TA_3.d43 13KB
ADC10_sch_rt.d43 13KB
TA_1.d43 13KB
WDT_timer.d43 13KB
OA_M4.d43 13KB
OA_M2.d43 13KB
0A_M3.d43 13KB
Clock_CTL.d43 13KB
WDT_WDT.d43 12KB
IO.d43 12KB
Flash_RW.dbgdt 9KB
TA_2.dbgdt 9KB
OA_M4.dbgdt 8KB
ADC10_sch_st.dbgdt 8KB
i2c_int_sa.dbgdt 8KB
ADC10_sch_rt.dbgdt 8KB
usci_spi_tx.dbgdt 8KB
WDT_WDT.dbgdt 7KB
OA_M2.dbgdt 7KB
TA_1.dbgdt 7KB
usci_spi_rx.dbgdt 7KB
usci_duplex_1200.dbgdt 6KB
IO.dbgdt 6KB
0A_M3.dbgdt 6KB
i2c_int_ma.dbgdt 5KB
WDT_timer.dbgdt 5KB
OA_M5.dbgdt 4KB
Clock_CTL.dbgdt 63B
TA_3.dbgdt 63B
TA_1.dep 2KB
i2c_int_ma.dep 2KB
i2c_int_sa.dep 2KB
Clock_CTL.dep 2KB
usci_duplex_1200.dep 2KB
ADC10_sch_rt.dep 2KB
ADC10_sch_st.dep 2KB
usci_spi_rx.dep 2KB
usci_spi_tx.dep 2KB
WDT_timer.dep 2KB
Flash_RW.dep 2KB
WDT_WDT.dep 2KB
0A_M3.dep 2KB
OA_M2.dep 2KB
OA_M5.dep 2KB
OA_M4.dep 2KB
TA_2.dep 2KB
IO.dep 2KB
TA_3.dep 2KB
usci_duplex_1200.dni 1016B
i2c_int_sa.dni 1015B
ADC10_sch_st.dni 956B
TA_2.dni 956B
TA_1.dni 956B
IO.dni 956B
usci_spi_rx.dni 956B
WDT_WDT.dni 956B
WDT_timer.dni 956B
ADC10_sch_rt.dni 956B
i2c_int_ma.dni 956B
OA_M4.dni 956B
OA_M2.dni 956B
OA_M5.dni 956B
usci_spi_tx.dni 956B
0A_M3.dni 940B
Flash_RW.dni 940B
Clock_CTL.dni 610B
TA_3.dni 610B
Clock_CTL.ewd 12KB
ADC10_sch_rt.ewd 12KB
usci_spi_rx.ewd 12KB
i2c_int_ma.ewd 12KB
usci_duplex_1200.ewd 12KB
共 173 条
- 1
- 2
资源评论
backet
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- B题:使用行车轨迹估计交通信号灯周期问题.pdf
- blender中使用python console的实际成功过程和命令记录
- 掌握Dijkstra算法:最短路径计算详解
- PC-DMIS 坐标系拟合方法(3-2-1法建坐标系,迭代法)
- Installing Anaconda and PyCharm - Marco Sammon
- git使用文档(一步一步教你使用Git仓库管理代码)
- 进制转换(通用版).cpp
- linux实践之从DistroWatch排名第三的EndeavourOS转到排名第五的Manjaro工作机迁移
- Discuz模板+资讯博客课程干货+商业版(GBK+UTF)
- 基于Selenium的Java爬虫实战(内含谷歌浏览器Chrom和Chromedriver版本123.0.6292.0)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功