-1+1509 
An Introduction To Microcontrollers

This course is meant to create a pathway into learning about microcontrollers, for people who are scared of the hardware and software trickery that comes with it. A hands-on approach is taken in this course through a combination of lecture and experimentation to teach you about the different functions that microcontrollers have. Additionally, visuals are used throughout lectures like step-by-step schematic building and line-by-line code explanations.

Lectures
  1. The Introduction

    Lesson 1: The Intro

    Want to learn about microcontrollers? Please start here! This lesson explains the course content, what expectations you should have and what parts are needed for the course.

    • Hardware Hello World

      Lesson 2: Hardware Hello World

      Building a ‘hello world’ application signifies a time honored approach to learning how to program. In this lesson, we will explore the first steps necessary for building and loading programs onto a microcontroller.

      • Input and Output

        Lesson 3: Input and Output

        All microcontrollers have general purpose input and output pins, often called GPIO. Here we will take a look at how to build a program and hardware to accept push-button input in order to affect output LEDs.

        • Timers and Timing

          Lesson 4: Timers and Timing

          All processors use a master clock frequency to execute instructions and microcontrollers are no different. In this lesson, we will explore the relation between processor speed, instruction timing, and internal timer modules.

          • Analog to Digital Conversions

            Lesson 5: Analog to Digital Conversions

            In order to interface to the analog world, microcontrollers often have an internal analog-to-digital converter. In this lesson, we will test the converter to understand how it works.

            • Polling vs. Interrupts

              Lesson 6: Polling vs. Interrupts

              In order to make your system as efficient as possible, you need to build a reactive system instead of a brute force polling system. In this lesson, we will explore why interrupts are important and why polling is inefficient.

              • Communication with a PC

                Lesson 7: Communication with a PC

                Most microcontrollers operate in an environment where they need to talk to other computers. In this lesson, we will use serial communication with our laptop to send commands to our microcontroller.

                • Design An LED Game

                  Lesson 8: Design An LED Game

                  At this point, we have tons of knowledge about microcontrollers, let’s take a break and do something fun: design a game! This game will be a game of skill with push buttons and LEDs.

                  • Design A Cyclops Eye

                    Lesson 9: Design A Cyclops Eye

                    Another internal module in microcontrollers generates what is called a PWM output. In this lesson, we will explore using these PWM output modules to make a cyclops eye with fading LEDs.

                    • AVR vs Arduino

                      Lesson 10: AVR vs Arduino

                      The arduino platform uses the AVR ATMEGA328 microcontroller to provide an awesome introduction to using microcontrollers, but there actually exists a world underneath arduino: let’s take a look at it.

                      Prerequisites

                      Generally, electronics is a difficult subject mathematically, however theoretically it's actually not as bad if you take a hands-on approach and create vivid imagery to demonstrate what is going on. Using this approach, virtually anyone with a basic math background and a desire to know more about electronics can get started. So the following prerequisites are necessary for this course:

                      Syllabus

                      Overview

                      This Introduction To Microcontrollers course will be split up into 10 lessons with the lecture video for each lesson hosted on youtube. The lectures will be 8-12 minutes in length so that you have enough time to see the information and can go over it twice to perform any of the experiments while following along with the video. Each lecture will contain 4 main sections: an introduction, theory, experiment and real world examples. In addition, each lesson video will be hosted at PyroEDU with downloadable offline information and material like homework, schematics, formulas and parts kit information.

                      Course Content

                      1. Introduction (Live!)
                      2. Hardware Hello World (Live!)
                      3. Input and Output (Live!)
                      4. Timers and Timing (Live!)
                      5. Analog to Digital Conversions (Live)!
                      6. Polling vs Interrupts (Live!)
                      7. Communicating with a PC (Live!)
                      8. Design An LED Game (Live!)
                      9. Design a Cyclops Eye (Live!)
                      10. AVR vs Arduino (Live!)

                      Expectations

                      You should expect to learn the basic of microcontrollers: input & output, timing, ADC, interrupts and how to build & program a microcontroller. Beyond that, you should also expect to get a better 'feeling' of what a microcontroller can do and where its limitations are.

                      Additional information

                      This course and its additional material is located at:

                      http://www.pyroelectro.com/edu/microcontrollers/

                      From there you can access all of the lectures (as we do them) and download homework, schematics, formulas and parts kit information.

                      Teacher qualifications

                      Hello! Aside from building many electronics tutorials and projects, and posting their full hardware schematics and source code on PyroElectro.com, I studied computer and electrical engineering at university and have Bachelor's + Master's degrees in the subject. My work is typically more slanted to digital hardware, however the basics are the same no matter if you're an analog designer or a digital designer.

                      Latest Update
                      Sensors Course - How To Sense Sound Lesson (2015-06-04 21:38:16)

                      "Hello Students!

                      Time to use some sound sensors in our new PyroEDU Introduction to Sensors course. This is a lesson about interfacing with sound sensors, here's a quick overview of this lesson:

                      We all hear and use sound in our daily lives, so we must also learn how to detect sound electronically. In this lesson we will use an electret microphone to convert sound from an acoustic wave, into an electrical signal.

                      Lesson 6 Link: http://www.pyroelectro.com/edu/sensors/sound/

                      Chris @ PyroElectro.com"

                      Roster
                      1. CharlesJCoopper
                      2. a.heshamm
                      3. bxh
                      4. Granola_Bar
                      5. darkmatter416
                      6. moki
                      7. longgoodknight
                      8. sackRelig
                      9. RadKenfo
                      10. Treaburn
                      11. olds0ul
                      12. ValiantEntity
                      13. mad5675
                      14. rs332602
                      15. dunz
                      16. LAR1979
                      17. jrhiggin
                      18. midnyght219
                      19. Zarniwoop
                      20. HolyBlobfish
                      21. knezmish
                      22. stephen_b_brown
                      23. STFUandLove
                      24. Excellion_Hero
                      25. aleler
                      26. odie513
                      27. sacc7729
                      28. jone7up
                      29. crogalosh
                      30. mclinetech
                      31. lbutts
                      32. thecuriousguy21
                      33. anawatson89
                      34. fluxium
                      35. ifr33m4n
                      36. Geekx
                      37. Finsend
                      38. j205025
                      39. BigBird0000
                      40. TagesAugen
                      41. jamesgillum
                      42. thear425
                      43. rach11
                      44. Suraj1301106057
                      45. NeeBo
                      46. utkarsh.bhatt12
                      47. aboody883
                      48. Dilancuan
                      49. AndrewCisco
                      50. brentshermana
                      51. aevrah
                      52. kurryup
                      53. Driftw00d
                      54. iamfritch
                      55. ModernWolf
                      56. akopanicz
                      57. thorrior
                      58. tpkalman
                      59. LWings21
                      60. Chromaburn
                      61. jjjvanloon
                      62. erin-choke-a-bitch
                      63. shakethesnake
                      64. milansstefanovic
                      65. foxboy
                      66. schnerman
                      67. bhavanasingh090
                      68. prateek_ch
                      69. xhulja
                      70. grigoramb
                      71. rifche
                      72. sulfurous
                      73. cheef_resident
                      74. julesj88
                      75. xaero
                      76. apidome
                      77. vpan17
                      78. faceinthegrass
                      79. L2BSmart
                      80. idrji
                      81. Reelix
                      82. aishwaryamurali
                      83. hookydoo
                      84. mjw
                      85. papagio
                      86. sabbysaur
                      87. khichi
                      88. white_cyclosa
                      89. MACROS
                      90. Ohey
                      91. Rabid_Monkey
                      92. GradualYeti
                      93. Talal-alotaibi
                      94. MR_WISKURS
                      95. Peroviendo
                      96. gvigelet
                      97. ashiqromeo
                      98. rohit7gupta
                      99. Bravo786
                      100. AntonH
                      101. icebal
                      102. Trajan.mp
                      103. worbc
                      104. Evotistical
                      105. bibin57110
                      106. puneethkumar23
                      107. ReffectsLRG
                      108. hexdream
                      109. dramaturg
                      110. jtmbags
                      111. morcillazo
                      112. korvil
                      113. chuckclj
                      114. javiernoval
                      115. grimmn
                      116. TheZombie
                      117. Nowa
                      118. prabhakar.csengg
                      119. rezz
                      120. corycruse
                      121. braindamage
                      122. thephotograph
                      123. dbansal5078
                      124. drumchaps
                      125. mnmx
                      126. raghav
                      127. tumwine
                      128. Beezlo
                      129. ElectronicByte
                      130. scarsAndFlames
                      131. Deepankar
                      132. mariosprado21
                      133. crichm03
                      134. RicoSpartan
                      135. Phil_E_Buster1
                      136. beachmouse
                      137. Anayansi-Iris
                      138. tesla47
                      139. mkunkel138
                      140. momnmb
                      141. falconteep
                      142. buguoruci
                      143. abstraktions
                      144. L3G3ND6
                      145. MACROS14
                      146. Rob_Haggis
                      147. od_essa
                      148. SEL_Work_Account
                      149. googoogjew
                      150. jddillard
                      151. sansha_kuvakei
                      152. klysium
                      153. morganfabian
                      154. giraffe34
                      155. aradove
                      156. uredditboris
                      157. guruji89
                      158. neolith22
                      159. saipranav.c
                      160. AKKI
                      161. snowfiring
                      162. tnickel
                      163. cratin
                      164. lasersandstuff
                      165. Joka999
                      166. wildwildwolves
                      167. JoanneR
                      168. smaroo
                      169. hardheartbeat
                      170. coffeeblack198
                      171. grovah
                      172. Kschutz
                      173. gokul
                      174. kingosraigi
                      175. JK_Laurila
                      176. coolpernicus
                      177. mickthemaniac
                      178. Theguybehindthescreen
                      179. nateg10
                      180. 10saumiljoshi24
                      181. NapoleonBonerpartee
                      182. fauxhemian5
                      183. kuatsimoto
                      184. jimmyslim22
                      185. kkmcg21
                      186. deletevalue
                      187. mohamed.waheed
                      188. adityaseven
                      189. vaGnomeMagician
                      190. Ozziemedes
                      191. jlegendary27
                      192. Usagi
                      193. carl.schuman
                      194. chiwakii
                      195. asingh21
                      196. kofdiamonds
                      197. foreverinloans
                      198. kinch
                      199. Arunkrishnan
                      200. Arunkrishnan
                      201. shada
                      202. Woffle
                      203. Rapturehawk
                      204. geezusfreak
                      205. slack0
                      206. yasirzreddit
                      207. livino
                      208. danyonu
                      209. davidesp
                      210. beangraff
                      211. Eecyhn
                      212. turkersenturk
                      213. spectrum
                      214. not4go10
                      215. kdlynch12
                      216. Heistanbul
                      217. wiiforvendetta
                      218. arunkollam
                      219. babushan
                      220. ahmadmzak
                      221. voraw
                      222. eleusis
                      223. Vexed
                      224. 20sat92
                      225. amirispop
                      226. frankm
                      227. conankids
                      228. Redbaron
                      229. -gecko-
                      230. aboutdabusiness
                      231. zet_man
                      232. hooray4alex
                      233. bendaizer
                      234. iamalbus
                      235. dvsax357
                      236. ajitjha
                      237. nieri
                      238. svendogee
                      239. chaosis
                      240. ni11256
                      241. eric4479
                      242. TheUltimateCreeper
                      243. jagathos
                      244. Zoom_Santos
                      245. Geriku
                      246. Imthewalrus06
                      247. Farhad_H_Reza
                      248. sheikhshadi
                      249. Tamagoyaki
                      250. shruthi.shivakumar
                      251. banderson1000
                      252. prasgane
                      253. batnabill
                      254. ajpennster
                      255. dumpfixxer
                      256. thegetawayplan9
                      257. Mmemjk42
                      258. Alexdabest17
                      259. yujyet
                      260. SamanaSun
                      261. bambiopensource
                      262. brownix001
                      263. juggler0
                      264. monicaleba
                      265. Diabetis17
                      266. jamal759
                      267. rameez_s
                      268. Uo218353
                      269. synthetichug
                      270. buttfreek
                      271. Dougiefl
                      272. Benny3400
                      273. yoze15
                      274. kamronb
                      275. pikeminnow
                      276. klunkymutt
                      277. hulk-parker
                      278. animusflux
                      279. fabio09
                      280. burubaxair
                      281. tmoreontop
                      282. back2schoolfool
                      283. jordangold123
                      284. seniorcafe
                      285. vmalik
                      286. seanknight
                      287. kemalay
                      288. Rezid
                      289. kaelvan
                      290. passthegouda
                      291. starskip
                      292. khcrew2
                      293. redditu
                      294. AYUSHMALVIYA
                      295. __hsams__
                      296. StB
                      297. capthook
                      298. .rameez
                      299. Darkness
                      300. Typing_monkey88
                      301. oke
                      302. kozmostar
                      303. rggmcn
                      304. jbs1054
                      305. flynnguy
                      306. apocrypha13142
                      307. hiddensloth
                      308. Julie
                      309. dhirenshah3
                      310. DuesExMachina96
                      311. messi
                      312. shaynee
                      313. Danze55
                      314. asunza
                      315. bwstu
                      316. LEVLEARN
                      317. inmesia
                      318. victorandrei
                      319. Gesteiger
                      320. eduardov113
                      321. nice_halibut
                      322. _CHM_
                      323. anaconda101
                      324. albertcode
                      325. SpecialGray
                      326. Prakash23
                      327. jubzzy
                      328. amger
                      329. sarah_ren
                      330. theEMPTYlife
                      331. thampsio
                      332. nemke
                      333. spontaneous
                      334. Derxo
                      335. Hebert002
                      336. infinit3knowledg3
                      337. mynameisdance
                      338. pwerix
                      339. srd42
                      340. ArduinoAficionado
                      341. Tertuis
                      342. dcrawford
                      343. phuqwit
                      344. free_spirit
                      345. oorosco
                      346. juanjosejaramillo
                      347. Quinnh1
                      348. Halkilt
                      349. ali-fares
                      350. farnsworthsright
                      351. DisqueDiego
                      352. jtazzk
                      353. sud-rhein
                      354. igghera
                      355. fghlj4359t0
                      356. hamstripe
                      357. tubamouse
                      358. Alicia
                      359. meszugge
                      360. Argens
                      361. Glitchgeek
                      362. LKJ78
                      363. jacobab43
                      364. cyncil
                      365. unclefuncle
                      366. gordomperdomper
                      367. Ahmad_Bolad
                      368. max_power992
                      369. anweshknayak
                      370. pavani
                      371. ashwani
                      372. Gundas3073
                      373. wobblymint
                      374. BigGuyFU
                      375. son36
                      376. ayushjain34
                      377. Serg_Red
                      378. tvalerio
                      379. jediejr
                      380. brichess
                      381. naterific
                      382. garthvader
                      383. janette3
                      384. nukeduke
                      385. tonny
                      386. allegorist
                      387. srishtij
                      388. ImplodingWalrus
                      389. mohan50
                      390. burkepowers
                      391. daguitarguy
                      392. JuicyJip
                      393. compilationfailed
                      394. kevinjosephjr421
                      395. vlaggimus
                      396. s_SpQR
                      397. jdkell
                      398. a2kram
                      399. ryanide7
                      400. Nightwing288
                      401. Maq
                      402. acepar
                      403. Mess
                      404. JonascF
                      405. theflyingbrant
                      406. jlramirez43
                      407. jackiewu
                      408. c.chung
                      409. blueorangetexture
                      410. mainfarme
                      411. MLSavage
                      412. CautiousNarwhal
                      413. YagamiLawliet
                      414. wewillsolvethesky
                      415. codyhtueaung
                      416. sathwikponnathota
                      417. michelleusam
                      418. nabid.ahmed93
                      419. mdnightpanther
                      420. rdiouf
                      421. RazVayne
                      422. neoezekiel
                      423. okyan0
                      424. PFRboy
                      425. thechrispainter
                      426. 19nicco90
                      427. woojay
                      428. zephyrean
                      429. andres410
                      430. kallelay
                      431. wdk21
                      432. megaleeker
                      433. alloftheweed
                      434. Flargnoffthegreat
                      435. mgombar
                      436. kreigos
                      437. SpartaSpartan117
                      438. awad
                      439. PropertyOfMatter
                      440. Lerms09
                      441. PolymathMark
                      442. mvresh
                      443. Hedrew
                      444. zruiz93
                      445. p3t3r.tnie
                      446. Faj
                      447. Saydine
                      448. xhyperamp
                      449. manystorms
                      450. Btch
                      451. zacharyv
                      452. tiaan871
                      453. Hatif
                      454. suyogw
                      455. dmacbride6
                      456. michaelqiu94
                      457. Justin_Obsurver
                      458. aditya20
                      459. mazusblight
                      460. Saelos
                      461. 0x7270-3001
                      462. HeeyBob
                      463. Rouxbo
                      464. ceater259
                      465. rohit_dralion
                      466. psicocat
                      467. qpone
                      468. ErinF.
                      469. neostache
                      470. adamdaboss
                      471. hbaghar
                      472. hkjairam
                      473. euphorialive
                      474. Lakshyana
                      475. Devipriya
                      476. immakinwaffles
                      477. kingmichael
                      478. mariamegne
                      479. jrmyster7
                      480. gareth
                      481. maftoun95
                      482. sodainmycereal
                      483. bhagone
                      484. leocaetano
                      485. IniyanD2
                      486. Sudesbparate
                      487. abirkand
                      488. 310green
                      489. Aquaman
                      490. mrroc
                      491. Nathanmyers123
                      492. Klaus
                      493. skull362
                      494. gsm24
                      495. Sleepy_Reenigne
                      496. ioannu9
                      497. Satrohan
                      498. samsimpson711
                      499. royjaison
                      500. videshpa
                      501. onuraltan
                      502. TBLIXXXY
                      503. Keepatitbro
                      504. torspo
                      505. HafizAfwan
                      506. afrrr
                      507. ksakash
                      508. Shaddap_
                      509. mure
                      510. leflyi
                      511. Jeffersonsc
                      512. nastrus
                      513. BSmithberger
                      514. clinter777
                      515. mikiozen
                      516. Ajay1397
                      517. Gowthamraj_ravi
                      518. Anj2017
                      519. anki1997137
                      520. shannonT16
                      521. JALGilbertson2811
                      522. acowegg
                      523. SheryarM
                      524. sch111785gm
                      525. Heinr01
                      526. AG1973