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

📄 pic16cxxx-9.htm

📁 PIC单片机C语言教程!绝对经典
💻 HTM
字号:
<html>
<head>
<title>PIC16Cxxx单片机应用与设计</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
BODY {font-size:12px;font-family:宋体;}
td {font-size:12px;font-family:宋体;}

A:link {	COLOR: #0000ff; TEXT-DECORATION: underline}
A:visited {	COLOR:#0000ff; TEXT-DECORATION: underline}
A:active {	COLOR:red! important; TEXT-DECORATION: underline}
A:hover {	TEXT-DECORATION: none}
.b24 a:link {	FONT-SIZE: 12px; COLOR:#0000ff; TEXT-DECORATION: underline}
.b24 a:visited {FONT-SIZE: 12px; COLOR:#0000ff; TEXT-DECORATION: underline}
.b24 a:active {	FONT-SIZE: 12px; COLOR:#0000ff; TEXT-DECORATION: underline}
.b24 a:hover {	FONT-SIZE: 12px; COLOR:#990000; TEXT-DECORATION: none}
.lh13 {	LINE-HEIGHT: 130%}
.lh15 {	LINE-HEIGHT: 150%}
.lh17 {	LINE-HEIGHT: 170%}
.lh19 {	LINE-HEIGHT: 190%}
.lh30 {	LINE-HEIGHT: 300%}
-->
</style>
</head>

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" >
<table width="757" border="0" cellspacing="0" cellpadding="0">
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center"> 
    <td> <table width="700" border="0" cellspacing="0" cellpadding="0">
        <tr> 
          <td width="41%" height="46" valign="top"><img src="logo.gif" width="205" height="41"></td>
          <td height="46" width="59%" valign="bottom" align="right"> <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr> 
                <td align="right"><b><font style="font-size:16px" color="#990000">—— 
                  —— —— 技术资料下载中心</font></b> </td>
              </tr>
              <tr> 
                <td height="8"></td>
              </tr>
            </table></td>
        </tr>
        <tr> 
          <td height="1" colspan="2"></td>
        </tr>
        <tr bgcolor="#990000"> 
          <td height="1" colspan="2"></td>
        </tr>
        <tr> 
          <td colspan="2">&nbsp;</td>
        </tr>
        <tr> 
          <td colspan="2"><font style="font-size:16px" color="#000000"><b>>> <a href="index.htm">PIC16CXXX单片机应用与设计</a> 
            \</b></font></td>
        </tr>
        <tr> 
          <td colspan="2">&nbsp;</td>
        </tr>
      </table>
      <table width="700" border="0" cellspacing="0" cellpadding="2"  class="lh15">
        <tr> 
          <td align="center"><b><font size="3">第九章 PIC16CXX设计范例</font><font size="3"></font></b></td>
        </tr>
        <tr> 
          <td> <p>&nbsp;</p></td>
        </tr>
        <tr valign="top"> 
          <td height="300"> <p>&nbsp;&nbsp;&nbsp;&nbsp;前面几章已对PIC16CXX的硬件构成、指令系统、程序设计基础及系统扩充做了详细的叙述,相信你已经对PIC16CXX芯片有了相当的认识,下面几章的主要目的是帮助大家实际应用PIC。<br>
              <br>
              §9.1 开发步骤流程<br>
              <br>
              &nbsp;&nbsp;&nbsp;&nbsp;当决定选择PIC来实现设计后,一般可以采取下面的开发步骤来完成:</p>
            <p><img src="image/a389.gif" width="443" height="740" hspace="50"></p>
            <p>§9.2 设计实例<br>
              <br>
              &nbsp;&nbsp;&nbsp;&nbsp;下面的这些实例仅向读者展示PIC16CXX的一些基本应用,用户可以做参考。<br>
              <br>
              一、RB口电平变化中断的几种情况<br>
              <br>
              &nbsp;&nbsp;&nbsp;&nbsp;由于RB口中断是电平变化中断,无论有上升、下降沿变化都会产生中断。因此,若只有上升沿(或下降沿)中断是有效的,就必须设法剔除下降沿(或上升沿)的无效中断。<br>
              <br>
              (一)窄脉冲的上升沿中断:<br>
              &nbsp;&nbsp;&nbsp;&nbsp;1、中断特点<br>
              <img src="image/a390.gif" width="463" height="103" hspace="30"></p>
            窄脉冲时,上升沿产生中断响应后,关全体中断允许,因此下降沿时虽然也会把RBIF置1,但此时不产生中断。在中断返回前把RBIF清零,就剔除了下降沿的无效中断:<br>
            2、流程图<br> <br> <p align="center"> <img src="image/a391.gif" width="376" height="440"> 
            </p>
            <p>3、中断程序 </p>
            <p><img src="image/c7.gif" width="494" height="236" hspace="30"></p>
            <p>(二)宽脉冲上升沿中断:<br>
              <br>
              1、中断特性<br>
              <img src="image/a392.gif" width="424" height="120" hspace="30"> 
            </p>
            <p>&nbsp;&nbsp;&nbsp;&nbsp;当中断源脉冲很宽时,上升沿产生中断响应,下降沿将产生一个假中断,程序就该剔除这个假中断。<br>
              <br>
              2、流程图<br>
              <img src="image/a393.gif" width="328" height="507" hspace="50"></p>
            <p>3、程序清单</p>
            <p><img src="image/c8.gif" width="480" height="220" hspace="30"></p>
            <p>(三)电平跳变RB口中断<br>
              1、中断特点<br>
              &nbsp;&nbsp;&nbsp;&nbsp; 若RB口的上跳和下跳都是产生有效中断,那么中断源脉宽必须足够宽以使能不漏掉中断,最小脉冲宽为中断沿开始到中断程序中读RB口和清RBIF之间的最大时间。<br>
              <br>
              2、流程图<br>
              <img src="image/a394.gif" width="376" height="437" hspace="60"> 
            </p>
            <p>3、中断程序清单</p>
            <p><img src="image/c9.gif" width="466" height="204" hspace="30"> </p>
            <p>二、利用按键来唤醒CPU<br>
              <br>
              &nbsp;&nbsp;&nbsp;&nbsp;利用PIC16CXX系列RB口中断特性,可方便地由按键来唤醒CPU,而大部分时间CPU处于省电状态。<br>
              1、电路设计<br>
              &nbsp;&nbsp;&nbsp;&nbsp;选用PIC16C61,此电路实现以下功能:按SW1键亮LED1灯,松开后灯灭,与此类推,SW4对应LED4。CPU平时处于省电睡眠状态,在按键按下或松开时RB口电平变化引起中断,点亮或熄灭相应的LED,然后又回到省电睡眠。</p>
            <p align="center"><img src="image/a395.gif" width="306" height="230"></p>
            <p>2、程序流程图</p>
            <p align="center"><img src="image/a396.gif" width="300" height="638"></p>
            <p>3、程序清单</p>
            <p><img src="image/c10.gif" width="578" height="938" hspace="30"></p>
            <p>三、A/D转换<br>
              <br>
              1、电路设计<br>
              &nbsp;&nbsp;&nbsp;&nbsp;本例用PIC16C71实现单通道8位A/D转换,并将转换结果以二进制形式输出到RB口。由于A/D工作频率可选择为片内RC振荡,所以能在睡眠中实现A/D变化,而在A/D完成后唤醒CPU。</p>
            <p align="center"><img src="image/a397.gif" width="415" height="218"></p>
            <p>2、流程图</p>
            <p align="center"><img src="image/a398.gif" width="202" height="660"></p>
            <p>3、程序清单<br>
              <img src="image/c11.gif" width="535" height="946" hspace="30"></p>
            <p><br>
              <br>
            </p>
            <div align="center"></div>
            <div align="right"> 
              <p><br>
                <a href="PIC16Cxxx-9-1.htm">下一页</a></p>
            </div>
            <p><a href="PIC16Cxxx-1.htm">第一章</a> <a href="PIC16Cxxx-2.htm">第二章</a> 
              <a href="PIC16Cxxx-3.htm">第三章</a> <a href="PIC16Cxxx-4.htm">第四章</a> 
              <a href="PIC16Cxxx-5.htm">第五章</a> <a href="PIC16Cxxx-6.htm">第六章</a> 
              <a href="PIC16Cxxx-7.htm">第七章</a> <a href="PIC16Cxxx-8.htm">第八章</a> 
              <a href="PIC16Cxxx-9.htm">第九章</a> <a href="PIC16Cxxx-10.htm">第十章</a></p></td>
        </tr>
      </table>
      <table width="700" border="0" cellspacing="0" cellpadding="0">
        <tr> 
          <td width="20">&nbsp;</td>
          <td>&nbsp;</td>
        </tr>
      </table>
      <table width="700" border="0" cellspacing="0" cellpadding="0">
        <tr bgcolor="#990000"> 
          <td height="1" width="634"></td>
        </tr>
        <tr align="right"> 
          <td height="6"></td>
        </tr>
        <tr align="right"> 
          <td><font color="#990000" size="2">[ <a href="index.htm">返回</a> ]</font> 
          </td>
        </tr>
        <tr>
          <td>&nbsp;</td>
        </tr>
        <tr> 
          <td>&nbsp;</td>
        </tr>
      </table></td>
  </tr>
</table> 
 
</body> 
</html>

⌨️ 快捷键说明

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