PDA

View Full Version : عدم كاركرد دستور at در #C



ali_kolahdoozan
پنج شنبه 02 خرداد 1387, 11:20 صبح
دستور at خالي توي hyper terminal كار ميده اما وقتي
port.write("at/r"); توي #‍c كار نمي ده دارم با سريال مانيتور چك ميكنم براي اولي درست است و ok ميدهد اما براي بعدي نه

noorsoft
پنج شنبه 02 خرداد 1387, 11:36 صبح
شماره پورتی که داری با اون کار میکنی چنده؟

ali_kolahdoozan
پنج شنبه 02 خرداد 1387, 11:58 صبح
com4 از اين پورتهاست كه به صورت pci نصب ميشوند اما با نرم افزارهاي ديگر يا hyper حتي sms هم با همين پورت مي فرستم اما با #C نه

noorsoft
پنج شنبه 02 خرداد 1387, 16:22 عصر
شما در C# فقط با Com1 - Com2 میتونین مستقیما کار کنید و بقیه پورتها که PCI یا USB هستند را درست کار نمی کنه
در واقع هایپر ترمینال از Tapi برای بازکردن پورتها استفاده می کنه برای همین با همه پورتها کامپتیبل میشه

ali_kolahdoozan
شنبه 04 خرداد 1387, 10:01 صبح
من شماره پورتم رو توي device manager عوض كردم و تبديل به com1 كردم . به من جواب نداد آيا اين تغيير فايده اي دارد يا واقعا بايد com1 باشد . وقتي دستور at روي hyper ميزنم جواب ok ميده اما با كد من نه اينم كدم از using هم استفاده نكردم تا با يك copy/paste راحت تستش كنيد



System.IO.Ports.SerialPort comPort = new System.IO.Ports.SerialPort();
comPort.PortName = "COM1";
comPort.BaudRate = 9600;
comPort.Handshake =System.IO.Ports.Handshake.RequestToSend;
comPort.Parity = System.IO.Ports.Parity.None;
comPort.StopBits =System.IO.Ports.StopBits.One;
comPort.DataBits = 8;
comPort.ReadBufferSize = 10000;
comPort.ReadTimeout = 1000;
comPort.WriteBufferSize = 10000;
comPort.WriteTimeout = 10000;
comPort.RtsEnable = true;
comPort.Open();
comPort.DiscardInBuffer();
comPort.DiscardOutBuffer();
comPort.Write("AT\r");
comPort.Close();


آيا در كد من ايرادي هست ؟‌با serial port monitor تست كردم جواب ok نداد اما با hyper terminal چرا دست جواب ميداد

ali_kolahdoozan
یک شنبه 05 خرداد 1387, 00:36 صبح
کسی نبود یک کمکی بکنه ؟

noorsoft
یک شنبه 05 خرداد 1387, 08:31 صبح
دوست عزیز شماره پورت مهم نیست از نظر فیزیکی مهمه
پورتهای اینترنال با طریقه ای که شما برنامه نویسی می کنید قابل استفاده هستند و از پورتهایی که بعدا اضافه میکنید نمی تو نین استفاده کنین
براتون یک راه حل پیدا میکنم و پست میزارم

ali_kolahdoozan
دوشنبه 06 خرداد 1387, 08:49 صبح
الان دقیقا روی com1 هستم . دیگر پورت اضافی هم در کار نیست اما باز هم کار نمی دهد

noorsoft
دوشنبه 06 خرداد 1387, 17:15 عصر
شما از موبایل استفاده میکنید یا جی اس ام مودم؟

ali_kolahdoozan
دوشنبه 06 خرداد 1387, 22:22 عصر
با هر 2 تست کردم

noorsoft
چهارشنبه 08 خرداد 1387, 13:51 عصر
دلیلش تنظیماتی که انتخاب کرده اید

bit per sec 115200
data bit 8
party None
Stop bit 1
flow control Hardware Flow Control

ali_kolahdoozan
سه شنبه 14 خرداد 1387, 13:13 عصر
ممنون . ولي باز هم نشد

Mah
یک شنبه 20 مرداد 1387, 17:40 عصر
سلام .
من از این تنظیمات برای NOKIA7610 وSony K750 استفاده کردم :

9600
Data bit=8
Parity=N
StopBit=1

جواب گرفتم .

noorsoft
دوشنبه 21 مرداد 1387, 06:24 صبح
سرعت انتقال زیاد در موبایلها مهم نیست اصل بقیه تنظیمات پورته فکر کنم شما بتونین سرعت را بالاتر ببرین و باز هم جواب بگرین اینجوری برنامتون سریع تر میشه

موفق باشین