亚洲欧美日韩国产一区二区精品_亚洲国产精品一区二区动图_级婬片A片手机免费播放_亚洲国产成人Av毛片大全,男女爱爱好爽好疼视频免费,中文日韩AV在线,无码视频免费,欧美在线观看成人高清视频,在线播放免费人成毛片,成 人 网 站 在 线 视 频A片 ,亚洲AV成人精品一区二区三区

機械社區(qū)

 找回密碼
 注冊會員

QQ登錄

只需一步,,快速開始

搜索
查看: 5572|回復(fù): 10
打印 上一主題 下一主題

利用MSComm進行串口通信小結(jié)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2011-4-17 20:39:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
之前發(fā)過幾個帖子,,求助串口通信程序的編制,得到了無能前輩的無私幫助,,還有我的兩位同學(xué)的大力支持,。
$ ~9 J- m8 q8 S8 Q& o* J; W  u現(xiàn)在程序基本完成,,寫個小結(jié),說不上經(jīng)驗,,畢竟我也是第一次寫通信程序,,算是教訓(xùn)吧。
7 E9 A/ g8 o0 Y( N6 L+ j# w1. 通信協(xié)議的理解7 B, f8 V0 b# T$ l1 N/ Q
每個硬件設(shè)備廠商都有自己的一套通信協(xié)議,,比如發(fā)送或接收命令的定義,,發(fā)送命令之后返回數(shù)據(jù)的定義等等。這應(yīng)該是通信程序收發(fā)數(shù)據(jù)邏輯順序的依據(jù),。
0 S& C" \* z$ C, {4 I) X5 @2. 接受,、發(fā)送數(shù)據(jù)的格式2 J; k( [( `" g5 P* j$ P. G: `
MSComm接、發(fā)數(shù)據(jù)有兩種格式,,在屬性InputMode里設(shè)置,,一為comInputModeBinary,,二進制;二為comInputModeText,,為文本,。6 G( |9 S' ~0 d$ f0 \# f$ a3 m
我之前就是數(shù)據(jù)格式弄混了,所以一直出現(xiàn)錯誤,。例如,,MSComm1.Output = "R00000016U"," "里面的就是文本形式的數(shù)據(jù),,如果InputMode里設(shè)置的是InputMode=comInputModeBinary,,那么發(fā)送肯定有誤。' \. f+ A7 U! j  B0 A  \- \
3. 清空緩存和清空接收數(shù)據(jù)存放的緩沖數(shù)組  B& i  d& s% o$ k, }5 m9 d
每收發(fā)一次數(shù)據(jù),,就要清空緩存或是數(shù)據(jù)存放的緩沖數(shù)組,。以免兩次收發(fā)的數(shù)據(jù)發(fā)生交疊,產(chǎn)生錯誤,。
/ }6 ?% ~5 N- ?
$ D) W% b  T1 l3 w3 _* l3 U6 e$ x: X. F6 }
這三點是之前編程時最常犯的錯誤,。希望能給各位需要編制串口通信程序的社友提個醒。
0 m3 p- D$ ]9 Q! j4 l' s- V) B
9 f5 {$ k  C6 E1 u& B8 C7 h+ @7 [再次感謝各位社友的關(guān)注和幫助,!& E) M' b6 A8 c# H+ `2 w
. R% o+ X6 e) \. B# `
+ x8 d1 _; ^7 z, }, y& {

% d/ F# n- m/ \' i: E2 C

點評

可能給你幫了倒忙了……  發(fā)表于 2011-4-17 21:00
樓主這種精神值得學(xué)習(xí),解決了問題上來還晾下,,很多大俠一問不知歸處了,。哈哈  發(fā)表于 2011-4-17 20:55

評分

參與人數(shù) 2威望 +11 收起 理由
metalstorm + 1
舟航 + 10

查看全部評分

2#
發(fā)表于 2011-4-17 21:24:35 | 只看該作者
請教樓主,,這類面向硬件的通訊程序大都用什么語言來寫的?
3#
 樓主| 發(fā)表于 2011-4-17 21:41:38 | 只看該作者
回復(fù) metalstorm 的帖子* K$ e# A) l* y" G+ N4 H7 e
3 C' g: F3 Q9 N$ w- j. M2 R% ?
我做的是串口通訊,用API函數(shù),,或是MSComm。
: d, v  M+ b! o+ p4 m通信程序C和VB都可以編,。
9 q. u2 h, j4 |2 G" r6 d

評分

參與人數(shù) 1威望 +1 收起 理由
metalstorm + 1

查看全部評分

4#
發(fā)表于 2011-4-18 18:33:30 | 只看該作者
回復(fù) robi 的帖子' q' \6 B  I  _# X* a3 M) A

1 ^9 k: O' w. O你有用VC編的和PLC通訊的程序嗎?如有的話可發(fā)到我的郵箱:[email protected],。不勝感激
5#
 樓主| 發(fā)表于 2011-4-18 23:07:21 | 只看該作者
回復(fù) happqiwei 的帖子4 r( K& h/ N+ ]. D* `: E3 H

2 _8 R- t( O' W" b1 I$ B6 j具體需要實現(xiàn)什么功能呢 不同功能的實現(xiàn)程序不一樣
& Q9 X7 M; g7 @" i) S
6#
發(fā)表于 2011-4-19 10:12:41 | 只看該作者
回復(fù) robi 的帖子
- p3 f' |0 }5 y
/ e+ t; `7 q  T" N5 @: @0 ?, v就是通過一個簡單的界面對PLC輸入輸出或輔助寄存器按位進行讀取和控制,,以及讀取數(shù)據(jù)寄存器的數(shù)值。如果有三菱PLC和S7-200PLC的例子最好,。主要是不知道該怎么做,,想找個示例程序參考參考,謝謝,!
7#
發(fā)表于 2011-4-19 14:00:31 | 只看該作者
謝謝樓樓主的分享,,在此支持下~~
8#
 樓主| 發(fā)表于 2011-4-23 22:13:31 | 只看該作者
回復(fù) happqiwei 的帖子) f" d; Y3 V' E+ K9 l; S
( H$ `+ K' K4 ^6 |: J7 e
我現(xiàn)在正在做一個用VB監(jiān)控DB72的程序。做好了再拿到論壇來跟大家探討,。
. C- p+ T0 N0 C. ?6 a
9#
 樓主| 發(fā)表于 2011-4-23 22:41:26 | 只看該作者
回復(fù) happqiwei 的帖子
* h& @* O6 |" S8 j% L& y* m0 g2 `( A& [' j5 b$ ~2 |7 s3 ~, q
西門子PLC可以用FB2\FB3進行DB的讀寫,。可以用step7軟件講數(shù)據(jù)放入數(shù)控系統(tǒng)變量R參數(shù)中,,再通過VB或C,,使用DDE,將數(shù)據(jù)讀取出來,。
4 m7 N3 C( H3 q$ @6 A$ t當(dāng)然你說讀取的是位數(shù)據(jù),,用R參數(shù)可能不便。我現(xiàn)在準(zhǔn)備用VB直接讀,,應(yīng)該不難的,。
3 A0 L) _) M7 P: v: T4 O
10#
發(fā)表于 2011-4-25 12:51:47 | 只看該作者
有機會試試看,串口通訊現(xiàn)在仍然有活力呀,。
您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規(guī)則

小黑屋|手機版|Archiver|機械社區(qū) ( 京ICP備10217105號-1,京ICP證050210號,,浙公網(wǎng)安備33038202004372號 )

GMT+8, 2025-2-21 04:37 , Processed in 0.055478 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表