Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
training:embedded_systems [2016/02/01 20:06]
kluong [Readings]
training:embedded_systems [2021/09/19 21:59] (current)
Line 1: Line 1:
-====== Embedded Systems ======+===== Introduction ​=====
  
-====== Readings ======+Most of the projects in this lab include embedded systems and microprocessors,​ so this article will serve as your introduction to these components. You will most likely be working with embedded systems and microprocessors,​ so it is imperative that you get comfortable with these concepts.
  
-Most of these readings will be from wikipedia - they'​re great pages to start. If you're still confused, I suggest you do a little more background research to clarify what these concepts are before moving on.  
  
-  ​[[ https://en.wikipedia.org/wiki/​Microcontroller | Microcontroller ]] +===== Embedded Systems ===== 
-  - [[ https://​en.wikipedia.org/​wiki/​Embedded_system | Embedded System ​]] + 
-  ​- ​[[ https://​en.wikipedia.org/​wiki/​I%C2%B2C ​I2C ]] +An **embedded system** is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is //embedded// as part of a complete device often including hardware and mechanical partsA lot of the time, embedded systems are only designed to do specific tasksThey'​re not as robust as, say, a home PC. Because of this, the advantages of designing an embedded system is it's reduced size, low production cost, and improved performance. If you are doing a weatherbox project, you are most likely tasked with designing an embedded system from scratch; complete with sensors, circuitry, and a microprocessor/microcontroller. As you design your system, remember that your goal is to make it as small, cheap, and efficient as possible. If you need more information on embedded systems, ​[[ https://​en.wikipedia.org/​wiki/​Embedded_system | this wikipedia article ​]] is a good resource to start with. 
-  ​- ​[[ https://en.wikipedia.org/wiki/Universal_asynchronous_receiver/​transmitter ​| UART ]] + 
-  ​- ​[[ https://en.wikipedia.org/wiki/Analog-to-digital_converter ​ADC ]] +===== Microcontroller ===== 
-  ​- ​[[ https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus ​SPI ]] + 
-====== Assignment ======+A **microcontroller** is a small computer on a single integrated circuit. In modern terminology,​ it is a system on a chip or SoC. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/​output peripherals. Program memory in the form of Ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications,​ in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips. ​[[ https://​en.wikipedia.org/​wiki/​Microcontroller ​microprocessor wikipedia page. ]] 
 + 
 + 
 +===== Communication Protocols ===== 
 + 
 +Whether it be sensors or a transceiver,​ modules that you implement onto your board will have to communicate with each other. **Communication protocols** are used to format and dictate how these modules communicate with each other. Different protocols have different pros and cons. A deep understanding of all the different protocols isn't necessary for what we do in the lab, but a basic understanding of some of them will benefit you and your project. The ones the lab uses most are **I2C**, **UART**, and **SPI**. Please review this table. If you desire further information on any of these protocols, the embedded link on the name of the protocol will lead you to more details. 
 + 
 + 
 + 
 + 
 + 
 +|Communication Protocol | Description | 
 +[[https://learn.sparkfun.com/tutorials/serial-communication|Universal Asynchronous Receiver/​Transmitter (UART)]]| Allows a microcontroller to communicate asynchronously(without CLK support) with a device. Uses only two data lines (Tx/Rx) for communication. | 
 +[[https://learn.sparkfun.com/tutorials/serial-peripheral-interface-spi|Serial Peripheral Interface (SPI)]]| Allows microcontroller to communicate synchronously(with CLK). Usually has four lines: Master In Slave out (MISO), Master out Slave in (MOSI), CLK, and an enable pin. | 
 +[[https://learn.sparkfun.com/tutorials/i2c|Inter-integrated Circuit (I2C)]]| A complex compromise between UART and SPI. Uses two lines: SDA and SCL. | 
 + 
 + 
 +===== Review ​===== 
 +You should ask yourself these questions to determine whether or not you properly understand the material on this page:
  
   - What is an embedded system?   - What is an embedded system?
   - What is a microcontroller?​   - What is a microcontroller?​
-  - SPI, ADC, UART, I2C+  - SPI, UART, I2C
     - What do they stand for?     - What do they stand for?
     - What are they?     - What are they?
     - What are they useful for?     - What are they useful for?
     - How are they all related?     - How are they all related?
 +  - How do you think this information will relate to this lab?
 +
 +====== Next Steps ======
  
 +[[ Arduino Introduction ]]
  
  • training/embedded_systems.1454357204.txt.gz
  • Last modified: 2021/09/19 21:59
  • (external edit)