به نام خدا : تو این مطلب از سری مطالب پروژه آردوینو ، میخوام پروژه آردوینو ماشین حساب لمسی با lcd tft رو براتون قرار بدم.
پروژه آردوینو ماشین حساب لمسی با lcd tft
شماتیک پروژه
شماتیک مماتیک یوخدو، برید مطلب زیر رو بخونید که آموزش نمایشگری که تو این پروژه ازش استفاده کردیم رو قرار دادم :
پروژه و آموزش راه اندازی lcd tft 2.4 inch با آردوینو
اگه شیلد ماژول lcd tft 2.4 inch رو دیده باشید روی برد آردوینو سوار میشه و باهاش جفت میشه عین پیچ و مهره، حالا پیش مهره راهنمای بستن میخواد؟
کد پروژه
اول اینو بگم که تو این پروژه تعداد ارقام اعشار بر حسب جواب نمایش داده میشه، یعنی اگه جواب نهایی ۲٫۲ باشه دقیقا همین مقدار نمایش داده میشه و نه ۲٫۲۰ یا ۲٫۲۰۰ و… و اگه جواب نهایی ۲٫۲۲ باشه دقیقا همین نمایش داده میشه و اگه تعداد ارقام اعشار بیش از ۵-۶ مورد باشه بقیه ارقام اعشار حدف میشه که میتونید خودتون تو پروژه تغییرش بدید بر حسب نیاز.
تو این پروژه اعدادم چند رقمی در اعداد چند رقمی * – + / میشن و برای محاسبات بعدی باید صفحه نمایش رو پاک کنید (به کمک دکمه C) و بعد دوباره عملیات ضرب و تقسیم رو انجام بدید، البته خودتون هم میتونید این پروژه رو ارتقا بدید، من فقط یه مورد نمونه گزاشتم براتون.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 |
#include <Adafruit_GFX.h> #include <MCUFRIEND_kbv.h> MCUFRIEND_kbv tft; #include <TouchScreen.h> #define YP A2 // must be an analog pin, use "An" notation! #define XM A3 // must be an analog pin, use "An" notation! #define YM 8 // can be a digital pin #define XP 9 // can be a digital pin TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300); TSPoint tp; #define MINPRESSURE 20 #define MAXPRESSURE 1000 uint16_t TS_LEFT = 921; uint16_t TS_RT = 175; uint16_t TS_TOP = 950; uint16_t TS_BOT = 180; #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFFE0 #define WHITE 0xFFFF String Key[4][4] = { { "۷", "۸", "۹", "/" }, { "۴", "۵", "۶", "*" }, { "۱", "۲", "۳", "-" }, { "C", "0", "=", "+" } }; String Number1, Number2, Alamat; float Answer; int NumberDigitsFloat; void setup() { // Serial.begin(9600); // Debug tft.begin(9600); tft.reset(); tft.begin( tft.readID() ); tft.setRotation(0); tft.fillRect(0, 0, 240, 80, BLACK); tft.fillRect(0, 80, 240, 240, WHITE); tft.drawFastHLine(0, 80, 240, BLACK); tft.drawFastHLine(0, 140, 240, BLACK); tft.drawFastHLine(0, 200, 240, BLACK); tft.drawFastHLine(0, 260, 240, BLACK); tft.drawFastHLine(0, 319, 240, BLACK); tft.drawFastVLine(0, 80, 240, BLACK); tft.drawFastVLine(60, 80, 240, BLACK); tft.drawFastVLine(120, 80, 240, BLACK); tft.drawFastVLine(180, 80, 240, BLACK); tft.drawFastVLine(239, 80, 240, BLACK); for (int y = 0; y < 4; y++) { for (int x = 0; x < 4; x++) { tft.setCursor(22 + (60 * x), 100 + (60 * y)); tft.setTextSize(3); tft.setTextColor(BLACK); tft.println(Key[y][x]); } } tft.setCursor(0, 310); tft.setTextSize(1); tft.setTextColor(RED); tft.print(" >>> DMF313.IR >>> Mahdi Damarchilu >>>"); } void loop() { String Data = GetStringPointSelected(); if ( Data != "Error" ) { if (Data == "C") { Number1 = Number2 = Alamat = ""; Answer = 0; } else if (Alamat == "" && (Data >= "0" && Data <= "9")) { // هنوز علامت وارد نشده و ما تو دریافت رقم اول هستیم Number1 += Data; // Serial.println((String)"Number1 = " + Number1); // Debug } else if ( Data == "/" || Data == "*" || Data == "-" || Data == "+" ) { // Alamat Alamat = Data; // Serial.println((String)"Alamat = " + Alamat); // Debug } else if (Alamat != "" && (Data >= "0" && Data <= "9")) { // علامت وارد شده و ما در حال دریافت عدد دوم هستیم Number2 += Data; // Serial.println((String)"Number2 = " + Number2); // Debug } else if (Data == "=") { if (Alamat == "+") Answer = Number1.toInt() + Number2.toInt(); else if (Alamat == "-") Answer = Number1.toInt() - Number2.toInt(); else if (Alamat == "*") Answer = Number1.toInt() * Number2.toInt(); else if (Alamat == "/") Answer = (float)Number1.toInt() / (float)Number2.toInt(); // Serial.println((String)"Answer = " + Answer); // Debug } else { return; } tft.fillRect(0, 0, 240, 80, BLACK); tft.setCursor(10, 10); tft.setTextSize(3); tft.setTextColor(WHITE); if(Number1 != "") { tft.print(Number1); } if(Alamat != "") { tft.print(Alamat); } if(Number2 != "") { tft.print(Number2); } if(Data == "=") { tft.print("="); float NewAnswer = Answer; for( NumberDigitsFloat=0; NumberDigitsFloat<=5; NumberDigitsFloat++) {// پیدا کردن بهترین تعداد رقم اعشار if((float)NewAnswer - (int)NewAnswer == 0.0) { break; } NewAnswer = NewAnswer*10; } tft.print(Answer, NumberDigitsFloat); Number1 = Number2 = Alamat = ""; } delay(300); } } String GetStringPointSelected() { tp = ts.getPoint(); int a; a = tp.x; tp.x = tp.y; tp.y = a; pinMode(XM, OUTPUT); pinMode(YP, OUTPUT); pinMode(XP, OUTPUT); pinMode(YM, OUTPUT); if ((tp.z > MINPRESSURE ) && (tp.z < MAXPRESSURE)) { tp.x = map(tp.x, TS_LEFT, TS_RT, 0, tft.width()); tp.y = map(tp.y, TS_TOP, TS_BOT, 0, tft.height()); uint8_t x, y; if ( (tp.y > 80 && tp.y < 140) ) x = 0; else if ( (tp.y > 140 && tp.y < 200) ) x = 1; else if ( (tp.y > 200 && tp.y < 260) ) x = 2; else if ( (tp.y > 260 && tp.y < 320) ) x = 3; else return "Error"; if ( (tp.x > 0 && tp.x < 60) ) y = 0; else if ( (tp.x > 60 && tp.x < 120) ) y = 1; else if ( (tp.x > 120 && tp.x < 180) ) y = 2; else if ( (tp.x > 180 && tp.x < 240) ) y = 3; else return "Error"; // Debug //tft.fillCircle(tp.x, tp.y, 5, GREEN); //Serial.println(tp.x + (String)"-" + tp.y + (String)" ---> " + x + (String)"-" + y + (String)" ---> " + Key[x][y]); return Key[x][y]; } else { return "Error"; } } |
فیلم پروژه ماشین حساب لمسی با آردوینو
- کیبورد با صفحه تاچ (ارسال اطلاعات به پنجره سریال - قبلا انجامش ندادم ولی سادس)
- تبدیل lcd tft 2.4 inch به کیبورد کامپیوتر(باید از c# هم استفاده کنید - داشتون پروژش ور قبلا انجام داده^_^)
- تبدیل این نمایشگر به موس و جایگزین شدن به جای موس کامپیوتر(باس از c# استفاده کنید - کاری نداره من قبلا انجام دادم ^_^)
- نوشتن یه تابع برای چرخش تصاویر(چیزی که به ذهن من میرسه الان : فرض کنید عکس ما ۲۰*۲۰ هستش خب یه ماتریس_آرایه دو بعدی_ ایجاد کنید و رنگ هر خونه رو بخونید، و بعد با فرمول های ریاضی ببینید برای چرخش مکان هر پیکس در موقیت جدید کجا میشه و بعد عکس رو نمایش بدید)
- نوشتن متن فارسی (تعریف فونت فارسی) >>>> (به کتابخونه مراجعه کنید و ببینید فوت انگلیسی به چه صورت هستش، احتمالا یه آرایه باید باشه که نوع مقدار دهی هر کاراکتر بیانگر شکل کاراکتر هستش، با تغییرش میتونید فونت فارسی ایجاد کنید، ولی خب غیر از این دردسر های دیگه ای هم هستش مثل تبدیل متن به راست به چپ که برا این پیزی الان به ذهنم نمیرسه)
- نمایش عکس با فرمت های دیگه در نمایشگر(بررسی کنید ببینید میشه اصلا این کار یا نه - ولی بعید میدوننم نشه)
- ساخت رادیو کنترل با این نمایشگر و NRF !!!
- دیگه چیزی به ذهنم نمیرسه
هزینه مطلب : دانلود کردن و خوندن ۵۰ صفحه از کتاب عصر ظهور نوشته علامه علی کورانی (چند صفحه اش رو که بخونید عاشق کتاب میشید، خیلی جالبه، من همون اول که دانلودش کردم و نگاش کردم حدود ۱۰۰ صفحه از ۵۰۰ صفحش رو خوندم درجا، منی که پیام های تلگرام رو هم حال ندارم بخونم و درجا طرف رو بلاک میکنم حالا کتاب خوندن به کنار
این کتاب رو که دیدم ۱۰۰ صفحه اش رو خوندم— الله اکبر
از معجزات چند قرن اخیر هستش این اتفاق
) راستی لینک زیر رو هم ببینید در زمینه ظهور و علائم ظهور این جور چیزا هستش، خیلی خیلی خیلی
قشنگه : خداوند درجشن تولد پیامبر مژده ظهور خمینی را داده
تا مطلب بعد اگه زنده بودیم یا علی.
مهمان
سلام
من یک برنامه لازم دارم که اطلاعات را از آرایه دو بعدی با 240 ستون و 320 سطر که در آن کد رنگ به صورت هگز 16 بیت نوشته شده . با هر بار خواندن کد آن را در یک متغیر ذخیره کرده و توسط دستور tft.draw Pixel(x,y,t) رنگ مورد نظر را در پیکسل مورد نظر نمایش دهد.
تشکر
مهمان
سلام من ال سی دی تی اف تی شیلد خریدم متاسفانه وقتی میذارم روی برد اردینو انو و وقتی برنامه های نقاشی و عکسها و ماشین حساب لمسی میرزم چیزی نشون نمیده
خواهشا راهنمایی فرمایید
مهمان
سلام اقا مهدی دستت درد نکنه با این پست اموزدنده
من یک سوالی داشتم الان دارم روی یک پروژه کار میکنم که نیاز به w5100 و ال سی دی با هم دارم راهی هست که پینهای ال سی دی رو خودم تعریف کنم (منظورم همه ی پین هاش هست)
مهمان
سلام
علت این خطا چیه کتابخانه هم نصبه
Arduino: 1.6.9 (Windows 10), Board: “Arduino/Genuino Uno”
In file included from C:\Users\HRS\Documents\Arduino\libraries\Adafruit_GFX_Library\Adafruit_SPITFT.cpp:36:0:
C:\Users\HRS\Documents\Arduino\libraries\Adafruit_GFX_Library\Adafruit_SPITFT.h:25:17: fatal error: SPI.h: No such file or directory
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
سپاسگذارم
نویسنده این مطلب
سلام
کتابخونه فوق رو اد نکردی به آردوینو.
مهمان
سلام میشه آموزش این پروژه را برای در باز کن هوشمن هم پیاده کنین
مهمان
سلام. خسته نباشید .
آقا این تاچش چرا هیچ حرکتی نمیزنه .
کدای اضافه رو هم پاک کردم بازم حرکت نمیزنه …
یعنی تاچش مشکل داره ؟؟؟
بقیه چیزاش همش درست کار میکنه …
مهمان
سلام . واقعا نه خسته .
این همه چیزش درسته . فقط تاچش کار نمیکنه .
آقا من have a problem…
من قسمتای اضافی رو پاک کردم و فقط قسمت تاچ رو گذاشتم باشه .
بازم نشد …
مشکل کجاس ؟؟؟ یعنی ممکنه تاچ پدش مشکل داشته باشه ؟؟؟
مهمان
#include کتاب خونش نیست؟
نویسنده این مطلب
خو خودش داره میگه دیگه
TouchScreen.h: No such file or directory
این کتابخونه رو نداری.
مهمان
C:\Users\Tnr\AppData\Local\Temp\untitled1563239592.tmp\sketch_mar29a\sketch_mar29a.ino:6:25: fatal error: TouchScreen.h: No such file or directory


#include
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Mega or Mega 2560.
هچین اروری میده
مهمان
سلام وقت بخیر
کتاب خونه هر کار می کنم پیدا نمیشه
نویسنده این مطلب
سلام-یعنی چی؟
مهمان
C:\Users\Tnr\AppData\Local\Temp\untitled1563239592.tmp\sketch_mar29a\sketch_mar29a.ino:6:25: fatal error: TouchScreen.h: No such file or directory


#include
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Mega or Mega 2560.
هچین اروری میده
مهمان
سلام مجدد آقا مهدی.آینه ای بودن رو چگونه برطرف کنم؟ای طرف میکشم او طرف میکشه ممنون
نویسنده این مطلب
سلام
کدای قسمت تاچ رو باید تغییر بدی دیگه!
مهمان
ممنون از آموزش های خوب
لطفا راهنمایی بفرمایید در دو صفحه متفاوت با لمس آیکون هایی که طراحی کردم کارهای متفاوتی انجام می گیره ولی در صفحه دوم هم تاچ صفحه اول دستور می گیره به این معنا که آیکون های صفحه اول وجود نداره ولی تاچ عملکرد اونها رو انجام میده تشکر
نویسنده این مطلب
چی بگم والا – کدتون مشکل داره دیگه – شما باید یه متغییری تعریف کنید که به کمک اون بتونید تشخیص بدید که الان تو کدوم صفحه هستید تا توابع صفحه ای که الان نمایش داده نمیشه دیگه کار نکن ( یعنی داخل همه توابع یه IF بزاری و اگه متغییر مربوطه مقدار مد نظرو داشت کدای تابع اجرا بشه وگرنه اجرا نشه ).
مهمان
سلام
ممنون از آموزش های خوب
لطفا راهنمایی بفرمایید اگر بخوایم اعداد اعشاری به عنوان ورودی داشته باشیم چه قسمت هایی به برنامه اضافه میشه یا لینک مثال رو قرار بدین تشکر
مهمان
ممنون واقعا تمام مطالب سایت تون عالیه.
ولی توی این پروژه من نتونستم بفهمم که وقتی داده “C” دریافت میشه صفحه نمایش چطوری پاک میشه. با اینکه چندین با کد رو برسی کردم.
منم دارم پروژه ای مثل همین انجام میدم ولی نمیتونم بعد از اینکه “delete” دریافت کردم , اون قسمت از صفحه که متن رو نمایش میده رو پاک کنم. و داده های جدیدی که دریافت میکنم مجدد روی همون داده های قبلی نوشته میشه.
مهمان
با سلام و تشکر از مطلب خوبتون.
بنده طبق نمونه شما عمل کردم و از چندجای دیگه هم نمونه کد گرفتم ولی متاسفانه صفحه فقط و فقط روشن میشه و رنگش سفیده….
برد: MEGA2560 و از شیلد tft 2.4 استفاده کردم (همین چیزی که شما استفاده کردید)
لطفا راهنمایی بفرمایید.
نویسنده این مطلب
سلام-یه بررسی کن ببین این نمایشگر با spi راه اندازی میشه یا نه –
اگه آره : که باید از uno استفاده کنی یا اتصالات رو تغییر بدی چون پایه های spi توی مگا و یونو با هم فرق داره.
اگه نه : که باید بررسی کنی که نمایشگرت همین مدل مال منه یا نه – چون این نمایشگرا مدلای مختلفی دارن هر چند که همشونو به یه اسم شاید بفرشون.
مهمان
ممنون از پاسخگویی شما
از طریق کد زیر راه اندازی شد و تونستم ازش جواب بگیرم.
https://github.com/Jeroi/TFTLCD2MEGA
فقط یک مشکل اساسی باهاش دارم… اصلا هیچ رشته یا عددی رو نمی تونم باهاش نمایش بدم و هر چی نوشتم فقط یک سری عدد و حروف خاص خودش رو نشون میده…..
مثلا این مثال خودتونو آوردم توی پروژه یه چیز دیگه نشون میده؟!! که قاعدتا باید >>> DMF313.IR >>> Mahdi Damarchilu >>> رو نشون بده. لطفا راهنمایی بفرمایید. ممنون
tft.setCursor(0, 310);
tft.setTextSize(1);
tft.setTextColor(RED);
tft.print(” >>> DMF313.IR >>> Mahdi Damarchilu >>>”);
نویسنده این مطلب
والا باید کتابخونشو بررسی کنی خودت – من نمیدونم مشکل از کجاس
مهمان
سلام
اعداد توی مثال به فارسی تایپ شده اگر اعداد رو تبدیل به انگلیسی کنید مشکل حله انشالله
مهمان
عالی
مهمان
سلام ماشین حساب با avr هم اگر ممکنه بزارید مرسی
مهمان
سلام من برنامه رو اجرا کردم و جواب داد, اما تاچش کار نمیکنه اصن
ولی برنامه ی نقاشی رو که اجرا کردم تاچ کار میکرد
مشکل از کجاس ؟
نویسنده این مطلب
سلام-خب تنظیمات تاچ نقاشی رو رو ماشین حساب اعمال کن!
مهمان
سلام اگه بخوایم محاسبه توابع مثلثاتی را هم به این برنامه اضافه کنیم چه کدهایی باید افزوده بشه؟
ممنون
نویسنده این مطلب
سلام – اگه میخواستم کدش رو بشینم بنوسم که دیگه به پروژه اضافه میکردم دیگه – C++ تون رو یکم تقویت کنید.
مهمان
سلام من این پروژه رو را اندازی میکنم ولی صفحه تاچ کارنمیکنه شکل ماشین حساب میاد؟؟ ولی هر دکمه ای که میزنم عمل نمیکنه؟؟؟به نظرتون مشکل کجاست؟؟یه گوشه روی صفحه یه خط افتاده احتمالا فشاراومده یه ترک کوچیک تو نمایش مشکلی نداره.ممکنه تاچش آسیب دیده باشه؟؟
نویسنده این مطلب
سلام
به مطلب آموزش این نمایشگر برید و نظراتش رو بخونید.
مهمان
همه نظراتو خوندم . هردو پروژه نقاشی رو هم تست کردم ولی در هردو نمایشگر نشون میده ولی تاچ کار نمیکنه؟؟من با انگشت امتحان میکنم؟؟نیاز به قلم مخصوص که نداره؟؟؟
نویسنده این مطلب
تو نظرات راه حل رو گفتم – نه با دست باید کار کنه.
مهمان
ببخشید دوباره میپرسم دوبارم همرو خوندم. درایورشم جز لیستی که گفتید بود. دیگه چیزی به ذهنم نمیرسه .نمیشه کمکم کنید؟؟
نویسنده این مطلب
دو پروژه نقاشی رو بررسی کن – فرقشون رو پیدا کن – تو پروژه خودت دنبال مقادیر درستش باش
مهمان
مممنون چشم
مهمان
سلام ببخشید بازم سواال.شرایطو تطبیق دادم تاچ کار میکنه ولی نه روی صفحه کلید از یک گوشه از صفحه اونم با کشیدن انگشت به یک طرف ..روی شماره ها کار نمیکنه؟؟؟
قبلا گفتم یه گوشیش یه کم ترک برداشته زیاد نیست البته..ممکنه تاچ دچار مشکل شده.
اینم بگم تو نمایش مشکلی نداره..ممنون میشم بازم کمکم کنید.
نویسنده این مطلب
جواب پیشتر داده شد.
مهمان
مقایسه دو پروژه ای ک گفتید رو انجام دادم بله متوجهم فقط مخام بدونم مشکل از تاچم یا از برنامه ؟؟؟؟.واقعا کلافه شدم
نویسنده این مطلب
تاچ مشکلی نداره…
مهمان
سلام ایا میشه محاسبه توابع مثلتاتی هم اضافه کنیم ب این ماشین حساب؟
نویسنده این مطلب
سلام – چرا نشه؟
مهمان
لطفا اگه میشه کدهاشو بذارین
مهمان
با سلام . آیا این نمایشگر به اردوینو due هم وصل میشه ؟
نویسنده این مطلب
سلام – نمیدونم.
مهمان
سلام و خدا قوت.
این جور که مشخصه گویا این نمایشگر کل پایه های آردینو رو می پوشونه.درسته؟
اگه من بخوام از قطعات دیگه ی که اونا هم باید به آردینو وصل شن استفاده کنم ، باید چکار کنم؟
نویسنده این مطلب
سلام-تا جایی که یادمه از همه استفاده نمیکنه ولی خب همه رو اشغال میکنه.
رو pcb بزن.
مهمان
معذرت می خوام ولی من نمی دونم pcb دقیقا چیه؟ و این که از کجا باید بدونم کدوم پایه های آردینو استفاده نمیشن ؟
نویسنده این مطلب
مطالب آموزش آردوینو از جلسه 1 شروع کنید به خوندن – یکم هم برنامه نیوسی c کار کنید – از پایه کار کنید متوجه میشید.
PCB هم فعلا به کنار.
مهمان
سلام داداش میشه ب همین برنامه, کد محاسبه ی توابع مثلثاتی هم بدیم ؟
نویسنده این مطلب
سلام.سوال تکراری پرسیدی – قبلا جواب دادم.بله میتونی این امکان رو اضافه کنی.
مهمان
اهان اگه خواستید اون مورد یک رو اگر بگیردم احتمالا تو کامپیوتر سیو کرده باشم میتونم برات بفرستم
مهمان
سلام و خدا قوت .
یه دوتا چیزم بهش اضافه کنی عالی میشه 1-مهندسیش کنی(sin cos tan cot و ….) 2- یه منو هم بزاری براش 1 که خیلی راحت من خودم چند وقت پیش انجام دادم این کارو اما تا العان رو دو کار نکردم
امید وارم از دستت بربیاد که در اینصورت یه پروژه کاربردی میشه
خدا خیرت بده سایتت عالی و بدرد بخوره ممنون بابت همه زحمت هات من یکی که خیلی استفاده میکنم
نویسنده این مطلب
سلام
متاسفانه توجیهی نمیبینم که بخوام این کارو بکنم
مهمان
سلام
من پروژه کارشناسیم با همین tft lcd هست و وقت زیادی هم ندارم چند تا سوال داشتم که حضوری باید بپرسم(از طریق سایت خیلی طول می کشه ) لطفا شماره تماس بگذارید. در ضمن من انگلیسیم خوبه اگه فایل های آموزشی tft را ئارید لطفا بفرستید مخصوصا بخش مربوط به کتابخونه صفحه تاچ که آموزش هاش را نگذاشتین.
نویسنده این مطلب
سلام
تو نت بگردید پیدا میشه.
مهمان
سلام تشکر وسپاس بابت آموزش های مفیدتون
راستش من کدهای برنامه رو خوندم ولی بیشترش را متوجه نشدم مثلا خط 10 تا خط 19 اگه امکانش هست یه توضیحی برای کدهای برنامه بذارید که کار شون چیه .درضمن من توابع مربوط به راه اندازیlcd را خوندم اگه برای هرکدمشون یک مثال کوچک بذارید خیلی خوب میشه مثلا در مورد تابع set cursor مختصات x,y چه مقادیری می توانند داشته باشند یا این که چه مقادیری باید داشته باشند؟
نویسنده این مطلب
سلام
منبع کلاس و شیء ++c رو مطالعه کنید.
مهمان
خیلی خوب بود.ی سوال دارم .اگه بخوام دو تا صفحه کلید استفاده کنم کدش چه جوری میشه؟به طور مثال اگه ی صفحه کلید رو تاچ فعال بشه و بازدن ی کلید روی تاچ ی صفحه کلید دیگه فعال بشه
نویسنده این مطلب
خب میگی اگه رو دکمه 1 کلیک شد صفحه کلید 1 نمایش داده بشه و اگه دکمه 2 فشرده شد صفحه کلید 2 نمایش داده بشه.
حالا تو برنامت میای بررسی میکنی که صفحه تاچ لمس شده یا نه، اگه رو دکمه ها کلیک شده بود که صفحه کلید مد نظر نمایش داده میشه و اگه قبلا نمایش داده شده بود که کاری انجام نمیشه.
اگه جای دیگه رو لمس کرد، که اول میای بررسی میکنی که کدوم صفحه کلید الان فعال هستش و بعد بر طبق اون میای میبینی که اون مکان لمس شده چه دیتایی داره.
مهمان
منم این نمایشگر رو خریدم از کافه ربوت . اونم شماره چیپش DP74hc245 . از کتابخانه پروژه نقاشی استفاده کردم توی نمایش مشکلی نداره توی پروژه نقاشی تاچش آینه ایه یعنی من این طرف خط میکشم روی صفحه نمایش اونطرف خط میشکه و توی این پروژه تاچش اصلا کار نمی کنه.
مهمان
سلام
من همین lcd tft 2.4 inch
رو چند وقت پیش خریدم ولی هیچ تصویری رو نشون نمیده فقط صفحه سفید دیگه نمیدونم چیکار کنم
چیپش hc245 هست فکر کنم خراب باشه
هنوز اون محافظ روی صفحشو بر نداشتم
ای خدا ):
نویسنده این مطلب
سلام
از کجا خریدی؟
من از آفتاب رایانه خریدم – همین آفتاب رایانه دو مدل از این نوع نمایشگر رو با یه اسم وارد کرد – که تفاوت هایی جزئی داشتن – به هر حال هر چیزی که شبیه هم بود در ظاهر دلیل نمیشه که این همونه ^_^
نسوخته – خیالت راحت
مهمان
سلام خسته نباشید
مطلب واقعا خوبی بود
یه سوال هم داشتم
شما دیگه مستقیما با avr کار نمی کنید؟
اگر نمیکنید لطفا بگید که چرا؟
من خودم ترجیح میدم که بجای آردوینو و سایر برد های رابط مستقیما با خود AVR کار کنم ولی وقتی دیدم که شما دوست عزیز که با تجربه تر از من هستید به سراغ آردوینو رفتید برام سوال پیش اومد
نویسنده این مطلب
سلام

گه گاه پروژه AVR میزارم – الان هم دارم یه کار توپ برا AVR انجام میدم که 10 -20 روز دیگه فیلماش میاد رو سایت
خب آردوینو بلد باشی میتونی از کتابخونه هاش برا میکرو aVR استفاده کنی با تغییراتی
ولی خب aVR ّرا تازه کارا سخته یکم – منم برنامم اینه که سادش کنم
مهمان
با عرض سلام و خسته نباشید اگه امکانش هست پروزه واسه lcd 3.5 هم بزارین وایا امکان اجرای این پروژه با LCD 3.5 هست
نویسنده این مطلب
سلام
نمایشگرش رو ندارم – میخوای یکی برام تهیه کن و بفرست تا آموزشش رو بزارم تو سایت
یکی خریدم شکسته در اومد از شانس ما!