DCB.fbitfields=&H3003
DCB.parity=2 ※パリティー偶数
この後setcommstate関数でパラメータを設定し、getcommstate関数で
パラメータを確認すると設定がうまく出来ているにもかかわらず、実際の通信ではRS232Cの通信フレーム上に、パリティービットが付加されません。
なにか他に設定が必要な項目があるのでしょうか?
どなたかよろしくご教示お願いします。
それは、おそらくシリアルドライバにおいて、パリティ設定の機能が実装されて
いないためだと思います。ドライバのソースがあるのであればパリティの設定の
処理を見直してみてください。
--
伊藤 優@アキタ電子システムズ
鳥畑です。 早速のご対応ありがとうございます。 心強いです。
さて、不慣れで恐縮ですが、情報が足りませんでした。
まず開発ツールはVisualstudio.net2003です。 これでVBを利用しています。
はじめはターゲットマシンで確認していたのですが、腑に落ちないので、エミュレータで試してみたのですが、現象が一緒です。
ターゲット側のBSPには別の問題があるかもしれませんが、とりあえず、エミュレータでも同じなので、エミュレータ上でパリティーが付くのを確認したいのですが
いかがでしょうか?
なにとぞよろしくお願いいたします。
"伊藤 優" からの元のメッセージ:
状況は大体わかりました。先週・今週と外に出ていますので実際の確認を
することができません。ちょっとお時間を頂いてから確認をしたいと思います。
お尋ねしたいのですが、使用されているエミュレータは eVC 付属の
エミュレータでしょうか?本当であれば最初に確認したターゲットボードの
詳細も確認したいのですが、もしわかりましたら実装しているシリアル
ドライバの出所(たとえば Platform Builder 標準)というレベルで結構
ですので教えてください。
--
伊藤 優@アキタ電子システムズ
エミュレータはVisualStudio.Net2003に付属のCE用エミュレータです。
(WindowsCE.NETエミュレータ)
なおアプリ開発はVBで行っています。
ちなみにWindowsCEのエミュレータ用にはRS232Cのドライバとしてcoredllを
PC用にはkernel32を切り替えて使用しています。
(kernel32でパリティービットが立つかは現在確認中です。)
またターゲットボードは三星のS3C2440コアで、内蔵のserialUARTです。
したがって三星製のBSP(ドライバ)です。
よろしくお願いします。
"伊藤 優" からの元のメッセージ: