\chapter{制作与调试}

\section{硬件电路的布线与焊接}

\subsection{总体特点}

该系统所涉及的各部分硬件电路，总体的特点是：

\begin{enumerate}
  \item 电路原理简单，所用的器件均为常用器件。
  \item 由于路数较多（38 路），电路的规模较大，因此在制作中只做了 8 路。
  
  因此，应合理布线，以降低焊接难度，降低出错率，同时防止干扰。
\end{enumerate}

\subsection{电路划分}

为方便焊接与调试，把电路划分为两大块：

\begin{enumerate}
  \item 探测器接收，放大电路和整形电路为一块电路板；
  \item 编码器、2051 单片机和控制开关为一块电路板。
\end{enumerate}

\subsection{焊接}

焊接前应熟悉各芯片的引脚，焊接时参照电路图，仔细地连接引脚。按照以下原则进行焊接：

\begin{enumerate}
  \item 先焊接各芯片的电源线和地线，这样确保各芯片有正确的工作电压；
  \item 同类的芯片应顺序焊接，在一片焊接并检查好之后，其他的同类芯片便可以参照第一片进行焊接。这样便可大大节省时间，也可降低出错率。
\end{enumerate}

\section{调试}

\begin{enumerate}
  \item 在 40-6 线优先编码器，由于没有详细阅读优先编码器的真值表，我认为优先编码器为低位优先，因此所设计的编码标准（取小号有效）不符合标准。不过发现错误后，对硬件电路无需修改，只要修改编码标准为取大号有效，便可以解决问题。
  \item 由于光电池的响应信号经放大、编码，到达单片机 P1 口时有一定的延时，为使单片机准确地通过外部中断进行有效数据的采集，应知道延时的大概范围。编写单片机程序时，编写了一个延时$\qty2\ms$的子程序，可以调用进行一定的延时，通过延时时间不同的程序进行多次烧录并进行调试，然后比较所得的不同结果，这样便可以大概知道要采集正确的数所需的延时时间（最后程序采用的延时时间为$\qty2\ms$）。
  \item 电路中同时控制激光发射和单片机外部中断的开关为普通的按钮开关，因此在按下和弹起都有颤动，这样会引起单片机外部中断的多次响应，使一次``射击动作''引起多次响应，单片机输出多个值。通常的消颤方法有两种：硬消颤和软消颤。硬消颤指通过硬件上的消颤电路使开关的一次动作只能产生一个脉冲跳变；而软消颤主要通过延时或对响应的屏蔽来实现。在该设计中采用较为简便的软消颤，具体的方案见第五章。
\end{enumerate}