⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sci.c

📁 dsp2407异步串口使用 适用于初学者 ccs2000运行通过
💻 C
字号:
/*************************************************************
 *Copyright (c) 2005,北京精仪达盛科技有限公司研发部
 *All rights reserved
 *
 *文件名称:sci.c
 *文件标示:
 *摘    要:本文件内容为用tms320lf2407 dsp标准RS232串口实验     
 *          
 *
 *当前版本:1.0
 *作    者:王飞
 *完成日期:2005年2月17日
 *
 *取代版本:
 *原作者  :
 *完成日期:
 *************************************************************/

/************************文件预处理***************************/
#include "exp3_2407.h"
/*************************************************************/

/********************全局变量定义与初始化*********************/

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

/*******************函数、子程序声明与定义********************/
void sys_ini()               //系统初始化子程序
{
 /*关总中断*/
  asm(" setc INTM");         
 /*抑制符号位扩展*/
  asm(" clrc SXM");          
 /*累加器中结果正常溢出*/
  asm(" clrc OVM");          
 /*禁止看门狗*/
  * WDCR=0x00E8;             
 /*CLKIN=10M,CLKOUT=40M,使能sci外围模块*/
  * SCSR1=0x0041; 
 /*使能sci引脚*/   
  * MCRA=0x0003;                                      
 /*清除所有中断标志,"写1清0"*/ 
  * IFR=0xFFFF; 
 /*使能中断1*/
  * IMR=0x0001;                                    
}   

void sci_ini()                  //SCI初始化子程序
{
    /*1位停止位,禁用奇偶校验,禁用回馈测试,地址位协议模式,8位数据位*/
     * SCICCR=0x000F;   
    /*禁止接收错误中断,禁用传输唤醒模式,禁用休眠模式,使能数据发送和接收*/         
     * SCICTL1=0x0023; 
    /*40M CLKOUT,波特率为4800*/         
     * SCIHBAUD=0x0004;
     * SCILBAUD=0x0010;     
    /*使用接收中断,禁用发送中断*/    
     * SCICTL2=0x0002;  
    /*高中断优先级,仿真挂起时完成当前操作*/        
     * SCIPRI=0x0010;    
    /*开总中断*/       
     asm(" clrc INTM");         
}
/*************************************************************/

/*****************中断服务子程序声明与定义********************/
interrupt void nothing()     //哑中断子程序
{
  return;         
}

interrupt void sci_rx()      //串口接受中断子程序
{
     * SCITXBUF=* SCIRXBUF;    
     return;
}
/*************************************************************/

/**************************主程序*****************************/
void main(void)
{ 
  sys_ini();  
  sci_ini(); 

  for(;;)
  {
  }
}
/***************************结束******************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -