Asee peer logo

Impact of Piggybacked MATLAB in C-programming Course

Download Paper |

Conference

2016 ASEE Annual Conference & Exposition

Location

New Orleans, Louisiana

Publication Date

June 26, 2016

Start Date

June 26, 2016

End Date

August 28, 2016

ISBN

978-0-692-68565-5

ISSN

2153-5965

Conference Session

Software Applications in ET Programs

Tagged Division

Engineering Technology

Page Count

13

DOI

10.18260/p.25546

Permanent URL

https://peer.asee.org/25546

Download Count

214

Request a correction

Paper Authors

biography

Maddumage Karunaratne University of Pittsburgh, Johnstown

visit author page

Dr. Maddumage Karunaratne is an Associate Professor and the Head of the Electrical Engineering department at the University of Pittsburgh at Johnstown, PA. The department offers two undergraduate degrees in Electrical Engineering and Computer Engineering. Dr. Karunaratne earned a Bachelor of Science degree from the University of Moratuwa, a Master of Science from the University of Mississippi, and a Ph.D. from the University of Arizona.

Before joining academia, he gained fourteen years of extensive industry experience in Silicon Valley working in the semiconductor industry performing software development, application engineering, design, testing and verification of digital integrated circuits. He has taught electrical and general engineering classes at Pitt-Johnstown since 2004.

His research and teaching interests include Semiconductor circuit Testing and Verification, Low Power Design Analysis, Digital and Embedded Systems, Electromagnetic Wave Scattering, and IC Design Automation Software development. He has authored or coauthored 26 publications and he holds one US patent and another under review.

He can be reached at maddu@pitt.edu
225 Engineering and Science Building
University of Pittsburgh at Johnstown
Johnstown, PA 15904

visit author page

Download Paper |

Abstract

Abstract:

Today, an increasing number of scientists and engineers are spending more and more of their work hours in front of the computer. Electronic and semiconductor industry are making capable and inexpensive portable consumer devices as evident from smart phones and tablets that are coming out to the market at an accelerated phase. Manufactures have made attempts to launch hobby industries around inexpensive electronics, particularly processor boards, with more capabilities and easy to program systems such as Raspberry Pi. For individual developer or capable consumer those devices offer customization to a level that was never seen before. However, such customizations require development of computer programs to control the devices and data streams. When electrical and computer engineers are trained, it is becoming more imperative that nearly all acquire some level of computer programming skills to effectively function as engineers in their careers. The nature of work performed in industry changes as they progress in careers. Lack of programming ability and experience may challenge their opportunities for technical and even managerial advancements. For example, a senior engineer without programming experience would not become a project manager if that project requires a significant amount of software to be developed in house.

At this university, electrical engineering technology (EET) and computer engineering technology (CET) majors always take one semester course on computer programming so they can be effective in using embedded controllers and other programmable devices, later in their curricula or in industry after graduation. It is a C based programming course with few projects appropriate for second year engineering technology students. CET majors further study Java, Ada, and C flavored languages in their curricula. EET majors do not have opportunity to learn other languages although some of them would program – using proprietary languages- Programmable Logic Controllers (PLCs) after graduation in industrial settings.

Several of follow on courses taken by both majors require them to use MATLAB as a problem solving tool in advanced circuit theory and control systems theory courses. Several years ago at this university, students had been learning basic MATLAB on their own, and then learned advance features such as control and signal processing toolboxes with help from instructors in follow-on courses. Instructors in the upper level classes could only make limited efforts to help students learn MATLAB. Their efforts are geared toward actual subject contents which are heavy in abstract concepts and mathematics. The author introduced MATLAB in C programming course in the fall of 2012 with the intent of reducing the future burden of learning its basics on their own. That experience has already been published3 by the author.

This paper discusses the continuing experience in having MATLAB as an additional programming tool to sophomore level students who are learning programming in C language as their main objective. They still learn advanced concepts and toolboxes in higher level courses. An additional benefit expected and clearly seen over the years is that MATLAB reinforces concepts taught in C such as loops, indexing, conditionals, input/outputs, storage and file management, data and program structures, etc. Also, learning it at this stage to create animation programs provides incentives and variety to further practice algorithm development and problem solving skills. Practice of such skills is essential to become competent programmers.

In addition to the findings already discussed in the previous paper, this paper presents survey results from students in several follow-on courses after they have taken this basic C course with piggybacked MATLAB content. The conclusion provides feedback from students as they progress through follow on courses clarifying the cost-benefit of the enhancements done to the basic C programming course a few years back.

Karunaratne, M. (2016, June), Impact of Piggybacked MATLAB in C-programming Course Paper presented at 2016 ASEE Annual Conference & Exposition, New Orleans, Louisiana. 10.18260/p.25546

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2016 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015