سلام
كسي ميتونه بگه چطوري ميتونم روي السيدي يه تابع سينوسي يا كسينوسي نمايش بدم.
فرض كنيد ميخام فركانس و دامنه هم قابل تغير باشه مثلا دو برابر بشه يا نصف بشه.
سلام
كسي ميتونه بگه چطوري ميتونم روي السيدي يه تابع سينوسي يا كسينوسي نمايش بدم.
فرض كنيد ميخام فركانس و دامنه هم قابل تغير باشه مثلا دو برابر بشه يا نصف بشه.
*** اللّهم عجّل لولیک الفرج ***
سلامسلام
كسي ميتونه بگه چطوري ميتونم روي السيدي يه تابع سينوسي يا كسينوسي نمايش بدم.
فرض كنيد ميخام فركانس و دامنه هم قابل تغير باشه مثلا دو برابر بشه يا نصف بشه.
مهندس با چه کامپایلری کار میکنی؟
کاری نداره که ... فقط کافیه یک پیکسل رو به نسبت زمان در محور y ها (یعنی x همیشه در حال افزایش هست) ست کنی
راستی چرا همیشه انقدر با فونت بزرگ تایپ میکنی؟؟ به خدا هنوز پیر نشدیم !
میکروکنترلر STM32103-RBT6 بطور کامل راه اندازی شد !!!
مرحله بعدی اتصال TFT 3.2 به میکرو و بوت کردن UC-OS II + GUI !!!
.
خوب دایی جان این که کاری نداره من به زبان سی مینویسم شما خودت زحمت تبدیلشو بکش :
A دامنه هست مثلا برای یه نمایشگر 128*64 مقدارشو 32 میذاری (چون موج سینوسی یه قسمت مثبت داره و یه قسمت منفی که جمع جبریشون نباید از ارتفاع نمایشگرت بزرگتر باشه ) 50 هم که فرکانس هست و ط هم مثلا نقش زمان رو بازی میکنهکد:for(x=0;x<128;x++){ y= A*sin(x*6.28318*50)+A; LCD_PSET(x,y); }
اين برنامه منه كه با بسكام نوشتم ولي كار نكرد.
نظر شما چيه؟
کد:$lib "lcd-pcf8833.lbx" $regfile = "m32def.dat" $crystal = 16000000 Config Graphlcd = Color , Controlport = Portb , Cs = 1 , Rs = 0 , Scl = 3 , Sda = 2 Const Blue = &B00000011 Const Yellow = &B11111100 Const Red = &B11100000 Const Green = &B00011100 Const Black = &B00000000 Const White = &B11111111 Const Brightgreen = &B00111110 Const Darkgreen = &B00010100 Const Darkred = &B10100000 Const Darkblue = &B00000010 Const Brightblue = &B00011111 Const Orange = &B11111000 Dim A As Single , B As Single , C As Integer , D As Integer , X As Integer , Y As Single Dim S As Byte , F As Byte Do Cls For X = 0 To 130 B = X * 314.159 C = Sin(b) * 10 A = C + 10 Y = Round(a) Pset X , Y , Red Next X Wait 5 Loop End
*** اللّهم عجّل لولیک الفرج ***
دایی جان هیچی رو نمایشگر ظاهر نمیشه ؟
ممکنه برای پایین بودن فرکانس باشه چون شما داری با نقطه رسم میکنی وقتی فرکانس پایین باشه نقطه ها با فاصله رسم میشن و سخت بشه دیدشون !
شما فرکانس دو برابر و یا چهار برابر کن ببین چی میشه
دايي جان شما مقدار كريستال رو نديدي 16 مگا هرتزه بيشتر از اينم تو توانم نيست.
راستي اون قسمت كه من عدد رو روند كردم درسته.
چون بايد عدد بدست اومده روند باشه تا بشه مختصات پيكسل رو تعريف كرد.
*** اللّهم عجّل لولیک الفرج ***
دایی جان اینم یه سمپل هلو ! البته با سی هست و برای آرم و شبیح سازیش توی پروتوس!
و اینم دقیقا تابعش :
کد:#include <LPC213x.H> #include <math.h> #include "driver/ks0108.h" int main(void){ int j; ks0108_Init(); for(j=0;j<256;j++) ks0108_pset(j, 32+(cos(((float)(j)*3.14*100))*20)); while(1); return 0; }
شرمنده صوتي از من بود.
*** اللّهم عجّل لولیک الفرج ***
خواهش می شود ، ایشالا که جواب گرفتی !
هنوز نه
دارم روش كار ميكنم
*** اللّهم عجّل لولیک الفرج ***