This book is a hands-on introduction to the principles and
practice of embedded system design using the PIC microcontroller. Packed
with helpful examples and illustrations, it gives an in-depth treatment of
microcontroller design, programming in both assembly language and C, and
features advanced topics such as networking and REAL-Time operating
systems. It is accompanied by a CD-ROM containing copies of all programs
and software tools used in the text and a `student version of the C
complier
Designing Embedded Systems with PIC Microcontrollers: Principles and
Applications is ideal for students of electronics, mechatronics and
computer engineering. Engineers in industry and informed hobbyists will
also find this book a valuable resource when designing and implementing
both simple and sophisticated embedded systems using the PIC
Microcontroller.
The ability to write efficient, high-speed arithmetic routines ultimately depends
upon your knowledge of the elements of arithmetic as they exist on a computer. That
conclusion and this book are the result of a long and frustrating search for
information on writing arithmetic routines for REAL-Time embedded systems.
With instruction cycle times coming down and clock rates going up, it would
seem that speed is not a problem in writing fast routines. In addition, math
coprocessors are becoming more popular and less expensive than ever before and are
readily available. These factors make arithmetic easier and faster to use and
implement. However, for many of you the systems that you are working on do not
include the latest chips or the faster processors. Some of the most widely used
microcontrollers used today are not Digital Signal Processors (DSP), but simple
eight-bit controllers such as the Intel 8051 or 8048 microprocessors.
從結構上來說,實時多任務操作系統包括兩部分,一部分為操作系統內核(kernel),即實時執行程序(Real Time Executive:RTX),另一部分是輸入輸出部分(I/O)(注意開發系統不屬于操作系統的范疇);嵌入式系統對I/O的需求通常比較小(無文件系統需求),因此很多實時多任務操作系統本質上就是一個實時執行程序,如AMX(Kadak),VRTX(Microtec),iRMX(Intel)等(這里的X即:eXecutive),如果純粹從kernel的角度來考察目前流行的各種實時多任務操作系統的性能,它們的效率差別都不大。
在市面上可以得到一些RTX的源代碼(有用C實現的,有用匯編實現的,還有用PL/M語言實現的),從internet上也可以蕩一些下來(我介紹一個站點www.eg3.com,堪稱世界電子工程師資源寶庫),下面我要介紹的一個RTX版本(我命名為SRTX:short RTX),可以說是RTX中的元老級產品了,來自某研究所,九十年代初他們到美國考察,從美國某公司購得。五年以前,SRTX在國內有售,許多搞工控的研究所利用SRTX開發了一些大型或小型的產品,這里介紹的SRTX我作了一些簡化和改動.
In a preemptive priority based RTOS, priority inversion
problem is among the major sources of deadline
violations. Priority inheritance protocol is one of the
approaches to reduce priority inversion. Unfortunately,
RTOS like uC/OS can’t support priority inheritance
protocol since it does not allow kernel to have multiple
tasks at the same priority. Although it has different ways
to avoid priority inversion such as priority ceiling
protocol, developers still have some difficulties in
programming real time applications with it. In this paper,
we redesign the uC/OS kernel to provide the ability to
support round robin scheduling and implement priority
inheritance semaphore on the modified kernel. As result,
we port new kernel with priority inheritance semaphore to
evaluation board, and evaluate the execution time of each
of the kernel service as well as verify the operations of
our implementation.
This application report describes the use of Timer_A3 to decode RC5 and SIRC TV IR remote control signals. The decoder described in this report is interrupt-driven and operates a background function using specific features the Timer_A3. Only a small portion of the MSP430 CPU?s nonREAL-Time resources is used. Specific hardware bit-latching capabilities of the Timer_A3 module are used for REAL-Time decoding of the IR data signal, independent
and asynchronous to the CPU. CPU activity and power consumption are kept to an absolute minimum level. The Timer_A3 decoder implementation also allows other tasks to occur simultaneously if required. The solutions provided are written specifically for MSP430x11x(1) and MSP430x12x derivatives, but can be adapted to any other MSP430 incorporating Timer_A3.
電視遙控器設計基於MSP430
celestia源代碼,Celestia, a REAL-Time 3D space simulation featuring a database of over 100000 stars, nearly a hundred solar system, objects, and a complete catalog of extrasolar planets.
Rao-Blackwellised Particle Filters (RBPFs) are a class of Particle
Filters (PFs) that exploit conditional dependencies between
parts of the state to estimate. By doing so, RBPFs can
improve the estimation quality while also reducing the overall
computational load in comparison to original PFs. However,
the computational complexity is still too high for many
REAL-Time applications. In this paper, we propose a modified
RBPF that requires a single Kalman Filter (KF) iteration per
input sample. Comparative experiments show that while good
convergence can still be obtained, computational efficiency is
always drastically increased, making this algorithm an option
to consider for REAL-Time implementations.
With this foundation, you explore a development model that addresses the complete range of issues in the design of embedded communications software, including REAL-Time operating systems, hardware and software partitioning, layering, and protocol stacks.
Sofia-SIP is an open-source SIP User-Agent library, compliant
with the IETF RFC3261 specification. It can be used as
a building block for SIP client software for uses such as VoIP,
IM, and many other REAL-Time and person-to-person communication
services. The primary target platform for Sofia-SIP is
GNU/Linux. Sofia-SIP is based on a SIP stack developed at
the Nokia Research Center.