ئېلان قوبۇل قىلىش تېلېفونى: 13999061557
كۆرۈش: 652|ئىنكاس: 8
ئوڭ تەرىپنى يىغىش

Arduino-ئۇلتېرا ئاۋاز دولقۇنلق مىتېر

29

تېما

179

يازما

3154

تەجرىبە

تەكلىپلىك ئەزا

Rank: 5Rank: 5

نادىر
2
جۇغلانما
7190
ئاقچا
66
بۇ يازمىنى ئاخىرىدا   e-chewendaz تەھرىرلىگەن. ۋاقتى  2014-2-12 17:34  

ئەسسالامۇ ئەلەيكۇم ئالىپ تورىدىكى بارلىق ئېلېكتىرون،Arduino ھەۋەسكارلىرى! ھەممىڭلارغا كەمىنە ئېلېكتىر چەۋەندازدىن ئوتلۇق سالام!
ئالدىنقى قېتىملىق تېمامدا كىلەركى قېتىم «ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى ئارقىلىق ئارلىق ئۆلچەش(ئاپتۇماتىك مىتېر)» تەجرىبىسىنى تونۇشتۇرىدىغانلىقىمنى ئوتتۇرىغا قويغان ئىدىم،بۈگۈن ئاران دىگەندە بۇ تېمىنى يېزىشقا پۇرسەت بوپتۇ.بۇ تېما ئارقىلىق ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى،ئۆلچەنگەن سانلىق قىممەتلەرنى كومپيۇتېر ئېكرانى ۋە نوكىيا 5110 ئېكرانىدا كۆرسېتىش توغرىسىدا چۈشەنچە بىرىپ ئۆتىمەن.
تەجرىبىگە كېتەرلىك دىتاللار: بىر دانە Arduino توك يول تاختىسى (خالىغان تىپىدىن)،بىردانە ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى( خالىغان تىپىدىن)،بىردانە NOKIA 5110 كىرىستال ئېكرانى،14 تال ئۇلاش سىمى،USB سانلىق مەلۇمات سىمى قاتارلىقلار.
1. ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچى مودىلى ۋە ئۆلچەنگەن سانلىق قىممەتنى كومپىيۇتېر ئېكرانىدا كۆرسېتىش.
超声波传感器.jpg
ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى بولسا،كۆلىمى چوڭراق تەكشى يۈزلۈك شەيئىلەر بىلەن بولغان ئارلىقىنى تىنچ ھالەتتە ئۆلچەشكە ماس كىلىدىغان سەزگۈچ مودىلى بولۇپ،ئەڭ ئاددىي ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلىنىڭ ئۆلچەش دائىرىسى 2~450 سانتېمىتېرغىچە كىلىدۇ (10مېتىرغىچە ئۆلچىيەلەيدىغانلىرىمۇ بار،توردىن ئىزدەپ كۆرۈپ باقساڭلار بولىدۇ)،نەزىرىيە جەھەتتىكى پەرىقلەندۈرۈش ئىنىقلىق نىسبىتى 3 مىللىمىتېر،بىر قەدەر مۇقۇم ھەم توغرا بولغان ئۆلچەش ئارلىقى 10سانتېمېتېردىن 2مىتېرگىچە كىلىدۇ(باھاسى ئەزانلىرىنىڭ)،تاۋباۋ سودا تورىدىكى ئەڭ ئەرزان ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى SRF-04 تېپلىق ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ بولۇپ،جەمئى 4 دانە ئۇلىنىش پۇتى بار:  مۇسبەت توك مەنبەىسى ئۇلىنىش پۇتى(Vcc)،قوزغىتىش كونتىرول قىلىش ئۇلىنىش پۇتى(Trig)،قوبۇللاش ئۇلىنىش پۇتى(Echo)،مەنپى توك مەنبەسى ئۇلىنىش پۇتى(GND).
سەزگۈچ مودىلىنىڭ خىزمەت پرىنسىپى:
IO قوزغىتىش ئارقىلىق ئارلىق ئۆلچەيدۇ،ئەڭ ئاز بولغاندا 10us لۇق يۇقىرى پوتىنسېئاللىق سگنال يوللايدۇ.
سەزگۈچ مودىلى ئاپتۇماتىك ھالدا 8 دانە 40 كىلو ھىرتىسلىق چاسىسىمان دولقۇن تارقىتىدۇ ھەمدە ئاپتۇماتىك ھالدا دولقۇن قايتىش ئەھۋالى بار يوقلۇقنى تەكشۈرەيدۇ.
ئەگەر دولقۇن قايتىش ئەھۋالى بايقالسا، IO ئارقىلىق بىر دانە يۇقىرى پوتىنسىئال سىگىنالنى چىقىرىدۇ،يۇقىرى پونتىسئال سگنالنىڭ داۋاملىشىش ۋاقتى دەل ئۇلتىرا ئاۋاز دولقۇنىنىڭ تارقىلىشىدىن قايتىپ كەلگۈچە بولغان ۋاقىت بولۇپ،ئۆلچەش ئارلىقى= (يۇقىرى پوتىنسىئال سىگىنالى* ئاۋازنىڭ تېزلىكى(340مىتېر∕سېكۇنت))÷2 بولىدۇ.
ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلى ئادەتتە ئاپتۇماتىك مىتېر ياساشقا،ياكى ئەقلى ئىقتىدارلىق ماشىنا ئويۇنچۇقلارنىڭ(ماشىنا ئادەملەرنىڭ) ئالدىدىكى توسالغۇلارنى پەرىق ئېتىش قۇرۇلمىسىغا ئىشلتىشكە بولىدۇ.
qiche.jpg
توك يولىنىڭ ئۇلاش سخېمىسى تۆۋەندىكىدەك:
012930bu230wfvkzf23ogv.gif
توك يولىنى يۇقارقى تەرتىپلەر بويىچە قۇراشتۇرۇپ بولغاندىن كىيىن،Arduino نىڭ توپلاشما ئىجادىيەت مۇھىتىنى ئېچىپ تۆۋەندىكى پروگرامما كودىنى كىرگۈزۈڭ:
  1. const int TrigPin = 9;
  2. const int EchoPin = 8;
  3. float cm;
  4. void setup()
  5. {
  6. Serial.begin(9600);
  7. pinMode(TrigPin, OUTPUT);
  8. pinMode(EchoPin, INPUT);
  9. }
  10. void loop()
  11. {
  12. digitalWrite(TrigPin, LOW);  
  13. delayMicroseconds(2);
  14. digitalWrite(TrigPin, HIGH);
  15. delayMicroseconds(10);
  16. digitalWrite(TrigPin, LOW);

  17. cm = pulseIn(EchoPin, HIGH) / 58.0; //Dolqun qayitqan waqtni santémitérgha özgertish
  18. cm = (int(cm * 100.0)) / 100.0; //Ikki xanliq onluq kesirgiche élish
  19. Serial.print(cm);
  20. Serial.print("cm");
  21. Serial.println();
  22. delay(1000);
  23. }
