با سلام برادري كه جواب گرفتي مارو هم راهنمايي كن من كدهارو با avr مي فرستم ولي خبري نيست. با ميكروسوئيچ بستم كار مي كنه
با سلام برادري كه جواب گرفتي مارو هم راهنمايي كن من كدهارو با avr مي فرستم ولي خبري نيست. با ميكروسوئيچ بستم كار مي كنه
سلام دوستان من راش انداختم
باید تمام اعداد رو در حالت hex جمع بزنید S+ VER+ Len+ CMD+ Feedback+ para1+ para2 مقادیر اینا رو با هم جمع میکنی بعد همشونو not میکنی مقدارشو میزاری توی checksum در ضمن سه متغییر اول رو بدون تغییر میزاری
آقایونی که با این ماژول کار میکنن
چکسام واسه موقعیه که بخوای امنیت رو بالا ببری که معمولا ما نمیخوایم پس بدون چکسام استفاده کنید.
بنده تست کردم جواب میده بدون چک سام
اعداد رو هم نیاز نیست به هگز تبدیل کنید همون دسیمال بفرستید.
نمونه برنامه بسکام با چکسام و بدون چکسام.
'Printbin &H7E ; &HFF ; &H06 ; &H0C ; &H00 ; &H00 ; &H00 ; &HEF 'reset
'Printbin &H7E ; &HFF ; &H06 ; &H06 ; &H00 ; &H00 ; &H16 ; &HEF 'volume
'Printbin &H7E ; &HFF ; &H06 ; &H01 ; &H00 ; &H00 ; &H00 ; &HEF 'next
'Printbin &H7E ; &HFF ; &H06 ; &H0E ; &H00 ; &H00 ; &H00 ; &HEF 'puse
'Printbin &H7E ; &HFF ; &H06 ; &H0D ; &H00 ; &H00 ; &H00 ; &HEF 'play
'Printbin &H7E ; &HFF ; &H06 ; &H0D ; &H00 ; &H00 ; &H00 ; &HFE ; &HEE ; &HEF 'play with checksum
'Printbin &H7E ; &HFF ; &H06 ; &H0E ; &H00 ; &H00 ; &H00 ; &HFE ; &HED ; &HEF 'puse with checksum
اینم با کد دسیمال و بدون چکسام
'reset Printbin 126 ; 255 ; 6 ; 12 ; 0 ; 0 ; 0 ; 239
Printbin 126 ; 255 ; 6 ; 22 ; 0 ; 0 ; 0 ; 239' stop
Printbin 126 ; 255 ; 6 ; 6 ; 0 ; 0 ;30; 239'volume
تو کد بالا بجای 30 هر چی بزارید میشه ولومتون. البته باید کمتر از 30 باشه.
برای خوندن موزیک هم از کد زیر استفاده کنید.
Printbin 126 ; 255 ; 6 ; 3 ; 0 ; 0 ; 1 ; 239
دوتا عددی که قرمز رنگ هستن شماره فایلتون رو نشون میدن
شاید صفر قبلیشم شامل میشه
لازم به ذکره که فایلی که میریزد تو رم باید اسمش عدد باشه (تو این حالت البته)
مثلا اگه بخواید با آخرین کدی که گذاشتم یه فایل رو احرا کنید باید فایل داخل رم به شکل زیر باشه
001.mp3
اونایی که میخوان با چکسام کار کنن به شکل زیر باید چکسام رو بدست بیارن
اول ماشین حسابتونو تو حالت هگز بزارید بعد به شکل زیر عمل کنید.
البته اگه با بسکام کار میکنید فقط کافیه قبل از هر عدد یه &H بذارید.
'a =byte 2+byte 3+byte 4+byte 5+byte 6+byte 7
'checsum=0- a
مثلا برای کد زیر تو بسکام اینطوری بنویسید.
Dim A As Word
'Printbin &H7E ; &HFF ; &H06 ; &H0D ; &H00 ; &H00 ; &H00 ; &HFE ; &HEE ; &HEF 'play
'A = A + &HFF
'A = A + &H06
'A = A + &H0D
'A = A + &H00
'A = A + &H00
'A = A + &H00
'A = A + &HEF
'A = 0 - a
'now a is your checksum
بعد از اینکه کار بابا رو انجام دادین، ماشین حساب یه کد بهتون میده که چهارتا عدد آخر کد میشه چکسام، بعد اونو قبل از EF یا همون کامند پایان دستور.
چهارتا رقم آخر میشه چکسام که باید به صورت دو تا عدد یه بایتی آخر کدتون اضافه کنید.(منظور از آخر کد قبل از دستور END میباشد) رنگ نارنجی.
دیگه چی میخواین هان؟؟؟
آفتابرایانه ای ها لطفا یخورده خجالت بکشن
ویرایش توسط abarnic : 04-11-2015 در ساعت 08:29 PM
سلام دستت درد نکنه مهندس
عالی بود مدتها دنبالش میگشتم
ولی من متاسفانه باز جواب نگرفتم