سلام دوستان
من پروژه ای بستم که در اون از طریق یک کارت شبکه wireless به یک wireless access point متصل می شوم و از طریق access point هم با یک قطعه واسط (TCP EZL) به یک میکرو متصل هستم که کار این قطعه تبدیل پروتکل TCP/IP به serial هست. برنامه هم با visual C# در کامپیوتر نوشتم که به وسیله socket ها اطلاعاتم رو به کارت شبکه ، اکسس پینت و میکرو می فرستم و در میکرو هم از طریق ارتباط USART اطلاعات می گیرم ، برای Command ها و تعریف هایی که خودم نوشتم مشکلی ندارم و دستگاههایی رو که می خواهم کنترل می کنم فقط زمانی که می خواهم یک text رو روی LCD عادی که به PORT A میکرو متصل کردم نمایش بدم ، اون چیزی رو که میفرستم نشان نمیده و علائم نامربوطی نشان می دهد. قابل توجه دوستان که اطلاعات باید به صورت Byte فرستاده شود. یعنی من text را به یک CharArray تبدیل می کنم وبه هر charا یک Byte اختصاص می دم بعدا مثلا در یک SendingTextBuffer[] می فرستم و در میکرو با دستور gets(TextArray,8) اطلاعات رو می گیرم و با دستور lcd_puts(TextArray) میخواهم اون را نمایش بدم . اما تنیجه نمی گیرم ، میشه دوستان راهنمایی کنند که چی کار کنم ؟ پیشا پیش ممنون !
برنامه دقیق تر C#
char[] chrOutput = strOutput.ToCharArray();
TcpClient tcpClnt = new TcpClient();
tcpClnt.Connect(IPEndPoibt, PortNum);
Stream stm = tcpClnt.GetStream();
byte[] SendingTextBuffer = Encoding.ASCII.GetBytes(chrOutput);
stm.Write(SendingTextBuffer, 0, SendingTextBuffer.Length);
من پروژه ای بستم که در اون از طریق یک کارت شبکه wireless به یک wireless access point متصل می شوم و از طریق access point هم با یک قطعه واسط (TCP EZL) به یک میکرو متصل هستم که کار این قطعه تبدیل پروتکل TCP/IP به serial هست. برنامه هم با visual C# در کامپیوتر نوشتم که به وسیله socket ها اطلاعاتم رو به کارت شبکه ، اکسس پینت و میکرو می فرستم و در میکرو هم از طریق ارتباط USART اطلاعات می گیرم ، برای Command ها و تعریف هایی که خودم نوشتم مشکلی ندارم و دستگاههایی رو که می خواهم کنترل می کنم فقط زمانی که می خواهم یک text رو روی LCD عادی که به PORT A میکرو متصل کردم نمایش بدم ، اون چیزی رو که میفرستم نشان نمیده و علائم نامربوطی نشان می دهد. قابل توجه دوستان که اطلاعات باید به صورت Byte فرستاده شود. یعنی من text را به یک CharArray تبدیل می کنم وبه هر charا یک Byte اختصاص می دم بعدا مثلا در یک SendingTextBuffer[] می فرستم و در میکرو با دستور gets(TextArray,8) اطلاعات رو می گیرم و با دستور lcd_puts(TextArray) میخواهم اون را نمایش بدم . اما تنیجه نمی گیرم ، میشه دوستان راهنمایی کنند که چی کار کنم ؟ پیشا پیش ممنون !
برنامه دقیق تر C#
char[] chrOutput = strOutput.ToCharArray();
TcpClient tcpClnt = new TcpClient();
tcpClnt.Connect(IPEndPoibt, PortNum);
Stream stm = tcpClnt.GetStream();
byte[] SendingTextBuffer = Encoding.ASCII.GetBytes(chrOutput);
stm.Write(SendingTextBuffer, 0, SendingTextBuffer.Length);
دیدگاه