首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

08MR16 SCI发送问题 写入01 发送的是FE ;写入05发送的是E6 [求助]

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  写其他的数进去也是一一对应的 好象有点规律在里面 到底是怎么回事啊

我自逍遥
刚整理了一下串口发出来的数据 发现一个数和他的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)
括号里是串口发出来的 前面是我写入寄存器的
大家帮忙看看 到底是什么问题啊 我觉得是不是那个移位寄存器出毛病了啊? 头疼
我自逍遥
你用示波器看过MR16引脚上的波形吗?
海纳百川  有容乃大
波形? 测哪个引脚? TXD这个脚的?
我觉得是不是上位机和下位机波特率不一致造成的乱码啊
我把上位机的波特率换了一下 发现收到的数据有所变动 不过还是乱码
我自逍遥
通过示波器你可以看出通讯信号的波特率和数据到底对不对。
海纳百川  有容乃大
我用示波器看了一下,发现TXD脚上的频率出奇的高 都9.8MHZ-40MHZ了 按道理是不可能的啊
总线时钟才最高8M 而且就一个串口程序 就那么几行 怎么会出这个问题啊 郁闷死了 对了 本版有没有QQ群啊 这样交流太不方便了
我自逍遥
这不可能。仔细检查一下你的硬件。
海纳百川  有容乃大
返回列表