?? embedded systems device driver development - page 8 of 9.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0067)http://www.microcontroller.com/wp/DeviceDrivers/device_drivers8.htm -->
<HTML><HEAD><TITLE>Embedded Systems Device Driver Development - page 8 of 9</TITLE>
<META content=text/html;charset=iso-8859-1 http-equiv=content-type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR>
<SCRIPT language=JavaScript>
var browser = navigator.appName
var version = navigator.appVersion
var ver1 = version.substring(0, 1)
if (((browser == "Netscape") || (browser == "Mozilla")) && (ver1 >= 4) && (ver1 < 5)){
document.write('<link rel=stylesheet href="./DeviceDrivers_Files/nn8.css" type="text/css">')
} else{
document.write('<link rel=stylesheet href="./DeviceDrivers_Files/ie8.css" type="text/css">')
}
</SCRIPT>
<NOSCRIPT><LINK
href="Embedded Systems Device Driver Development - page 8 of 9.files/ie8.css"
rel=stylesheet type=text/css></NOSCRIPT></HEAD>
<BODY bgColor=#ffffff link=#0000ff text=#000000 vLink=#660099>
<TABLE width=694>
<TBODY>
<TR>
<TD><A name=top></A>
<DIV class=nb><IMG alt="Navigation bar" height=37
src="Embedded Systems Device Driver Development - page 8 of 9.files/navbar.gif"
width=694></DIV>
<DIV class=nbe><IMG alt="" height=37
src="Embedded Systems Device Driver Development - page 8 of 9.files/navbarend.gif"
width=12></DIV>
<DIV class=styleNavBarTop>
<TABLE border=0 cellSpacing=0 height=32 width=692>
<TBODY>
<TR align=left>
<TD width=20> </TD>
<TD width=18><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers.htm"><IMG
alt=Start border=0 height=14
src="Embedded Systems Device Driver Development - page 8 of 9.files/start.gif"
width=18></A></TD>
<TD width=14><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers7.htm"><IMG
alt="Previous page" border=0 height=14
src="Embedded Systems Device Driver Development - page 8 of 9.files/back.gif"
width=14></A></TD>
<TD align=middle width=80> 8 of 9 </TD>
<TD width=14><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers9.htm"><IMG
alt="Next page" border=0 height=14
src="Embedded Systems Device Driver Development - page 8 of 9.files/forward.gif"
width=14></A></TD>
<TD width=18><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers9.htm"><IMG
alt=End border=0 height=14
src="Embedded Systems Device Driver Development - page 8 of 9.files/end.gif"
width=18></A></TD>
<TD align=right width=50><A
href="http://microcontroller.com/wp"><IMG alt=Home border=0
height=14
src="Embedded Systems Device Driver Development - page 8 of 9.files/home.gif"
width=34></A></TD>
<TD width=30> </TD>
<TD align=left width=160><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers.htm">1</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers2.htm">2</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers3.htm">3</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers4.htm">4</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers5.htm">5</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers6.htm">6</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers7.htm">7</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers8.htm">8</A>
<A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers9.htm">9</A>
</TD>
<TD width=290> </TD></TR></TBODY></TABLE>
<P></P></DIV><NOBR>
<DIV class=style8p22><IMG alt="" border=0 height=363
src="Embedded Systems Device Driver Development - page 8 of 9.files/image8_22.png"
width=430></DIV>
<DIV class=ts8p0><SPAN class=ft0p8></SPAN></DIV>
<DIV class=ts8p1><SPAN class=ft0p8></SPAN></DIV>
<DIV class=ts8p2><SPAN class=ft0p8>IAR Aug 2000 </SPAN></DIV>
<DIV class=ts8p4><SPAN class=ft0p8></SPAN></DIV>
<DIV class=ts8p5><SPAN class=ft1p8>Figure 5: Selection of driver functions
during code generation<SPAN class=ft2p8> </SPAN></SPAN></DIV>
<DIV class=ts8p7><SPAN class=ft3p8></SPAN></DIV>
<DIV class=ts8p8><SPAN class=ft3p8>The automatically generated device
driver functions can be used like any other source </SPAN></DIV>
<DIV class=ts8p10><SPAN class=ft3p8>code library; i.e. the functions can
be called in a suitable order from the application </SPAN></DIV>
<DIV class=ts8p11><SPAN class=ft3p8>program. </SPAN></DIV>
<DIV class=ts8p13><SPAN class=ft4p8>Device driver portability
</SPAN></DIV>
<DIV class=ts8p15><SPAN class=ft3p8>While the implementation of the device
driver functions are highly target-dependent and </SPAN></DIV>
<DIV class=ts8p18><SPAN class=ft3p8>non-portable, the name and parameter
list (the function prototypes) of the device driver </SPAN></DIV>
<DIV class=ts8p22><SPAN class=ft3p8>functions provided to the application
program can be fairly standardized, thus increasing </SPAN></DIV>
<DIV class=ts8p23><SPAN class=ft3p8>portability. </SPAN></DIV>
<DIV class=ts8p25><SPAN class=ft3p8></SPAN></DIV>
<DIV class=ts8p26><SPAN class=ft3p8>It is therefore possible to make
device drivers that appear to be portable to the </SPAN></DIV>
<DIV class=ts8p28><SPAN class=ft3p8>application program although the
implementation is highly non-portable. </SPAN></DIV>
<DIV class=ts8p32><SPAN class=ft3p8></SPAN></DIV>
<DIV class=ts8p33><SPAN class=ft3p8>By using tools like IAR MakeApp<SPAN
class=ft5p8>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -