1 00:00:06,678 --> 00:00:08,800 [Powered by Google Translate] CHRISTOPHER BARTHOLOMEW: Felly, rydych wedi bod yn clywed yn ôl pob tebyg a 2 00:00:08,800 --> 00:00:11,610 llawer am Arduino, a'r holl ffyrdd gwych gallai fod yn 3 00:00:11,610 --> 00:00:15,270 raglennu gan ddefnyddio C i dderbyn mewnbwn gan dyfeisiau ymylol 4 00:00:15,270 --> 00:00:17,760 fel botymau, synwyryddion a knobs. 5 00:00:17,760 --> 00:00:20,970 Neu arddangos a rheoli allbwn drwy gydrannau ffisegol 6 00:00:20,970 --> 00:00:24,130 fel goleuadau, siaradwyr, servos a moduron. 7 00:00:24,130 --> 00:00:27,510 Ond beth yw Arduino, mewn gwirionedd? 8 00:00:27,510 --> 00:00:30,640 Mae Arduino yn fath o microcontroller, a 9 00:00:30,640 --> 00:00:33,920 Gall microcontroller cael ei ystyried fel raddfa iawn i lawr 10 00:00:33,920 --> 00:00:36,530 cyfrifiadur sy'n cynnwys cydrannau megis 11 00:00:36,530 --> 00:00:39,550 prosesydd, symiau bach o cof ar gyfer storio syml 12 00:00:39,550 --> 00:00:42,720 rhaglenni, ac amrywiol mewnbwn / allbwn pinnau sy'n cynhyrchu 13 00:00:42,720 --> 00:00:45,090 cerrynt trydanol o ganlyniad i 14 00:00:45,090 --> 00:00:47,330 cyfarwyddiadau yn eich rhaglen. 15 00:00:47,330 --> 00:00:50,790 Mae'r pinnau ar Arduino yma i rhyngwyneb â'r 16 00:00:50,790 --> 00:00:54,210 cydrannau corfforol megis LEDs, siaradwyr, synwyryddion, 17 00:00:54,210 --> 00:00:56,860 moduron, a llawer mwy. 18 00:00:56,860 --> 00:01:00,660 Mae hwn yn R3 Uno Arduino y byddwn yn defnyddio 19 00:01:00,660 --> 00:01:02,210 drwy gydol y cwrs. 20 00:01:02,210 --> 00:01:04,660 Yn y fideo hwn, byddaf yn mynd dros dim ond rhai o'r prif 21 00:01:04,660 --> 00:01:06,110 elfennau o'r bwrdd hwn. 22 00:01:06,110 --> 00:01:09,540 Fodd bynnag, os hoffech ragor o wybodaeth, yr wyf yn argymell 23 00:01:09,540 --> 00:01:12,390 eich bod yn darllen, ewch i'r ddolen ar gyfer y Uno Arduino llawn 24 00:01:12,390 --> 00:01:13,800 fanyleb. 25 00:01:13,800 --> 00:01:19,060 Gall Pŵer ar gyfer y bwrdd yn cael ei dderbyn oddi wrth USB, allanol AC 26 00:01:19,060 --> 00:01:24,860 i gyflenwadau pŵer DC, neu drwy cysylltwyr batri. 27 00:01:24,860 --> 00:01:29,620 Am ymarferion hyn fideo, byddwn yn defnyddio USB ar gyfer pŵer. 28 00:01:29,620 --> 00:01:32,390 Os oes gennych ddiddordeb mewn ffyrdd eraill i ddarparu pŵer i eich 29 00:01:32,390 --> 00:01:35,940 Arduino bwrdd neu am wybod mwy am y pinnau pŵer, 30 00:01:35,940 --> 00:01:38,830 os gwelwch yn dda cyfeiriwch at yr adran pŵer y fanyleb 31 00:01:38,830 --> 00:01:40,530 cyswllt a ddarperir. 32 00:01:40,530 --> 00:01:44,350 Nesaf, mae dwy ran pin brif ar Arduino ein bod yn 33 00:01:44,350 --> 00:01:48,870 yn eu defnyddio i ddarparu foltedd i'n gydrannau - 34 00:01:48,870 --> 00:01:53,070 pinnau digidol a phinnau mewnbwn analog. 35 00:01:53,070 --> 00:01:54,840 Cyn i ni fynd ymhellach, gadewch i ni 36 00:01:54,840 --> 00:01:57,380 yn deall y ddau derm. 37 00:01:57,380 --> 00:02:00,450 Pinnau mewnbwn Analog ar gyfer cydrannau fel knobs, 38 00:02:00,450 --> 00:02:03,150 sy'n creu signalau analog. 39 00:02:03,150 --> 00:02:05,320 Gall knob ddarparu symiau gwahanol o wrthwynebiad i 40 00:02:05,320 --> 00:02:09,000 foltedd rhwng y ddau pinnau ei fod yn gysylltiedig ag ef. 41 00:02:09,000 --> 00:02:11,295 Cymerwch, er enghraifft, pylu golau. 42 00:02:11,295 --> 00:02:13,960 Gan fod y bwlyn wedi ei throi i un cyfeiriad, y golau yn 43 00:02:13,960 --> 00:02:17,340 yn dod yn mwy disglair oherwydd bod y gwrthwynebiad yn lleihau. 44 00:02:17,340 --> 00:02:20,400 Mae hyn yn darparu ar hyn o bryd cryfach trydanol i'r 45 00:02:20,400 --> 00:02:23,830 gydran, sy'n arwain at olau disglair. 46 00:02:23,830 --> 00:02:27,130 Nawr bod y pinnau digidol ychydig yn wahanol yn y 47 00:02:27,130 --> 00:02:29,910 maent yn cynhyrchu signal digidol sy'n dibynnu ar y 48 00:02:29,910 --> 00:02:32,650 swm y foltedd ar draws y pinnau. 49 00:02:32,650 --> 00:02:35,950 Signalau digidol ar gyfer y Arduino naill ai ar ar 5 50 00:02:35,950 --> 00:02:40,300 folt, neu seilio golygu i ffwrdd, neu sero folt. 51 00:02:40,300 --> 00:02:42,570 Cymerwch er enghraifft swits golau. 52 00:02:42,570 --> 00:02:44,320 Mae swits golau ddau werthoedd - 53 00:02:44,320 --> 00:02:45,870 ymlaen ac i ffwrdd. 54 00:02:45,870 --> 00:02:48,120 Pan fyddwch yn troi'r golau ar ddefnyddio'r switsh, rydych yn 55 00:02:48,120 --> 00:02:51,270 darparu grym llawn i'r golau. 56 00:02:51,270 --> 00:02:54,540 Wel, ar y pwnc o digidol ac analog, rwy'n siwr y 57 00:02:54,540 --> 00:02:58,940 ydych chi wedi sylwi erbyn hyn mae'r acronym PWM o dan y digidol 58 00:02:58,940 --> 00:03:00,520 pin adran. 59 00:03:00,520 --> 00:03:03,750 Mae hyn yn sefyll am Modiwleiddio Lled Pulse. 60 00:03:03,750 --> 00:03:07,260 PWM thrin y foltedd dros gyfnod o amser i gynhyrchu 61 00:03:07,260 --> 00:03:09,730 effeithiau modyliad sy'n debyg i'r rhai a 62 00:03:09,730 --> 00:03:11,570 y pinnau analog. 63 00:03:11,570 --> 00:03:14,630 Er enghraifft, drwy droi golau ymlaen ac i ffwrdd yn gyflym ar gyfer 64 00:03:14,630 --> 00:03:17,640 wahanol gyfnodau o amser, gall reoli ei golau 65 00:03:17,640 --> 00:03:18,680 disgleirdeb. 66 00:03:18,680 --> 00:03:21,380 Felly, efallai y byddwch yn gofyn i chi eich hun, os yw'r holl rhaid i chi 67 00:03:21,380 --> 00:03:24,470 ei wneud yw darparu rhywfaint o foltedd i ryw elfen er mwyn iddo weithio, 68 00:03:24,470 --> 00:03:27,040 pam hyd yn oed gael microcontroller? 69 00:03:27,040 --> 00:03:30,100 Wel, gadewch i ni edrych lefel uchel ar microcontroller sy'n 70 00:03:30,100 --> 00:03:32,140 Efallai y byddwn yn rhyngweithio gyda bob dydd - 71 00:03:32,140 --> 00:03:33,790 y cloc larwm. 72 00:03:33,790 --> 00:03:36,620 Mae'r cloc larwm yn mewnbynnau lawer, er enghraifft botymau, 73 00:03:36,620 --> 00:03:40,260 sy'n cael eu defnyddio i ryngweithio gyda'r cloc larwm rhaglen. 74 00:03:40,260 --> 00:03:43,770 Mae hefyd allbynnau sy'n cylchedau allyrru golau a elwir yn 75 00:03:43,770 --> 00:03:47,620 7 arddangosfeydd segment sy'n dangos yr amser. 76 00:03:47,620 --> 00:03:50,540 Mae hyn yn cael ei rheoli i gyd gan raglen sy'n cael ei gynnwys mewn 77 00:03:50,540 --> 00:03:52,740 cof microcontroller yn. 78 00:03:52,740 --> 00:03:55,570 Nawr, gadewch i ni edrych ar senario a gweld os gallwn 79 00:03:55,570 --> 00:03:58,970 ailadrodd y cloc larwm gyda hyn Arduino. 80 00:03:58,970 --> 00:04:01,240 Rydych yn barod i fynd i gysgu, ond bydd angen i chi osod eich 81 00:04:01,240 --> 00:04:03,010 larwm i ddeffro i fyny. 82 00:04:03,010 --> 00:04:06,100 Rydym yn gwybod bod trwy ddefnyddio rhai botymau gallwn osod rhai 83 00:04:06,100 --> 00:04:08,730 amrywiol, amser, sy'n rhoi i'r rhaglen 84 00:04:08,730 --> 00:04:10,040 amod y mae'n rhaid iddo fodloni'r. 85 00:04:10,040 --> 00:04:13,860 Megis, pan fydd y tro hwn yn wir, dylai'r rhaglen anfon 86 00:04:13,860 --> 00:04:17,130 arwydd i un arall pin sydd wedi'i gysylltu â siaradwr. 87 00:04:17,130 --> 00:04:19,860 A phan y signal yn cael ei dderbyn gan y siaradwr, mae'n 88 00:04:19,860 --> 00:04:22,130 Dylai chwarae sain ofnadwy. 89 00:04:22,130 --> 00:04:25,300 Gadewch i ni ddefnyddio'r cylched syml i roi rhywfaint o gyd-destun i'r hyn 90 00:04:25,300 --> 00:04:26,860 Rwy'n siarad am. 91 00:04:26,860 --> 00:04:29,760 Felly nawr bod eich larwm wedi ei osod, eich cyflwr yn cael ei storio yn awr 92 00:04:29,760 --> 00:04:31,170 er cof am y rhaglen. 93 00:04:31,170 --> 00:04:34,840 Ac ar ôl dim ond naw eiliad o gwsg, byddwch yn clywed y ofnadwy 94 00:04:34,840 --> 00:04:36,836 larwm seinio i ffwrdd. 95 00:04:36,836 --> 00:04:38,820 Rydw i'n mynd i fynd yn ei flaen a plug-in ein larwm yma. 96 00:04:47,410 --> 00:04:51,330 Nawr, nid ydym am i godi eithaf eto, felly rydym yn teimlo am y 97 00:04:51,330 --> 00:04:52,650 chael cyntun botwm. 98 00:04:52,650 --> 00:04:56,280 Rydym yn gadael yr arhosfan myfyrwyr cysgu, neu dorri ar draws y ofnadwy 99 00:04:56,280 --> 00:04:59,470 , sain larwm at jyst yn taro y botwm. 100 00:04:59,470 --> 00:05:02,620 Ond beth sy'n digwydd pan fydd y rhaglen y microcontroller yn 101 00:05:02,620 --> 00:05:05,420 yn derbyn signal oddi wrth y botwm chael cyntun? 102 00:05:05,420 --> 00:05:07,630 Wel, pan fydd y botwm chael cyntun yn cael ei bwyso, mae signal yn 103 00:05:07,630 --> 00:05:09,830 dderbyniwyd ar pin gwahanol. 104 00:05:09,830 --> 00:05:12,740 Yn gyffredinol, pan fydd y rhaglen yn derbyn y mewnbwn gan y 105 00:05:12,740 --> 00:05:16,480 pin mae'n adweithio drwy ffonio rhyw swyddogaeth i oedi, neu gysgu, 106 00:05:16,480 --> 00:05:19,600 y signal a gafodd ei anfon at ein pin siaradwr. 107 00:05:19,600 --> 00:05:23,540 Yr oedi hwn neu gwsg ar gyfer peth amser cyson a 108 00:05:23,540 --> 00:05:28,760 fel arfer yn ymwneud â naw munud, neu o ran Arduino, 540,000 109 00:05:28,760 --> 00:05:30,340 milieiliadau. 110 00:05:30,340 --> 00:05:33,380 Os nad yw'r cloc larwm yn cael ei ddiffodd cyn i'r chael cyntun 111 00:05:33,380 --> 00:05:36,540 timer disbyddu, bydd cyflwr y rhaglen yn anfon un arall 112 00:05:36,540 --> 00:05:39,560 arwydd i pin y siaradwr, gan droi 113 00:05:39,560 --> 00:05:42,350 y larwm ar unwaith eto. 114 00:05:42,350 --> 00:05:46,610 Nawr, beth sy'n gwneud Arduino arbennig i cs50 yw ei 115 00:05:46,610 --> 00:05:50,370 amgylchedd datblygu yn defnyddio'r iaith C, gan roi i chi 116 00:05:50,370 --> 00:05:53,970 pŵer i gymhwyso gwybodaeth a enillwyd mewn dull mwy uniongyrchol 117 00:05:53,970 --> 00:05:56,000 ymarferol ar y ffordd. 118 00:05:56,000 --> 00:05:58,750 Er nad oeddem yn cyffwrdd ar y pinnau arbennig arall 119 00:05:58,750 --> 00:06:01,310 ymwneud â'r Arduino, yr wyf yn argymell eich bod yn ymweld â'r 120 00:06:01,310 --> 00:06:05,090 manyleb a darllen am eu galluoedd ymhellach. 121 00:06:05,090 --> 00:06:07,340 Mewn un arall fideo, byddwn yn archwilio'r Arduino 122 00:06:07,340 --> 00:06:10,420 amgylchedd datblygu ar y peiriant cs50 ac ysgrifennu ein 123 00:06:10,420 --> 00:06:13,200 cais microcontroller gyntaf. 124 00:06:13,200 --> 00:06:16,700 Fy enw i yw Christopher Bartholomew, mae hyn yn cs50.