ASM 板


LINE

看板 ASM  RSS
我最近正在做RS232与89S51的相关传输。 我想请问一下 我在发送端 丢一个字串 过去 给89S51 然後89S51 再传回给我PC ㄧ个字串(程式内这样设定的... 可是 我在PC的回传值显示上看到却是 31 13 10(hex) 49 D A(10) 为何传回值是 3 个字元 是因为他协定的关系吗? 那我实际上传给89S51我的传送也都会附加 'D' 'A' 这2个字元吗? 我丢的是字串才对 而回传的也是字串(puts("1")); 太久没摸C = =|| 可是又多了一个问题如果我使用 puts('1'); 我只接收到 D A ???? 网路的RS232文献都没有相关说明! --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.33.51.36
1F:→ hayden0828:电脑端用什麽程式??会不会是'CR'跟'LF'换行字元 09/24 06:29
2F:推 ruemann:同意楼上,应该是你送了三个字元过去 09/24 10:36
3F:→ laevatain103:sorry..我打错...那应该是10进位制而非ASCII... 09/24 11:03
※ 编辑: laevatain103 来自: 114.33.51.36 (09/24 11:04) ※ 编辑: laevatain103 来自: 114.33.51.36 (09/24 11:05)
4F:→ laevatain103:我之前有查过ascii码 D A 的确是CR LF 这协定内定的? 09/24 11:06
5F:推 ruemann:你Windows程式的问题,把换行给送出去了 09/24 12:18
6F:→ laevatain103:那传回的值应该是ㄧ个字元才对(51写死的... 09/24 12:33
※ 编辑: laevatain103 来自: 140.128.142.122 (09/24 13:47)
7F:推 ruemann:你直接把TX和RX对接,这样你windows程式送啥就会收到啥 09/24 18:50
8F:→ ruemann:先确认windows程式可以送一个字元後再接回8051看结果 09/24 18:51
9F:→ laevatain103:直接拿线来接吗?= =|| 感觉蛮刺激的 09/24 23:02
10F:推 ruemann:RS232对接测试很正常啊…… 09/25 02:24
我做了对接後发现并无有 CR LF 我做了一些简单的测试 8051(CODE) PC(接收资料显示以10进位表示) puts("1"); 49 13 10 puts('2'); 13 10 printf("3"); 51 printf('4'); link: http://imgur.com/1NPcz (有图有真相) 从以上来推测 应该是 puts(); 此函数所自动附加的! ※ 编辑: laevatain103 来自: 114.33.51.36 (09/30 20:44) ※ 编辑: laevatain103 来自: 114.33.51.36 (09/30 20:45)
11F:推 ruemann:最好是可以并个示波器看波型最准 09/30 23:55
12F:→ ruemann:puts这个函式如果不是你写的,最好去查一下用法 09/30 23:55
13F:→ laevatain103:puts() 是内建的~我正在找相关文件= = 10/01 00:19
我在C51 compiler的文件中找到 int puts (const char *string); Description: The puts function writes string followed by a newline character (‘\n’) to the output stream using the putchar function. ※ 编辑: laevatain103 来自: 114.33.51.36 (10/01 00:35)
14F:→ laevatain103:以上只能解释为什麽有LF..我现在还找不到未啥有CR 10/01 00:58
15F:推 WolfLord:一般M$系统字串'\n'就是解释为"\n\r"而UNIX上才是只有\n 10/01 01:37
16F:→ WolfLord:Keil C里面的内定putchar采用的是看到\n就自动加上\r 10/01 01:38
17F:→ WolfLord:而标准的C函式中puts 是会自动加上\n的,而puts一般都是 10/01 01:39
18F:→ WolfLord:透过 putchar来传送文字的。所以你的问题是由puts跟putch 10/01 01:39
19F:→ WolfLord:ar 两个函式合力构成的,要修正这个问题可以到C51的LIB 10/01 01:41
20F:→ WolfLord:目录中把putchar.c拿出来改 10/01 01:42
21F:推 ruemann:楼上高手 10/01 01:50
感谢楼上大大门~真是让我受益良多! 应该是 \r\n 而不是 \n\r 相信你一定手误了吧XD New line, UNIX中代表ASCII 10(十进位), DOS(Windows)系统中则是ASCII 13 + ASCII 10(十进位). 参考 link: http://ind.ntou.edu.tw/~dada/cgi/Perlsynx.htm (使用搜寻关键字UNIX会把较容易找到) ※ 编辑: laevatain103 来自: 114.33.51.36 (10/01 02:22) ※ 编辑: laevatain103 来自: 114.33.51.36 (10/01 02:24)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP