⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 第二课:初步认识51芯片 (上一课我们的第一个项目完成了,可能有懂c语言的朋友会说......).htm

📁 单片机的c语言教程,属于初级教材,适合初学者,高手们就不要下了啊!!
💻 HTM
📖 第 1 页 / 共 4 页
字号:
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>2个16位定时/计数器<O:P></O:P></font></SPAN></P></TD>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>2个16位定时/计数器<O:P></O:P></font></SPAN></P></TD></TR>   
<TR>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>一个串行通讯口<SPAN   
lang=EN-US><O:P></O:P></SPAN></font></SPAN></P></TD>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>一个串行通讯口<SPAN   
lang=EN-US><O:P></O:P></SPAN></font></SPAN></P></TD></TR>   
<TR>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>6个中断源<O:P></O:P></font></SPAN></P></TD>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>6个中断源<O:P></O:P></font></SPAN></P></TD></TR>   
<TR>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>32条I/O引线<O:P></O:P></font></SPAN></P></TD>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>15条I/O引线<O:P></O:P></font></SPAN></P></TD></TR>   
<TR>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>片内时种振荡器<SPAN   
lang=EN-US><O:P></O:P></SPAN></font></SPAN></P></TD>   
<TD   
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt"   
vAlign=top width=284>   
<P align=center class=MsoNormal   
style="TEXT-ALIGN: center"><SPAN lang=EN-US   
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><font font>1个片内模拟比较器<O:P></O:P></font></SPAN></P></TD></TR></TBODY></TABLE></TD></TR>   
<TR>   
<TD width="714">   
<DIV align=center><font font>表2-1 AT89C51和AT89C2051主要性能表 <BR></font></DIV></TD></TR>
<TR>
<TD width="714">
<P class=MsoNormal 
style="TEXT-INDENT: 21pt; mso-char-indent-count: 2.0; mso-char-indent-size: 10.5pt"><SPAN 
lang=EN-US style="font-family: 宋体"><font font><O:P>  图2-1中是AT89C51和AT89C2051的引脚功能图。而表2-1中则是它们的主要性能表。以上可以看出它们是大体相同的,由于AT89C2051的IO线很少,导致它无法外加RAM和程序ROM,片内Flash存储器也少,但它的体积比AT89C51小很多,以后大家可根据实际需要来选用。它们各有其特点但其核心是一样的,下面就来看看AT89C51的引脚具体功能。<BR>  1.电源引脚<BR>    Vcc 40 电源端<BR>    GND 20 接地端<BR>    *工作电压为5V,另有AT89LV51工作电压则是2.7-6V,   
引脚功能一样。</O:P></font></SPAN></P>   
<P><font font>  2.外接晶体引脚</font></P></TD></TR>
<TR>
<TD width="714">
<DIV align=center><font font><IMG height=219 src="c02.files/2_2.gif" 
width=500></font></DIV></TD></TR>
<TR>
<TD width="714">
<DIV align=center><font font>图2-2 外接晶体引脚<BR></font></DIV></TD></TR>
<TR>
<TD width="714"><font font>    XTAL1 19 <BR>    XTAL2 18 
<BR>    XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。<BR>    *型号同样为AT89C51的芯片,在其后面还有频率编号,有12,16,20,24MHz可选。大家在购买和选用时要注意了。如AT89C51   
24PC就是最高振荡频率为24MHz,40P6封装的普通商用芯片。</font>   
<P><font font>  3.复位 RST 9<BR>    在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。常用的复位电路如图2-3所示。<BR>    *复位操作不会对内部RAM有所影响。<BR></font></P></TD></TR>
<TR>
<TD width="714">
<DIV align=center><font font><IMG height=300 src="c02.files/2_3.gif" 
width=270></font></DIV></TD></TR>
<TR>
<TD width="714">
<DIV align=center><font font>图2-3 常用复位电路<BR></font></DIV></TD></TR>
<TR>
<TD width="714"><font font>  4.输入输出引脚<BR>    (1) P0端口[P0.0-P0.7]   
P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL。<BR>      对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。<BR>      在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。<BR>    (2)   
P1端口[P1.0-P1.7]   
P1是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。<BR>      对内部Flash程序存储器编程时,接收低8位地址信息。<BR>    (3)   
P2端口[P2.0-P2.7]   
P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。<BR>      对内部Flash程序存储器编程时,接收高8位地址和控制信息。<BR>      在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。<BR>    (4)   
P3端口[P3.0-P3.7]   
P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。<BR>      对内部Flash程序存储器编程时,接控制信息。除此之外P3端口还用于一些专门功能,具体请看   
表2-2.。<BR>      *P1-3端口在做输入使用时,因内部有上接电阻,被外部拉低的引脚会输出一定的电流。 <BR></font></TD></TR>
<TR>
<TD width="714">
<TABLE align=center border=1 cellPadding=0 cellSpacing=0 
style="BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; BORDER-LEFT: medium none; BORDER-RIGHT: medium none; BORDER-TOP: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt">
<TBODY>
<TR>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt" 
vAlign=top width=284>
<P align=center class=MsoNormal 
style="TEXT-ALIGN: center"><SPAN lang=EN-US><font font>P3</font></SPAN><font font><SPAN 
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">引脚</SPAN></font></P></TD>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt" 
vAlign=top width=284>
<P align=center class=MsoNormal 
style="TEXT-ALIGN: center"><SPAN 
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'"><font font>兼用功能</font></SPAN></P></TD></TR>
<TR>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt" 
vAlign=top width=284>
<P align=center class=MsoNormal 
style="TEXT-ALIGN: center"><SPAN lang=EN-US><font font>P3.0</font></SPAN></P></TD>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
vAlign=top width=284>
<P align=center class=MsoNormal 
style="TEXT-ALIGN: center"><SPAN 
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'"><font font>串行通讯输入(</font></SPAN><font font><SPAN 
lang=EN-US>RXD</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">)</SPAN></font></P></TD></TR>
<TR>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-top-alt: solid windowtext .5pt" 
vAlign=top width=284>
<P align=center class=MsoNormal 
style="TEXT-ALIGN: center"><SPAN lang=EN-US><font font>P3.1</font></SPAN></P></TD>
<TD 
style="BORDER-BOTTOM: windowtext 0.5pt solid; BORDER-LEFT: medium none; BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: medium none; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; PADDING-TOP: 0cm; WIDTH: 213.2pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -