I / O È®Àå º¸µåLCDKeypad ½¯µå
LCD Å°ÆÐµå ½Çµå ÀÔ·Â/Ãâ·Â È®Àå »ç¿ë 2 ¶óÀÎ 16 ¹®ÀÚ LCD ÆгÎ, ´ëºñ Á¶Á¤ ¹× ¹é¶óÀÌÆ®, ½Ã¹Ä·¹ÀÌ¼Ç µÈ ÀÔ ÀÔ·Â »ç¿ë, 5 ¹öÆ° ¿Ï·á, ¸®¼Â ¹öÆ°, »ç¿ëÇÏÁö ¾ÊÀº IO ÀÔÀº ¿©ºÐÀ» ¿¬ÀåÇÏ°í I/o Æ÷Æ®¸¦ ÃÖ´ëÇÑ È°¿ëÇÕ´Ï´Ù. µðÁöÅÐ Æ÷Æ®: PIN4 (db3), 5 (DB5), 6 (DB6), 7 (DB7), 8 (RS), 9 (E), 10 (¹é¶óÀÌÆ® Á¦¾î), A0 Å° ÀÔ·Â Æ÷Æ® ½Ã¹Ä·¹À̼Ç. (LCD »ö»óÀº ÁöÁ¤µÇÁö ¾ÊÀ½, ¹«ÀÛÀ§ ¹è¼Û.)
»ç¿ë Roboduino:
¸ðµâ µð¹ö±ë:
LCD Å°ÆÐµå ½Çµå°¡ ÄÁÆ®·Ñ·¯¿¡ »ðÀÔ µÈ ´ÙÀ½ LCD4Bit_mod ¸¦ ´Ù¿î·ÎµåÇؾßÇÕ´Ï´Ù. H (ó·³ ÀúÀåÀ» ¸¶¿ì½º ¿À¸¥ÂÊ ¹öÆ°À¸·Î Ŭ¸¯ÇϽʽÿÀ) ¶óÀ̺귯¸® ÆÄÀÏÀ»-0015 \ Çϵå¿þ¾î \ \ ¿¡ ¿¬°áÇÑ ´ÙÀ½ Å×½ºÆ® ÇÁ·Î±×·¥À» ÆíÁýÇÏ¿© ´Ù¿î·ÎµåÇÕ´Ï´Ù. ¸ÕÀú LCD Å°ÆÐµå ½Çµå¸¦ »ç¿ëÇÏ°í LCD µð½ºÇ÷¹ÀÌ Æ¯¼ºÀ» ¸ÕÀú °üÂûÇß½À´Ï´Ù. ÄÜÆ®¶ó½ºÆ®°¡ À߸øµÈ ¹®ÀÚ¸¦ Ç¥½ÃÇÏÁö ¾ÊÀ¸¸é ¿öµå ½ºÅ©·ç µå¶óÀ̹ö Á¶Á¤ RP1 (½Ã°è ¹æÇâ) À» »ç¿ëÇÏ¿© ¹®ÀÚ¸¦ ¸íÈ®ÇÏ°Ô Àü¼ÛÇÏ¿© ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù.
½ÃÇè ·»´õ¸µ:
GP2D12¹üÀ§ ÄÚµå:
# Æ÷ÇÔ
LCD4Bit_mod lcd = LCD4Bit_mod(2);
Char GP2D12;
½¡ a,b;
Char str1[]= "Renge:";
Char str2[]= "·»Áö ¿À¹ö";
Char str3[]= "cm";
Void ¼³Á¤ ()
{
Lcd. init();
Lcd. Áö¿ì±â ();
Lcd. printIn("GP2D12 Å×½ºÆ®..."),
}
Void ·çÇÁ ()
{
GP2D12 = read_gp2d12_range(1);
If (GP2D12>80 | | GP2D12<10)
{
Lcd. cursorTo(2,0),
Lcd. printIn(str2), ÇÁ¸°Æ®
}
´Ù¸¥
{
A = 0x30 GP2D12/10;
B = 0x30 GP2D12 % 10;
Lcd. cursorTo(2, 3),
Lcd. printIn(str1), ÇÁ¸°Æ®
Lcd. Àμâ (a);
Lcd. Àμâ (b);
Lcd. printIn(str3), ÇÁ¸°Æ®
}
Áö¿¬ (50);
}
Float read_gp2d12_range (¹ÙÀÌÆ® ÇÉ)
{
Int tmp;
Tmp= ¾Æ³¯·Î±× Æеå (ÇÉ);
If (tmp< 3) ¹Ýȯ-1;
¹Ýȯ (6787.0 /(Ç÷ÎÆ®) tmp - 3.0) - 4.0;
}