英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

 找回密码
 立即注册
搜索
电子烟方案单片机单片机开发深圳单片机开发
单片机方案国产单片机8位单片机电子烟方案开发
查看: 3867|回复: 0
打印 上一主题 下一主题

30F4013谁能给写个MC30的串口通讯原代码供参考

[复制链接]
跳转到指定楼层
1#
发表于 2009-4-27 14:34:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <p30F4013.h>

// 配置位
_FOSC(CSW_FSCM_OFF & XT_PLL4);   //XT 为4xPLL 振荡器, 失效保险时钟关闭
_FWDT(WDT_OFF);                     //禁止看门狗定时器
_FBORPOR(PBOR_OFF & MCLR_EN);    //禁止掉电复位,使能MCLR复位
_FGS(CODE_PROT_OFF);               //禁止代码保护

#define BAUDRATE 9600    //所需的波特率
#define FCY  4000000     // XTAL = 4.000Mhz; 4 x PLL

unsigned char RxValue;
void InitUART1(void);

//UART1 TX中断服务程序
void __attribute__((__interrupt__)) _U1TXInterrupt(void)
{
IFS0bits.U1TXIF = 0; //清中断标志位
}
//UART1 RX中断服务程序
void __attribute__((__interrupt__)) _U1RXInterrupt(void)
{
IFS0bits.U1RXIF = 0;           //清中断标志位
RxValue = (char)U1RXREG;      //从接收寄存器读值
   U1TXREG=RxValue;     //发送接收到的数据
}
//主程序
int main(void)
{
  InitUART1();
  while(1);
  return 0;
}
//初始化UART1
void InitUART1(void)
{
  U1MODE=0x8060;
  U1STA=0x8400;
  U1BRG=((FCY/16)/BAUDRATE)-1;
}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|公司首页|Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 ( 粤ICP备09008620号 )

GMT+8, 2024-12-25 09:42 , Processed in 0.052636 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表