Board logo

标题: 08MR16 SCI发送问题 写入01 发送的是FE ;写入05发送的是E6 [求助] [打印本页]

作者: juzi301    时间: 2006-11-20 15:14     标题: 08MR16 SCI发送问题 写入01 发送的是FE ;写入05发送的是E6 [求助]

EnableInterrupts; /* enable interrupts */
  CONFIG=0x19;
/*SCI初始化*/ 


SCBR=0x04;//波特率9600
  SCC1_ENSCI=1; //开串口
  SCC2_TE=1; //开发送  只发不受 禁止中断
  asm{
  LDA SCS1};


MOV #0x01,SCDR
loop:BRCLR 7,SCS1,loop
MOV #5,SCDR
loop2:BRCLR 7,SCS1,loop2

现在可以发送了 程序如上 但 我写0X01 他发送的是FE 我写0X05 他发送的是E6  写其他的数进去也是一一对应的 好象有点规律在里面 到底是怎么回事啊


作者: juzi301    时间: 2006-11-20 16:23

刚整理了一下串口发出来的数据 发现一个数和他的2倍发出来的是一样的 比如
01(FE) 02(FE) 03(F8) 04(FE) 05(E6) 06(F8) 07(E0) 08(FE) 09(9E) 10(E6) 11(98)
12(F8) 13(86) 14(E0)
括号里是串口发出来的 前面是我写入寄存器的
大家帮忙看看 到底是什么问题啊 我觉得是不是那个移位寄存器出毛病了啊? 头疼
作者: strongchen    时间: 2006-11-21 09:23

你用示波器看过MR16引脚上的波形吗?
作者: juzi301    时间: 2006-11-21 18:23

波形? 测哪个引脚? TXD这个脚的?
我觉得是不是上位机和下位机波特率不一致造成的乱码啊
我把上位机的波特率换了一下 发现收到的数据有所变动 不过还是乱码
作者: strongchen    时间: 2006-11-22 09:46

通过示波器你可以看出通讯信号的波特率和数据到底对不对。
作者: juzi301    时间: 2006-11-22 14:30

我用示波器看了一下,发现TXD脚上的频率出奇的高 都9.8MHZ-40MHZ了 按道理是不可能的啊
总线时钟才最高8M 而且就一个串口程序 就那么几行 怎么会出这个问题啊 郁闷死了 对了 本版有没有QQ群啊 这样交流太不方便了
作者: strongchen    时间: 2006-11-22 15:29

这不可能。仔细检查一下你的硬件。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0