درسته. کد اسکی اونا معادل g h i هستش. LCD رو غیرفعال کنید و فقط و فقط دیتا رو به پورت سریال بفرستید.
توی کتابخونش هم همین کدهای شماست، شما مشکلتون از پایه هستش.
ال سی دی هم غیر فعال کردم باز جواب نداد،مثل قبل بود،شما نمونه برنامه ندارید واسه ارتباط usart0_یا usart2که به کامپیوتر وصلش کرده باشید جواب گرفته باشه؟
این برنامه رو خودم روی 3 تا برد جدا اجرا کردم. تا 3Mbps هم برام درست جواب داده. فقط 3 تا نکته:
1- کلاک واحد UART0 رو من گزاشتم 100MHz . یعنی مثل خود کلاک CPU. شما نمیخواد عوضش کنی.
2- فقط برو توی تابع UART0_init و پایه ها رو درست کن. میشه خط 16و17 تو فایل UART.C .
3- من با jlink کار کردم. اگر از بوت لودر استفاده می کنی، تنظیماتش رو انجام بده. http://s3.picofile.com/file/8196780750/mo.rar.html
این برنامه رو خودم روی 3 تا برد جدا اجرا کردم. تا 3Mbps هم برام درست جواب داده. فقط 3 تا نکته:
1- کلاک واحد UART0 رو من گزاشتم 100MHz . یعنی مثل خود کلاک CPU. شما نمیخواد عوضش کنی.
2- فقط برو توی تابع UART0_init و پایه ها رو درست کن. میشه خط 16و17 تو فایل UART.C .
3- من با jlink کار کردم. اگر از بوت لودر استفاده می کنی، تنظیماتش رو انجام بده. http://s3.picofile.com/file/8196780750/mo.rar.html
خط 16و17که مشکلی نداره،چیشو درست کنم؟ پروگرام کردم اما uنشون میده
خط 16و17که مشکلی نداره،چیشو درست کنم؟ پروگرام کردم اما uنشون میده
نگفتم مشکل اره، گفتم با پایه های مدنظر خودت تنظیم کن.
از max232 استفاده می کنی یا مبدل usb2ttl ؟
چون مشکل از کد نیست. از ترمینال کامپیوتر هم نیست به گفته خودت. می مونه سخت افزار واسط .
نگفتم مشکل اره، گفتم با پایه های مدنظر خودت تنظیم کن.
از max232 استفاده می کنی یا مبدل usb2ttl ؟
چون مشکل از کد نیست. از ترمینال کامپیوتر هم نیست به گفته خودت. می مونه سخت افزار واسط .
من از برد آموزشی همین سایت استفاده میکنم،اون سمت هم از مبدل یو اس بی به ttl سایت آفتاب رایانه استفاده میکنم،که پنج پایه هست،rx_tx_gnd_3.3v_5v
بعد از دستور ارسال یک LED روشن کن. میخوام بدونم از تابع ارسال میاد بیرون یا نه ؟
اینو هم غیر فعال کن.
[code=c]NVIC_EnableIRQ(UART2_IRQn) ;[/code]
از کدی که بهت دادم استفاده کن.
آقا دستت درد نکنه،اونجا که گفتی سخت افزارش باید باشه من رفتم چک کردم سمت مبدل یو اس بی به سریال یه ماکس232گزاشتم درست شد،چون برد آموزشی هم ماکس 232داره،آقا خیلی خیلی نوکرم خیلی کمکم کردی،همون برنامه خودم الان می فرسته،حالا واسه دریافت چطور عمل کنم؟ من درنهایت هدفم اینه با SIM900ارتباط برقرار کنم
خواهش می کنم.
برای دریافت دو تا راه داری :
1- استفاده از روش پولینگ یا همون getchar
2- استفاده از وقفه دریافت. مثلا یک بافری رو بزاری اونجا پر بشه و بعد از زمان مشخصی دیتا رو بخونی.
وقتی به SIM900 دستور ی فرستی، بعد از یک مدت (بسته به دستورت) یک سری رشته رو برمیگردونه، پس شما مثلا بعد از 400 میلی ثانیه بافر ریافت رو بخون.
خواهش می کنم.
برای دریافت دو تا راه داری :
1- استفاده از روش پولینگ یا همون getchar
2- استفاده از وقفه دریافت. مثلا یک بافری رو بزاری اونجا پر بشه و بعد از زمان مشخصی دیتا رو بخونی.
وقتی به SIM900 دستور ی فرستی، بعد از یک مدت (بسته به دستورت) یک سری رشته رو برمیگردونه، پس شما مثلا بعد از 400 میلی ثانیه بافر ریافت رو بخون.
بله.
تو همون کد اولیه که داده بودید هم روش دریافت وقفه بود.
الان توی وقفه یه بافر گزاشتم و رشته دریافت میکنم،اما مشکلم اینه تا چندتا کارکتر بگیره؟ شرط اینتر که می زارم عمل نمی کنه،چکار کنم که کارکتری رو از دست ندم؟
دیدگاه