智能车制作
标题:
串口接收四个变量并运算。
[打印本页]
作者:
liu_liuk
时间:
2012-5-17 11:04
标题:
串口接收四个变量并运算。
这是一段串口程序,就是串口接收四个变量数据然后分别进行运算,再从串口发出。接收到的数据不知道为什末。求高手帮忙,可有酬劳:362568569
#include <hidef.h>
#include <mc9s12dg256.h>
#pragma LINK_INFO DERIVATIVE "mc9s12dg256"
byte num;
byte rev_data[3];
//.................SCI0模块初始化....................//
void SCI0_Init(void)
{
SCI0BDL=(unsigned char)((16000000UL /* OSC freq */ / 2) / 9600 /* baud rate */ / 16 /*factor*/);
SCI0CR1=0X00;
SCI0CR2=0X2C;
}
//..................主函数...................//
void main(void)
{
SCI0_Init();
DisableInterrupts; /*禁止中断*/
while(1)
{
static uchar k=0;
if(SCI0SR1_RDRF==1)
{
rev_data[k++]=SCI0DRL;
num= rev_data[0]+1; /*接收第一个数据并运算*/
while(!SCI0SR1_TDRE);
SCI0DRL=num; /*把第一个运算结果输出*/
num= rev_data[1]+2; /*接收第二个数据并运算*/
while(!SCI0SR1_TDRE);
SCI0DRL=num; /*把第二个运算结果输出*/
num= rev_data[2]+3; /*接收第三个数据并运算*/
while(!SCI0SR1_TDRE);
SCI0DRL=num; /*把第三个运算结果输出*/
num= rev_data[3]+4; /*接收第四个数据并运算*/
while(!SCI0SR1_TDRE);
SCI0DRL=num; /*接收第四个数据并运算*/
}
}
作者:
xinmengwangran
时间:
2012-5-18 15:51
有点没明白你的问题。你的程序的意思就是第一个数据加一,第二个数据加二,以此类推 然后回发有什么别的奥秘吗??????
作者:
liu_liuk
时间:
2012-5-19 15:48
没别的意思。也不是非依次类推的相加。随便加减一个数。是个固定值、有解决方法吗。拜求解决。
作者:
快乐毛毛虫f1
时间:
2012-5-20 11:19
思考中
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2