📄 sci.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 + -