📄 embedded systems device driver development - page 3 of 9.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0067)http://www.microcontroller.com/wp/DeviceDrivers/device_drivers3.htm -->
<HTML><HEAD><TITLE>Embedded Systems Device Driver Development - page 3 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/nn3.css" type="text/css">')
} else{
document.write('<link rel=stylesheet href="./DeviceDrivers_Files/ie3.css" type="text/css">')
}
</SCRIPT>
<NOSCRIPT><LINK
href="Embedded Systems Device Driver Development - page 3 of 9.files/ie3.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 3 of 9.files/navbar.gif"
width=694></DIV>
<DIV class=nbe><IMG alt="" height=37
src="Embedded Systems Device Driver Development - page 3 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 3 of 9.files/start.gif"
width=18></A></TD>
<TD width=14><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers2.htm"><IMG
alt="Previous page" border=0 height=14
src="Embedded Systems Device Driver Development - page 3 of 9.files/back.gif"
width=14></A></TD>
<TD align=middle width=80> 3 of 9 </TD>
<TD width=14><A
href="http://www.microcontroller.com/wp/DeviceDrivers/device_drivers4.htm"><IMG
alt="Next page" border=0 height=14
src="Embedded Systems Device Driver Development - page 3 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 3 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 3 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=ts3p0><SPAN class=ft0p3></SPAN></DIV>
<DIV class=ts3p1><SPAN class=ft0p3></SPAN></DIV>
<DIV class=ts3p2><SPAN class=ft0p3>IAR Aug 2000 </SPAN></DIV>
<DIV class=ts3p4><SPAN class=ft1p3>footnotes, and it can require
substantial efforts to make sure one is aware of, and can </SPAN></DIV>
<DIV class=ts3p5><SPAN class=ft1p3>handle, any changes to the new device.
</SPAN></DIV>
<DIV class=ts3p7><SPAN class=ft1p3></SPAN></DIV>
<DIV class=ts3p8><SPAN class=ft1p3>Design and implementation requires not
only programming experience but also </SPAN></DIV>
<DIV class=ts3p9><SPAN class=ft1p3>expertise in hardware design and
development tools. Coding is error-prone, as it can be </SPAN></DIV>
<DIV class=ts3p13><SPAN class=ft1p3>very difficult to initialize and
manipulate all configuration and status bits properly in the </SPAN></DIV>
<DIV class=ts3p16><SPAN class=ft1p3>correct sequence. </SPAN></DIV>
<DIV class=ts3p18><SPAN class=ft1p3></SPAN></DIV>
<DIV class=ts3p19><SPAN class=ft1p3>Debugging can prove to be particularly
tricky as the drivers may not work without </SPAN></DIV>
<DIV class=ts3p21><SPAN class=ft1p3>external hardware, and may need to
conform to timing constraints or other resource </SPAN></DIV>
<DIV class=ts3p22><SPAN class=ft1p3>limitations. They may need to run at
full speed and can sometimes not be single-stepped </SPAN></DIV>
<DIV class=ts3p25><SPAN class=ft1p3>in a debugger. </SPAN></DIV>
<DIV class=ts3p27><SPAN class=ft1p3></SPAN></DIV>
<DIV class=ts3p28><SPAN class=ft1p3>In practice, a fairly complete
hardware environment with a debug monitor or an emulator </SPAN></DIV>
<DIV class=ts3p30><SPAN class=ft1p3>is needed, as are additional
laboratory instruments such as an oscilloscope or a logic </SPAN></DIV>
<DIV class=ts3p31><SPAN class=ft1p3>analyser. A debug simulator can seldom
be used. </SPAN></DIV>
<DIV class=ts3p33><SPAN class=ft1p3></SPAN></DIV>
<DIV class=ts3p34><SPAN class=ft1p3>To summarize, hand-crafted device
driver development requires the following tasks: </SPAN></DIV>
<DIV class=ts3p38><SPAN class=ft1p3></SPAN></DIV>
<DIV class=ts3p39><SPAN class=ft2p3>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -