About Course
Source: onlinelearning.telkomuniversity.ac.id
General Course Description
Hardware Programming (CTI-3B3)
Course Description
The Hardware Programming course is conducted in the 5th semester. This course requires prerequisite courses, namely Digital Systems and Computer Organization and Architecture. The Hardware Programming course provides students with an understanding of hardware architecture, hardware utilization, communication protocols, sensing, controlling, and hardware assembly. Through this course, students are required to actively participate in lectures both in-class and in laboratory classes using an independent small group model (2-4 people). The lecture consists of 16 meetings conducted variatively through discussions, presentations, individual assignments, paper tracing, and major projects.
Expected Learning Outcomes
CLO-1 | Students are able to describe the concepts of programming, programming language structure, and hardware programming models (C4, P3, A3) |
CLO-2 | Students are able to apply the use of hardware design platforms in building hardware design prototypes (C5, P4, A4) |
CLO-3 | Students are able to apply programming for digital and analog sensing and programming for digital and analog actuators (C5, P4, A4) |
CLO-4 | Students are able to apply programming of hardware communication protocols (C5, P4, A4) |
Lecture References
- Bayle, Julien. 2013. C Programming for Arduino. Packt Publishing: Birmingham, UK.
- Purdum, Jack. 2015. Beginning C for Arduino: Learn C Programming for the Arduino (1st ed.). Apress: USA.
- Amariei, Cornel. 2015. Arduino Development Cookbook. Packt Publishing: Birmingham, UK.
- Fritzing Community. 2013. Open-source software for documenting prototypes, learning interactive electronics, and PCB production.
Main Topics
- Introduction to Hardware Programming
- Hardware Programming Language Structure
- Hardware Modeling and Architecture
- Hardware Design Modeling Platforms
- Prototyping on Hardware Design Modeling Platforms
- Programming the Use of I/O on Hardware
- Programming Digital Sensing on Hardware
- Programming Analog Sensing on Hardware
- Programming Analog and Digital Actuators on Hardware
- Programming Digital Communication Protocols on Hardware
- Programming Wireless Communication Protocols on Hardware
- Using Debugging Tools on Hardware
Lecture Rules
In each lecture session, you are expected to actively participate by:
- Paying attention to and/or studying the material provided by the lecturer
- Completing each quiz (pre and post) at every meeting
- Completing each class and individual assignment
- Participating in discussions about the material
At the beginning of each lecture, a pre-quiz will be conducted to measure your basic ability within a set time. Afterwards, lecture material according to the topic of the meeting will be provided. The material given can be slides, digital books, code, or instructions. Then, you are expected to complete the class assignment given by the lecturer at that meeting. Finally, before the class ends, you are expected to complete the post-class quiz to measure your post-learning ability.