【DSP】TMS320F28035 SCI例程(自发自收+查询)
来源:互联网 发布:网络机柜批发cqwsjg 编辑:程序博客网 时间:2024/05/29 03:36
#include "DSP28x_Project.h" // Device Headerfile and Examples Include Filevoid scia_loopback_init(void);void scia_fifo_init(void);void error();Uint16 LoopCount;Uint16 ErrorCount;Uint16 SendChar;Uint16 ReceivedChar;void main(void){ InitSysCtrl(); InitSciGpio();//初始化SCI引脚 DINT; IER = 0x0000; IFR = 0x0000; InitPieVectTable(); PieCtrlRegs.PIECTRL.bit.ENPIE = 1;//使能PIE PieCtrlRegs.PIEACK.all = 0xFFFF;//写1清零,允许所有PIE都能被响应 EINT;//开启总中断 LoopCount = 0; ErrorCount = 0; scia_fifo_init(); // Initialize the SCI FIFO scia_loopback_init(); // Initalize SCI for digital loop back SendChar = 0; for(;;) { DELAY_US(1000000); //将要发送的数据存入SCITXBUF SciaRegs.SCITXBUF = SendChar; //等待发送完成 while(SciaRegs.SCIFFRX.bit.RXFFST !=1) { } // wait for RRDY/RXFFST =1 for 1 data available in FIFO //存储接收数据 ReceivedChar = SciaRegs.SCIRXBUF.all; //自检 if(ReceivedChar != SendChar) error(); //发送的数据 SendChar++; // Limit the character to 8-bits SendChar &= 0x00FF; LoopCount++; }}// Step 7. Insert all local Interrupt Service Routines (ISRs) and functions here:void error(){ ErrorCount++;}// Test 1,SCIA DLB, 8-bit word, baud rate 0x000F, default, 1 STOP bit, no parityvoid scia_loopback_init(){ SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback //配置通讯协议 // No parity,8 char bits, // async mode, idle-line protocol SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK, // Disable RX ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.all =0x0003; SciaRegs.SCICTL2.bit.TXINTENA =1; SciaRegs.SCICTL2.bit.RXBKINTENA =1; SciaRegs.SCIHBAUD =0x0000; SciaRegs.SCILBAUD =0x000F; SciaRegs.SCICCR.bit.LOOPBKENA =1; // Enable loop back SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset}// Initalize the SCI FIFOvoid scia_fifo_init(){ SciaRegs.SCIFFTX.all=0xE040; SciaRegs.SCIFFRX.all=0x2044; SciaRegs.SCIFFCT.all=0x0;}
阅读全文
0 0
- 【DSP】TMS320F28035 SCI例程(自发自收+查询)
- 【DSP】TMS320F28035 ADC例程(ePWM+查询)
- 【DSP】TMS320F28035 ADC例程(软件触发+查询)
- 【DSP】TMS320F28035 ADC例程(ePWM+中断)
- 【DSP】TMS320F28035 GPIO例程
- 【DSP】TMS320F28035 定时器中断例程
- 【DSP】TMS320F28035 ADC例程(软件触发+中断)
- linux uart 串口自发自收例程
- 【DSP】TMS320F28035 GPIO外部中断例程
- 多播(自发自收)
- 【DSP】TMS320F28035 IQmath配置
- spi测试自发自收(中断通信方式)
- STM32F3—CAN通信自发自收
- udp 封装 可自发自收
- opencore UART 16550 自发自收验证通过
- 嵌入式linux串口通信自发自收测试程序
- 基于UART实现数据的自发自收
- Verilog HDL 学习篇——UART自收自发
- 扩展文件系统resize2fs、lvm
- Error:Execution failed for task ':app:validateSigningRelease'. > Keystore file F:\gdvictor\TK05DB\Sa
- 1962-打印数字图形
- 强命名程序集
- 不融资,如何在大数据BI市场占据一席之地
- 【DSP】TMS320F28035 SCI例程(自发自收+查询)
- JAVA基础训练——用链表实现栈的功能
- 移动测试智能化实践
- php使用redis
- iOS NSDictionary键值拼接一起输出(并排序和加密)
- javascript的逻辑判断和循环
- poj2377
- Eclipse4.6 透过代理服务器proxy在线更新plug in配置问题
- Linux NFS服务器的安装与配置