مەزمۇننى كۆچۈرۈۋېلىش
پروگرامما كودىنى تەكشۈرتۈپ،خاتالىق بولمىغاندىن كىيىن،Arduino توك يول تاختىسىغا يوللاڭ.
ئاندىن Arduino توپلاشما ئىجادىيەت مۇھىتى كۆزنىكىنىڭ ئوڭ تەرەپ يۇقارقى بۇرجىكىدىكى لوپا ئەينەك شەكىلىدىكى كونۇپكىنى بىسىپ،ئارقىمۇ-ئارقا ئۇلىنىش ئىغىزىنى نازارەت قىلىش كۆزنىكىنى ئېچىڭ.ئەگەر ھەممە ئىش نۇرمال بولسا،نازارەت قىلىش كۆزنىكىدە ئۆلچەنگەن ئارلىق سانلىق مەلۇماتلىرى 1 سىكۇنتتا بىر دومىلىما ھالەتتە كۆرنۈپ تۇرىدۇ.تۆۋەندىكى رەسىمدىكىدەك:
172919oymwkpkq3c747ew3.jpg
2.ئۆلچەش نەتىجىسىنى نوكىيا 5110 تىپلىق ئېكرانىدا كۆرسېتىش
ئىلگىركى تىمامدا نوكىيا 5110 ئېكراننى Arduino غا قانداق ئۇلاش،قانداق قوزغىتىش توغرىسىدا چۈشەنچە بىرىپ بولغاچقا،بۇ توغرىسىدا يەنە قايتا چۈشەنچە بىرىپ ئولتۇرمايمەن.توك يولىنى ئۇلاشتا ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلىنىڭ ئىككى دانە سگنال ئۇلاش پۇتىنى ئېكران ئۇلاشتىن ئىشىپ قالغان رەقەملىك ئۇلىنىش پۇتلىرىغا ئۇلىساق بولىدۇ،دىققەت قىلىدىغان نۇقتا شۇكى قايسى پۇتقا ئۇلىغان بولساق پروگرامما ئىچىدە شۇ پۇتقا ئىنقلىما بىرىشىمىز كېرەك.تۆۋەندىكى تەجرىبىدە ئۇلتېرا ئاۋاز دولقۇنلۇق سەزگۈچ مودىلىنىڭ ئۇلىنىش پۇتلىرى ئاردىينۇ توك يول تاختىسنىڭ 6-،7-رەقەملىك ئۇلىنىش پۇتىغا(8~12 پۇتلىرىغا نوكىيا 5110 ئېكرانى ئۇلاندى) ئۇلاندى.تەپسىلى ئۇلاش سخېمىسى ھەۋەسكارلارنىڭ ئىزدىنىشىگە قالدۇرۇلدى.كۆرنۈشى تۆۋەندىكى رەسىمدىكىدەك:
ultira mitir-tk.JPG
توك يولىنى توغرا تەرتىپ بويىچە قۇراشتۇرۇپ بولغاندىن كىيىن،Arduino نىڭ توپلاشما ئىجادىيەت مۇھىتىنى ئېچىپ تۆۋەندىكى پروگرامما كودىنى كىرگۈزۈڭ:
  1. int LCD_CE=12;
  2. int LCD_RST=11;
  3. int SCLK=8;
  4. int SDIN=9;
  5. int LCD_DC=10;
  6. int inputPin=7;
  7. int outputPin=6;
  8. /****************************************************************/
  9. void setup()
  10. {
  11.   pinMode(inputPin, INPUT);
  12.   pinMode(outputPin, OUTPUT);
  13. }
  14. //****************************定义ASCII字符**********************//

  15. /**********************************
  16. 6 x 8 font
  17. 1 pixel space at left and bottom
  18. index = ASCII - 32
  19. ***********************************/
  20. const unsigned char font6x8[][6] =
  21. {
  22.     { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   // sp
  23.     { 0x00, 0x00, 0x00, 0x2f, 0x00, 0x00 },   // !
  24.     { 0x00, 0x00, 0x07, 0x00, 0x07, 0x00 },   // "
  25.     { 0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14 },   // #
  26.     { 0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12 },   // $
  27.     { 0x00, 0x62, 0x64, 0x08, 0x13, 0x23 },   // %
  28.     { 0x00, 0x36, 0x49, 0x55, 0x22, 0x50 },   // &
  29.     { 0x00, 0x00, 0x05, 0x03, 0x00, 0x00 },   // '
  30.     { 0x00, 0x00, 0x1c, 0x22, 0x41, 0x00 },   // (
  31.     { 0x00, 0x00, 0x41, 0x22, 0x1c, 0x00 },   // )
  32.     { 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14 },   // *
  33.     { 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08 },   // +
  34.     { 0x00, 0x00, 0x00, 0xA0, 0x60, 0x00 },   // ,
  35.     { 0x00, 0x08, 0x08, 0x08, 0x08, 0x08 },   // -
  36.     { 0x00, 0x00, 0x60, 0x60, 0x00, 0x00 },   // .
  37.     { 0x00, 0x20, 0x10, 0x08, 0x04, 0x02 },   // /
  38.     { 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E },   // 0
  39.     { 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00 },   // 1
  40.     { 0x00, 0x42, 0x61, 0x51, 0x49, 0x46 },   // 2
  41.     { 0x00, 0x21, 0x41, 0x45, 0x4B, 0x31 },   // 3
  42.     { 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10 },   // 4
  43.     { 0x00, 0x27, 0x45, 0x45, 0x45, 0x39 },   // 5
  44.     { 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30 },   // 6
  45.     { 0x00, 0x01, 0x71, 0x09, 0x05, 0x03 },   // 7
  46.     { 0x00, 0x36, 0x49, 0x49, 0x49, 0x36 },   // 8
  47.     { 0x00, 0x06, 0x49, 0x49, 0x29, 0x1E },   // 9
  48.     { 0x00, 0x00, 0x36, 0x36, 0x00, 0x00 },   // :
  49.     { 0x00, 0x00, 0x56, 0x36, 0x00, 0x00 },   // ;
  50.     { 0x00, 0x08, 0x14, 0x22, 0x41, 0x00 },   // <
  51.     { 0x00, 0x14, 0x14, 0x14, 0x14, 0x14 },   // =
  52.     { 0x00, 0x00, 0x41, 0x22, 0x14, 0x08 },   // >
  53.     { 0x00, 0x02, 0x01, 0x51, 0x09, 0x06 },   // ?
  54.     { 0x00, 0x32, 0x49, 0x59, 0x51, 0x3E },   // @
  55.     { 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C },   // A
  56.     { 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36 },   // B
  57.     { 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22 },   // C
  58.     { 0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C },   // D
  59.     { 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41 },   // E
  60.     { 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01 },   // F
  61.     { 0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A },   // G
  62.     { 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F },   // H
  63.     { 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00 },   // I
  64.     { 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01 },   // J
  65.     { 0x00, 0x7F, 0x08, 0x14, 0x22, 0x41 },   // K
  66.     { 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40 },   // L
  67.     { 0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F },   // M
  68.     { 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F },   // N
  69.     { 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E },   // O
  70.     { 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06 },   // P
  71.     { 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E },   // Q
  72.     { 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46 },   // R
  73.     { 0x00, 0x46, 0x49, 0x49, 0x49, 0x31 },   // S
  74.     { 0x00, 0x01, 0x01, 0x7F, 0x01, 0x01 },   // T
  75.     { 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F },   // U
  76.     { 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F },   // V
  77.     { 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F },   // W
  78.     { 0x00, 0x63, 0x14, 0x08, 0x14, 0x63 },   // X
  79.     { 0x00, 0x07, 0x08, 0x70, 0x08, 0x07 },   // Y
  80.     { 0x00, 0x61, 0x51, 0x49, 0x45, 0x43 },   // Z
  81.     { 0x00, 0x00, 0x7F, 0x41, 0x41, 0x00 },   // [
  82.     { 0x00, 0x55, 0x2A, 0x55, 0x2A, 0x55 },   // 55
  83.     { 0x00, 0x00, 0x41, 0x41, 0x7F, 0x00 },   // ]
  84.     { 0x00, 0x04, 0x02, 0x01, 0x02, 0x04 },   // ^
  85.     { 0x00, 0x40, 0x40, 0x40, 0x40, 0x40 },   // _
  86.     { 0x00, 0x00, 0x01, 0x02, 0x04, 0x00 },   // '
  87.     { 0x00, 0x20, 0x54, 0x54, 0x54, 0x78 },   // a
  88.     { 0x00, 0x7F, 0x48, 0x44, 0x44, 0x38 },   // b
  89.     { 0x00, 0x38, 0x44, 0x44, 0x44, 0x20 },   // c
  90.     { 0x00, 0x38, 0x44, 0x44, 0x48, 0x7F },   // d
  91.     { 0x00, 0x38, 0x54, 0x54, 0x54, 0x18 },   // e
  92.     { 0x00, 0x08, 0x7E, 0x09, 0x01, 0x02 },   // f
  93.     { 0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C },   // g
  94.     { 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78 },   // h
  95.     { 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00 },   // i
  96.     { 0x00, 0x40, 0x80, 0x84, 0x7D, 0x00 },   // j
  97.     { 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00 },   // k
  98.     { 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00 },   // l
  99.     { 0x00, 0x7C, 0x04, 0x18, 0x04, 0x78 },   // m
  100.     { 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78 },   // n
  101.     { 0x00, 0x38, 0x44, 0x44, 0x44, 0x38 },   // o
  102.     { 0x00, 0xFC, 0x24, 0x24, 0x24, 0x18 },   // p
  103.     { 0x00, 0x18, 0x24, 0x24, 0x18, 0xFC },   // q
  104.     { 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08 },   // r
  105.     { 0x00, 0x48, 0x54, 0x54, 0x54, 0x20 },   // s
  106.     { 0x00, 0x04, 0x3F, 0x44, 0x40, 0x20 },   // t
  107.     { 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C },   // u
  108.     { 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C },   // v
  109.     { 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C },   // w
  110.     { 0x00, 0x44, 0x28, 0x10, 0x28, 0x44 },   // x
  111.     { 0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C },   // y
  112.     { 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44 },   // z
  113.     { 0x14, 0x14, 0x14, 0x14, 0x14, 0x14 }    // horiz lines
  114. };
  115. /************************LCD初始化函数********************************/  
  116. void LCD_init(void)
  117. {
  118.     //先设置为输出
  119.      pinMode(SCLK,OUTPUT);
  120.      pinMode(SDIN,OUTPUT);
  121.      pinMode(LCD_DC,OUTPUT);
  122.      pinMode(LCD_CE,OUTPUT);
  123.      pinMode(LCD_RST,OUTPUT);

  124.     // 产生一个让LCD复位的低电平脉冲
  125.      digitalWrite( LCD_RST, LOW);

  126.      delayMicroseconds(1);
  127.      digitalWrite( LCD_RST, HIGH);

  128.     // 关闭LCD
  129.      digitalWrite( LCD_CE, LOW);
  130.      delayMicroseconds(1);

  131.     // 使能LCD
  132.      digitalWrite( LCD_CE, HIGH); //LCD_CE = 1;
  133.      delayMicroseconds(1);
  134.     LCD_write_byte(0x21, 0); // 使用扩展命令设置LCD模式
  135.     LCD_write_byte(0xc8, 0); // 设置偏置电压
  136.     LCD_write_byte(0x06, 0); // 温度校正
  137.     LCD_write_byte(0x13, 0); // 1:48
  138.     LCD_write_byte(0x20, 0); // 使用基本命令
  139.     LCD_clear();             // 清屏
  140.     LCD_write_byte(0x0c, 0); // 设定显示模式,正常显示

  141.     // 关闭LCD
  142.    digitalWrite( LCD_CE, LOW);  //LCD_CE = 0;
  143. }
  144. /************************LCD清屏函数*******************************/
  145. void LCD_clear(void)
  146. {
  147.     unsigned int i;
  148.     LCD_write_byte(0x0c, 0);  
  149.     LCD_write_byte(0x80, 0);
  150.     for (i=0; i<504; i++)
  151.       {
  152.         LCD_write_byte(0, 1);
  153.       }   
  154. }
  155. /*************************设置字符位置函数**************************/
  156. void LCD_set_XY(unsigned char X, unsigned char Y)
  157. {
  158.     LCD_write_byte(0x40 | Y, 0);// column
  159.     LCD_write_byte(0x80 | X, 0);// row
  160. }
  161. /*************************ASCII字符显示函数*************************/
  162. void LCD_write_char(unsigned char c)
  163. {
  164.     unsigned char line;
  165.     c -= 32;
  166.     for (line=0; line<6; line++)
  167.     {
  168.         LCD_write_byte(font6x8[c][line], 1);
  169.     }
  170. }
  171. /*******************************************************************/
  172. /*-------------------------------------------------
  173. LCD_write_english_String  : 英文字符串显示函数
  174. 输入参数:*s      :英文字符串指针;
  175.           X、Y    : 显示字符串的位置,x 0-83 ,y 0-5
  176. --------------------------------------------------*/
  177. void LCD_write_english_string(unsigned char X,unsigned char Y,char *s)
  178. {
  179.     LCD_set_XY(X,Y);
  180.     while (*s)  
  181.     {
  182.      LCD_write_char(*s);
  183.      s++;
  184.     }
  185. }
  186. /******************************************************************/
  187. /*---------------------------------------------
  188. LCD_write_byte    : 写数据到LCD
  189. 输入参数:data    :写入的数据;
  190.           command :写数据/命令选择;
  191. ---------------------------------------------*/
  192. void LCD_write_byte(unsigned char dat, unsigned char command)
  193. {
  194.     unsigned char i;
  195.    digitalWrite( LCD_CE, LOW); // 使能LCD_CE = 0
  196.     if (command == 0)
  197.     {
  198.      digitalWrite( LCD_DC, LOW);// 传送命令 LCD_DC = 0;
  199.     }
  200.     else
  201.     {
  202.       digitalWrite( LCD_DC, HIGH);// 传送数据LCD_DC = 1;
  203.     }

  204.   for(i=0;i<8;i++)
  205.   {
  206.      if(dat&0x80)
  207.      {
  208.         digitalWrite( SDIN, HIGH);//SDIN = 1;
  209.      }
  210.     else
  211.     {
  212.      digitalWrite( SDIN, LOW);//SDIN = 0;
  213.      }
  214.    digitalWrite( SCLK, LOW);//SCLK = 0;
  215.    dat = dat << 1;
  216.    digitalWrite( SCLK, HIGH);//SCLK = 1;
  217.   }
  218.     digitalWrite( LCD_CE, HIGH);//LCD_CE = 1;

  219. }

  220. /*************************以下为主函数*****************************/

  221. void loop()
  222. {
  223.   LCD_init();//初始化液晶     
  224.   LCD_clear();

  225.     LCD_write_english_string(0,0,"-Ultira mitir-");
  226.     LCD_write_english_string(0,2,"Arliq:");

  227.     LCD_write_english_string(0,4,"BY E-chewendaz");
  228.     LCD_write_english_string(0,5,"  2014.2.12   ");

  229.     while(1)
  230.     {
  231.       digitalWrite(outputPin, LOW); // 使发出发出超声波信号接口低电平2μs
  232.       delayMicroseconds(2);
  233.       digitalWrite(outputPin, HIGH); // 使发出发出超声波信号接口高电平10μs,这里是至少10μs
  234.       delayMicroseconds(10);
  235.       digitalWrite(outputPin, LOW);    // 保持发出超声波信号接口低电平
  236.       int distance = pulseIn(inputPin, HIGH);  // 读出脉冲时间
  237.       distance= distance/58;           // 将脉冲时间转化为距离(单位:厘米)
  238.          if(distance>620)
  239.        {

  240.          LCD_write_english_string(35,2,"???");
  241.         }
  242.          else
  243.         {
  244.           LCD_write_english_string(60,2," cm ");
  245.           LCD_set_XY(35, 2);
  246.           LCD_write_char( 0x30+distance%1000/100); //显示百位数
  247.           LCD_write_char( 0x30+distance%100/10);   //显示十位数
  248.           LCD_write_char( 0x30+distance%10);       //显示个位数
  249.          }
  250.         delay(10);
  251.       }         

  252. }
مەزمۇننى كۆچۈرۈۋېلىش
ناۋادا ھەممە ئىش ئوڭۇشلۇق بولسا،نوكىيا 5110 ئېكرانىدا ئارلىقنى ئۆلچەش نەتىجىسى تۆۋەندىكىدەك كۆرنىدۇ:
ultira mitir.JPG
ئەسلى مەن ئېكراندا ئۇيغۇرچە ئۇچۇر كۆرنىدىغان ئاپتۇماتىك مىتېر پروگراممىسىنى يېزىپ بىرگە يوللارمەن دىگەنىدىم،بىراق پروگرامما كودىدا ھەل قىلىدىغان ئازىراق مەسىلىلەر بولغاچقا ھازىرچە بۇنى يوللىيالمىدىم،تۆۋەندىكى رەسىمدىكىدەك:
ultira mitir-uy.JPG
نوكىيا 5110 ئىكرانغا كۆرىستىش پروگرامما كودى يەنىلا كۆپ بولۇپ كەتتى،ئەسلى تەييار ئېكران قوزغىتىش ئامبار ھۆججىتىدىن پايدىلانغاندا پروگرامما كودى تېخىمۇ ئىخچام كۆرنەتتى،ئۇزاققا قالماي يېزىق كۆرسېتىش،گرافىك كۆرسېتىش تەييار ئامبىرى،ئۇيغۇرچە كۆرسېتىشكە ئالاقىدار يازمامنى كۆپچىلىككە سۇنىمەن،كۆپچىلىك ئازىراق تەخىر قىلغاي.
ۋاقىت مۇناسېۋىتى بىلەن بەزى تەپسىلاتلار ئېنىق بولماي قالغان بولۇشى مۈمكىن،چۈشىنەلمىگەن نۇقتىلارنى «مەن Arduinoغا ئاشىق» نامىلىق كىتابتىن،مۇناسېۋەتلىك يازمىلاردىن ئىزدەپ كۆرۈشۈڭلارنى ياكى تېما ئاستىغا ئىنكاس شەكىلىدە قالدۇرۇشىڭلارنى سورايمەن.
پروگرامما كودىنى چۈشىنەلمىگەن بولسىڭىز  «مەن Arduino غا ئاشىق» نامىلىق كىتابتىكى «قوشۇمچە/C ئاردىينۇ پروگرامما تىلىنىڭ گىرامماتىكا پايدىلانمىلىرى» نامىلىق بۆلىكىنى كۆرۈپ چىقىڭ.
بىز ئۆز-ئارا ئۈگىنىشكە،ھەمكارلىشىشقا مۇھتاج! قېرىنداشلىرىمىزنىڭ ياخشى تەكلىپ-پىكىرلىرىنى،قىممەتلىك بىلىملىرىنى،تەجرىبىلىرىنى ئايىماسلىقىنى سورايمەن!
ھۆرمەت بىلەن:ئېلېكتىر چەۋەنداز
2014-يىلى ھۇتنىڭ 12-كۈنى يېزىلىدى
سەمىمي ئەسكەرتىش: بۇ تېما مەخسۇس Arduino  ئۈچۈن يېزىلدى،شۇڭا باشقا جەھەتتىن ياردەم سورىماقچى بولغان قېرىنداشلىرىمىزنىڭ ئالىپ تورىنىڭ ياردەم سەھىپىسگە ياكى مۇناسېپ ھالدىكى باشقا تېمىلارغا ئىنكاس يېزىشىنى،قالايمىقان ئىلان ۋە ياردەم خاراكتىرلىك ئىنكاسلارنى يازىماسلىقىنى سەمىمىيلىك بىلەن ئۆتىنىمەن.

45

تېما

380

يازما

880

تەجرىبە

تەكلىپلىك ئەزا

Rank: 5Rank: 5

نادىر
0
جۇغلانما
3678
ئاقچا
0
QQ
ablimitt ۋاقتى: 2014-2-12 17:38:03 | ھەممە قەۋەتنى كۆرۈش
ۋاھ، ئەمدى كىچىسىمۇ شەپەرەڭدەك چىراق ياقماي يۈرىدىكەنمىزدە، شۇ ھىندىستانانغا كىچىسى بېرىپ ھەممە سىنارەتلېرىنى ئەكىلىۋالساق بىچارىلەر نىم بۇپ كىتەر-ھە؟!...

8

تېما

376

يازما

764

تەجرىبە

ئالىي ئەزا

Rank: 4

نادىر
0
جۇغلانما
2902
ئاقچا
0
QQ
فەخرىي ۋاقتى: 2014-2-12 21:49:33 | ھەممە قەۋەتنى كۆرۈش
ablimitt يوللىغان ۋاقتى  2014-2-12 17:38
ۋاھ، ئەمدى كىچىسىمۇ شەپەرەڭدەك چىراق ياقماي يۈرىدىكەن ...

يۇمۇرلۇق ئىنكاس بوپتۇ
ئەپ تەرجىمە قىلىشنىڭ قىزغىنلىقىدا كۆزۈمگە ئۇيقۇ كەلمە ...

14

تېما

864

يازما

119

تەجرىبە

ئالاھىدە ئەزا

Rank: 5Rank: 5

نادىر
0
جۇغلانما
3482
ئاقچا
1
amat015 ۋاقتى: 2014-2-12 22:46:58 | ھەممە قەۋەتنى كۆرۈش
ئاۋۇ ماشىننىمۇ ئىيىقچاق بىلەن ياسامدۇق ياكى 51 يەككە ئۆزەك بىلەنمۇ؟
يەكەن دىتاللار مۇنبىرى ئىچىۋىتىلدى:http://www.yakan.tk

8

تېما

76

يازما

507

تەجرىبە

ئالىي ئەزا

Rank: 4

نادىر
0
جۇغلانما
1398
ئاقچا
1
sadir102 ۋاقتى: 2014-2-12 23:24:53 ئالپ يانفون نۇسخىسىدا يېزىلغان | ھەممە قەۋەتنى كۆرۈش
ياخشى يازمىلىرىڭىزغا رەھمەت.

3

تېما

155

يازما

1012

تەجرىبە

ئالاھىدە ئەزا

Rank: 5Rank: 5

نادىر
0
جۇغلانما
3168
ئاقچا
4
osmanturpan ۋاقتى: 2014-2-12 23:34:00 | ھەممە قەۋەتنى كۆرۈش
ماشىنا ياكى باشقا قاتناش قوراللىرىغا بىكىتىۋالسا ئۈنۈمى تېخىمۇ ياخشى بولىغۇدەك، توسالغۇغا يولۇققانداق ئاپتۇماتىك سىگنال بېرىدىغان قىلىپچۇ.

7

تېما

146

يازما

182

تەجرىبە

ئالىي ئەزا

Rank: 4

نادىر
0
جۇغلانما
669
ئاقچا
0
$BashbugH$ ۋاقتى: 2014-2-13 13:43:39 | ھەممە قەۋەتنى كۆرۈش
ماشىنىنىڭ ئارقا تەرپىگە ئورنىتىدىغان ئارلىق سەزگۈچ ئورنىدا ئىشلىتىشكە بولامدۇ؟

29

تېما

179

يازما

3154

تەجرىبە

تەكلىپلىك ئەزا

Rank: 5Rank: 5

نادىر
2
جۇغلانما
7190
ئاقچا
66
e-chewendaz  ئىگىسى| ۋاقتى: 2014-2-13 17:27:45 | ھەممە قەۋەتنى كۆرۈش
ئاۋۇ ماشىننىمۇ ئىيىقچاق بىلەن ياسامدۇق ياكى 51 يەككە ئۆزەك بىلەنمۇ؟

ئەسسالامۇ ئەلەيكۇم !
قايسىسىدا ياسىسىڭىز بولىۋىرىدۇ.گەپ سىزنىڭ قايسىغا پىششىق بولۇشىڭىزدا.

ماشىنىنىڭ ئارقا تەرپىگە ئورنىتىدىغان ئارلىق سەزگۈچ ئورنىدا ئىشلىتىشكە بولامدۇ؟

بۇ سەزگۈچ مودىلى تۈز لىنيە بويىچە تىنىچ ھالەتتە ئارلىق ئۆلچەيدۇ،بولۇشى مۈمكىن،بىراق ئۈنۈمى كۆڭلىڭىزدىكىدەك بولماسلىقى مۈمكىن.(چۈنكى مەنمۇ تەجرىبە قىلىپ باقمىغاچقا  ھازىرچە بىر نېمە دىيەلمەيمەن)

0

تېما

30

يازما

36

تەجرىبە

تىرىشچان ئەزا

Rank: 2

نادىر
0
جۇغلانما
127
ئاقچا
0
قايماق ۋاقتى: 2014-2-13 17:36:21 | ھەممە قەۋەتنى كۆرۈش
تىمىڭىزدا چىققان ئەسۋاپلارنىڭ خەنچىسىنى يېزىپ قويغان بولسىڭىز سېتىۋالىدىغانلارغا ياردىمى بولاتتى
كىرگەندىن كېيىن ئىنكاس يازالايسىز كىرىش | ئەزا بولۇش

سەھىپە جۇغلانما قائىدىسى

تېما يوللاش ئالدىنقى تېما كېيىنكى تېما تېز ئىنكاس تۈرگە قايتىش 这是一个自定义按钮
تېز ئىنكاس چوققىغا قايتىش سەھىپىگە قايتىش