Skip to content

This repo will illustrate material pertaining to the course embedded systems: an intelligent system with special-purpose computation capabilities. By addressing the internal organization of micro-controller systems used in a variety of engineered systems.

Notifications You must be signed in to change notification settings

MorganBergen/embedded-systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

embedded-systems

source code

  1. programs in c
  2. hardware and development environment
  3. universal asynchronous receiver/transmission (uart)
  4. sensor reading with tfmini lidar
  5. servo motor control programming
  6. timer interrupt handling
  7. intro into embedded linux
  8. real time dnn inferencing
  9. board to board communication
  10. implement an RC car’s components: milestone01
  11. python on pi to communicate with hifive: milestone02

material

the purpose of this repository is to illustrate material pertaining to the course embedded systems. An embedded system is an intelligent system with special-purpose computation capabilities, (e.g. smart appliance, cars, medical devices, etc.) The material will cover the hardware and software architecture of embedded systems, as how to program a microprocessor to interact with the physical world through sensors and actuators.

  • introduction to embedded systems, defining embedded systems, differentiating embedded systems from general-purpose computers.
  • embedded software echopsystem, introduction to tools and enviroments for developing embedded software (build toolchain, gnu make, ide, git)
  • c programming refresher
  • RV32 ISA, a brief introduction to RISC-V assembly language
  • microprocessor's memory address space
  • i/o how to interact with the physical world using sensors and actuators
  • interrupt, difference between interrupt and polling, how to use them, and the implications of using them
  • concurrency and threads, how to utilize the available parallelism in the hardware and develop concurrent embedded software
  • scheduling and real-time scheduling concepts in linux
  • cpu and memory architecture, how instructions get executed in the hardware and the micro-architecture of a basic RISC-V, single-cycle processor.
  • introduction to c programming
  • introduction to the embedded software development enviroment - sensor reading
  • servo moto control - timers
  • introduction to embedded linux - linux scheduler
  • real time dnn inference
  • self driving car
  • microcontrollers and embedded processors for interacting with the physical enviroment using i/o devices

About

This repo will illustrate material pertaining to the course embedded systems: an intelligent system with special-purpose computation capabilities. By addressing the internal organization of micro-controller systems used in a variety of engineered systems.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages