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

📄 杭州电子&计算机工作室 欢迎您! welcome to hangzhou electron & computer studio.htm

📁 单片机C语言教程 初学单片机的非常实用.
💻 HTM
📖 第 1 页 / 共 2 页
字号:
                  style="FONT-FAMILY: 宋体">\r<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">回车符<SPAN 
                  lang=EN-US>(CR)<O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">0DH/13<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\t<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">水平制表符<SPAN 
                  lang=EN-US>(HT)<O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">09H/9<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\b<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">退格符<SPAN 
                  lang=EN-US>(BS)<O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">08H/8<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\f<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">换页符<SPAN 
                  lang=EN-US>(FF)<O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">0CH/12<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\'<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">单引号<SPAN 
                  lang=EN-US><O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">27H/39<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\"<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">双引号<SPAN 
                  lang=EN-US><O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">22H/34<O:P></O:P></SPAN></P></TD></TR>
              <TR>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 142.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=189>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">\\<O:P></O:P></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋体">反斜杠<SPAN 
                  lang=EN-US><O:P></O:P></SPAN></SPAN></P></TD>
                <TD 
                style="BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 142.15pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 0.5pt solid; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt" 
                vAlign=top width=190>
                  <P class=MsoNormal><SPAN lang=EN-US 
                  style="FONT-FAMILY: 宋体">5CH/92<O:P></O:P></SPAN></P></TD></TR></TBODY></TABLE>
            <DIV align=center>表5-1 常用转义字符表<BR></DIV></TD></TR>
        <TR>
          <TD>  常量可用在不必改变值的场合,如固定的数据表,字库等。常量的定义方式有几种,下面来加以说明。<BR>#difine False 
            0x0; //用预定义语句可以定义常量<BR>#difine True 0x1; 
            //这里定义False为0,True为1<BR>         
            //在程序中用到False编译时自动用0替换,同理True替换为1<BR>unsigned int code a=100; 
            //这一句用code把a定义在程序存储器中并赋值<BR>const unsigned int c=100; 
            //用const定义c为无符号int常量并赋值<BR>  以上两句它们的值都保存在程序存储器中,而程序存储器在运行中是不允许被修改的,所以如果在这两句后面用了类似a=110,a++这样的赋值语句,编译时将会出错。 
            <BR>说了一通还不如写个程序来实验一下吧。写什么程序呢?跑马灯!对,就写这个简单易懂的吧,这个也好说明典型的常量用法。先来看看电路图吧。它是在我们上一课的实验电路的基础上增加6个LED组成的,也就是用P1口的全部引脚分别驱动一个LED,电路如图5-1所示。<BR>  新建一个RunLED的项目,主程序如下:<BR>#include 
            &lt;AT89X51.H&gt; //预处理文件里面定义了特殊寄存器的名称如P1口定义为P1<BR>void 
            main(void)<BR>{<BR>//定义花样数据<BR>const unsigned char 
            design[32]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,<BR>0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,<BR>0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0,<BR>0xE7,0xDB,0xBD,0x7E,0xFF};<BR>unsigned 
            int a; //定义循环用的变量<BR>unsigned char b; 
            //在C51编程中因内存有限尽可能注意变量类型的使用<BR>//尽可能使用少字节的类型,在大型的程序中很受用<BR>do{<BR>for 
            (b=0; b&lt;32; b++)<BR>{<BR>for(a=0; a&lt;30000; a++); 
            //延时一段时间<BR>P1 = design[b]; 
            //读已定义的花样数据并写花样数据到P1口<BR>}<BR>}while(1);<BR>}<BR>  程序中的花样数据可以自以去定义,因这里我们的LED要AT89C51的P1引脚为低电平才会点亮,所以我们要向P1口的各引脚写数据O对应连接的LED才会被点亮,P1口的八个引脚刚好对应P1口特殊寄存器的八个二进位,如向P1口定数据0xFE,转成二进制就是11111110,最低位D0为0这里P1.0引脚输出低电平,LED1被点亮。如此类推,大家不难算出自己想要做的效果了。大家编译烧写看看,效果就出来,显示的速度您可以根据需要调整延时a的值,不要超过变量类型的值域就很行了。哦,您还没有实验板?那如何可以知道程序运行的结果呢?呵,不用急,这就来说说用KEIL 
            uVision2的软件仿真来调试IO口输出输入程序。<BR></TD></TR>
        <TR>
          <TD>
            <DIV align=center><IMG height=405 
            src="杭州电子&amp;计算机工作室 欢迎您! Welcome to HangZhou Electron &amp; Computer Studio.files/1.gif" 
            width=541><BR>图5-1 八路跑马灯电路<BR></DIV></TD></TR>
        <TR>
          <TD>  编译运行上面的程序,然后按外部设备菜单Peripherals-I/O 
            Ports-Port1就打开Port1的调试窗口了,如图5-3中的2。这时程序运行了,但我们并不能在Port1调试窗口上看到有会什么效果,这时我们可以用鼠标左击图5-3中1旁边绿色的方条,点一下就有一个小红方格在点一下又没有了,哪一句语句前有小方格程序运行到那一句时就停止了,就是设置调试断点,同样图5-2中的1也是同样功能,分别是增加/移除断点、移除所有断点、允许/禁止断点、禁止所有断点,菜单也有一样的功能,另外菜单中还有Breakpoints可打开断点设置窗口它的功能更强大,不过我们这里先不用它。我们?quot;P1 
            = 
            design[b];"这一句设置一个断点这时程序运行到这里就停住了,再留意一下Port1调试窗口,再按图5-2中的2的运行键,程序又运行到设置断点的地方停住了,这时Port1调试窗口的状态又不同了。也就是说Port1调试窗口模拟了P1口的电平状态,打勾为高电平,不打勾则为低电平,窗口中P1为P1寄存器的状态,Pins为引脚的状态,注意的是如果是读引脚值必须把引脚对应的寄存器置1才能正确读取。图5-2中2旁边的{}样的按钮分别为单步入,步越,步出和执行到当前行。图中3为显示下一句将要执行的语句。图5-3中的3是Watches窗口可查看各变量的当前值,数组和字串是显示其头一个地址,如本例中的design数组是保存在RAM存储区的首地址为D:0x08,可以在图中4 
            Memory存储器查看窗口中的Address地址中打入D:0x08就可以查看到design各数据和存放地址了。如果你的uVision2没有显示这些窗口,可以在View菜单中打开在图5-2中3后面一栏的查看窗口快捷栏中打开。<BR></TD></TR>
        <TR>
          <TD>
            <DIV align=center><IMG height=140 
            src="杭州电子&amp;计算机工作室 欢迎您! Welcome to HangZhou Electron &amp; Computer Studio.files/2.gif" 
            width=593><BR>图5-2 调试用快捷菜单栏</DIV></TD></TR>
        <TR>
          <TD>
            <DIV align=center><IMG height=370 
            src="杭州电子&amp;计算机工作室 欢迎您! Welcome to HangZhou Electron &amp; Computer Studio.files/3.gif" 
            width=587><BR>图5-3 各调试窗口</DIV></TD></TR>
        <TR>
          <TD>&nbsp;</TD></TR>
        <TR>
          <TD>
            <DIV align=center><A class=T12_R4 
            href="http://www.hificat.com/study/c%20lesson/lesson5/p5_1.rar" 
            target=_blank>示例程序下载</A></DIV></TD></TR>
        <TR>
          <TD>&nbsp; </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE class=coast cellSpacing=0 cellPadding=0 width=736 border=0>
  <TBODY>
  <TR>
    <TD align=middle>
      <DIV align=center>联系地址:浙江省杭州市拱北小区永和坊9幢504室 徐玮 
      邮政编码:310015<BR>Email:xu169@sina.com QQ:12739176 联系电话:0571-85956028(小灵通) 
      手机:13185018567(短信)<BR>杭州电子&amp;计算机工作室 版权所有 <BR>COPYRIGHT2003 HangZhou 
      Electron&amp;Computer Studio. All rights reserved 
</DIV></TD></TR></TBODY></TABLE></BODY></HTML>

⌨️ 快捷键说明

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