მოდით გაერკვნენ, თუ როგორ უნდა დაუკავშიროთ 84x48 პიქსელიანი თხევადკრისტალური დისპლეი Nokia 5110– დან Arduino– სთვის.
აუცილებელია
- - არდუინო;
- - LCD ეკრანი Nokia 5110/3310;
- - სადენების დამაკავშირებელი.
ინსტრუქციები
Ნაბიჯი 1
ქვემოთ მოყვანილი დიაგრამის მიხედვით მოდით დავაკავშიროთ LCD ეკრანი Nokia 5110– დან Arduino– დან.
ნაბიჯი 2
ბევრი LCD ბიბლიოთეკა დაიწერა, ამ LCD ეკრანთან სამუშაოდ. მე გირჩევთ გამოიყენოთ ეს: https://www.rinkydinkelectronics.com/library.php?id=44 (ჩამოტვირთეთ LCD5110_Basic.zip ფაილი).
ინსტალაციისთვის, გახსენით ფაილი Arduino IDE / libraries / დირექტორია.
ბიბლიოთეკა მხარს უჭერს შემდეგ მახასიათებლებს.
LCD5110 (SCK, MOSI, DC, RST, CS); - LCD ეკრანის ანონსი Arduino- ს პინებთან შესაბამისობის მითითებით;
InitLCD ([კონტრასტი]); - 5110 ეკრანის ინიციალიზაცია კონტრასტის არასავალდებულო მითითებით (0-127), ნაგულისხმევი არის 70;
setContrast (კონტრასტი); - ადგენს კონტრასტს (0-127);
ჩართვა Sleep (); - ეკრანს აყენებს ძილის რეჟიმში;
გამორთვა Sleep (); - გამოაქვს ეკრანი ძილის რეჟიმიდან;
clrScr (); - ასუფთავებს ეკრანს;
clrRow (მწკრივი, [დაწყება], [დაბოლოება]); - არჩეული მწკრივის რიცხვის რიგის გასუფთავება, პოზიციიდან დასაწყისიდან ბოლომდე;
ინვერსიული (ჭეშმარიტი); და ინვერსიული (ყალბი); - LCD ეკრანის შინაარსის ინვერსიის ჩართვა და გამორთვა;
ბეჭდვა (სიმებიანი, x, y); - აჩვენებს სიმბოლოების სტრიქონს მითითებული კოორდინატებით; x კოორდინატის ნაცვლად შეგიძლიათ გამოიყენოთ LEFT, CENTER და RIGHT; სტანდარტული შრიფტის სიმაღლეა 8 წერტილი, ამიტომ ხაზები დაშორებული უნდა იყოს 8 წერტილზე;
printNumI (num, x, y, [სიგრძე], [შემავსებელი]); - ეკრანზე აჩვენეთ მთელი რიცხვი მოცემულ პოზიციაზე (x, y); სიგრძე - რიცხვის სასურველი სიგრძე; შემავსებელი - სიმბოლო "სიცარიელის" შესავსებად, თუ რიცხვი სასურველ სიგრძეზე ნაკლებია; ნაგულისხმევი არის ცარიელი ადგილი ";
printNumF (num, dec, x, y, [გამყოფი], [სიგრძე], [შემავსებელი]); - აჩვენოს მცურავი წერტილის ნომერი; dec - ათობითი ადგილებში; გამყოფი - ათობითი წერტილი, წერტილი "." სტანდარტულად;
setFont (სახელი); - შრიფტის არჩევა; ჩაშენებულ შრიფტებს ასახელებენ SmallFont და TinyFont; შეგიძლიათ განსაზღვროთ თქვენი შრიფტები ესკიზში;
invertText (ჭეშმარიტი); და invertText (ყალბი); - ტექსტის ინვერსია ჩართვა / გამორთვა;
drawBitmap (x, y, მონაცემები, sx, sy); - სურათის ჩვენება ეკრანზე x და y კოორდინატებზე; მონაცემები - მასივი, რომელიც შეიცავს სურათს; sx და sy არის სურათის სიგანე და სიმაღლე.
ნაბიჯი 3
მოდით დავწეროთ ეს ესკიზი. პირველი, ჩვენ მოიცავს ბიბლიოთეკას, შემდეგ ვაცხადებთ LCD5110 კლასის ინსტანციას pin დავალებებით.
დაყენების () პროცედურის დროს, ჩვენ ვიწყებთ LCD ეკრანის ინიციალიზაციას.
მარყუჟის () პროცედურის დროს, ჩვენ ვწმენდთ ეკრანს და ვწერთ თვითნებურ ტექსტს მცირე შრიფტით, მის ქვეშ, საშუალო შრიფტით, ვაჩვენებთ წამების მრიცხველს.
ნაბიჯი 4
აჩვენეთ სურათი. ამისათვის მოდით მოვამზადოთ მონოქრომული გამოსახულება, რომლის ჩვენება გვინდა Nokia 5110- ზე. გახსოვდეთ, რომ ეკრანის გარჩევადობაა 48 და 84 პიქსელი და სურათი არ უნდა იყოს უფრო დიდი. Http://www.rinkydinkelectronics.com/t_imageconverter_mono.php გვერდზე გადააქციეთ სურათი ცოტა მასივად. ჩამოტვირთეთ მიღებული ფაილი "*.c" გაფართოებით და დაამატეთ პროექტს მენიუს საშუალებით: ესკიზი -> ფაილის დამატება … ან უბრალოდ მოათავსეთ ფაილი ესკიზების დირექტორიაში და შემდეგ გადატვირთეთ Arduino IDE.
ნაბიჯი 5
ახლა თქვენ უნდა გამოაცხადოთ მასივი სურათის მონაცემებით პროგრამის კოდში (ჩემს კოდში ეს არის სტრიქონი uint8_t mysymb;) და შემდეგ გამოიყენეთ drawBitmap () ფუნქცია სურათის ეკრანზე სასურველ ადგილას გამოსახვისთვის.
ნაბიჯი 6
ატვირთეთ ესკიზი Arduino- ში. ახლა ტექსტი შეიცვლება სურათით, და მრიცხველი ყოველ ჯერზე ზრდის მის მნიშვნელობას.