June 24, 2007
June 24, 2007
June 27, 2007
Electrical and Computer
12.324.1 - 12.324.9
Bridging the Gap with SLIP
Many embedded system projects make use of some type of serial communications in order to transmit data packets between devices. The choice of methods to manage transmission and receiving of data is critical, and small systems are no exception. Communications of this type can be troublesome without borrowing techniques from other disciplines. However, one very important criterion is that the protocol must be lightweight. If the interface evolves from a “Hello world” message displayed on HyperTerminal to a full-blown data packet-passing system, chances are that the code is overly complex and difficult to keep running reliably. Techniques borrowed from internet protocols can help send messages reliably between two devices less than an inch apart with less effort than one might assume. Since most Electrical and Computer Engineering students may not have been exposed to extensive computer science courses on data structures or network protocols (usually elective courses), a few topics could be borrowed from these areas for a crash course before embedded systems are introduced. This paper presents the foundation for a crash course that we have researched and developed. The topics will include circular queues (ring buffer) from data structures and SLIP protocol from network protocols, which will provide compact, efficient and reliable solutions for many student projects. We have also tested the techniques presented in this paper in our FAA Airliner Cabin Environment Research sensor network prototype.
Most electrical engineering students are not exposed to the courses needed to address many of the critical issues required for embedded system implementation, e.g. data structures, network protocols, and operating system device drivers. A computer science person would have had many of these courses, but minimal experience working with devices without an operating system. In addition, electrical engineering students traditionally have a C++ or Java course plus a microprocessors course covering an assembler language. Learning a more generalized, relatively low-level, portable language such as C with an emphasis on small embedded systems (a term we use to denote devices without an operating system) is more useful for these types of applications.
Courses on data structures, network protocols and operating systems are valuable, but adding these to an already tight schedule of electrical engineering curriculum is asking too much. This is why Boise State University is introducing an experimental one-semester crash course that will have the material in this Serial Line Internet Protocol (SLIP) article as its backbone 1,2. The process of bridging the gap with SLIP will be used as a case study, with other devices and protocols covered as homework and projects. We selected this route due to the lack of computer engineering program at Boise State. The course will emphasize object-oriented techniques that are applicable to small embedded systems, and cover select topics from data structures, network protocols and operating systems. Though not everything can be covered, hopefully enough areas will be surveyed that the student will gain an idea of possible techniques for approaching software problems so as not to feel as lost on projects involving software.
Planting, A., & Loo, S. M. (2007, June), Bridging The Gap With Slip Paper presented at 2007 Annual Conference & Exposition, Honolulu, Hawaii. 10.18260/1-2--2654
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: © 2007 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