-
第一章流水灯的设计
介绍单片机的发展历史和开发环境;了解单片机程序设计的基本流程;介绍IO口的基本用法。
-
●1.1单片机应用简介、基本机构、开发环境介绍
以流水灯为例,讲解单片机的基本结构、引脚和最小系统电路,以流水灯为例介绍IO口的使用方法。
-
●1.2项目实现
利用仿真软件讲解项目的具体实现过程。
-
●1.3总结
本项目的小总结。
-
第二章键控流水灯的设计
在基于单片机的智能控制系统中,按键是最常用的人机接口。通过本项目的学习,我们将了解独立按键的工作原理和驱动方法。
-
●2.1独立按键原理及识别
以按键控制流水灯的流向为例,讲解独立按键的工作原理和识别方法。
-
●2.2项目实现
利用仿真软件讲解项目的具体实现过程。
-
●2.3总结
本项目的小总结。
-
第三章方波发生器的设计
定时器是单片机内部的重要资源,可以用于定时、计数、波形发生等用途。本项目中将讲解“定时/计数器”的工作原理和使用方法。同时引入中断的概念,提高程序的可读性和执行效率。
-
●3.1定时/计数器原理
以产生500Hz方波为例,讲解定时器的工作原理和相关的寄存器。
-
●3.2定时/计数器的工作方式
介绍定时器的工作方式0和1的具体用法。
-
●3.3中断系统及中断函数写法
分别以查询和中断方式为例,讲解利用定时器产生方波的方法。
-
●3.4项目实现
基于仿真软件实现项目的具体设计。
-
●3.5总结
本项目的小总结。
-
第四章电子琴的设计
本项目将讨论发声的基本原理,蜂鸣器和扬声器的驱动,利用单片机定时器产生波形的基本方法,矩阵式按键的组成原理以及识别方法。
-
●4.1项目介绍与准备工作、蜂鸣器和扬声器驱动
介绍蜂鸣器、扬声器的原理和驱动方法。
-
●4.2利用定时器发声
介绍声音与频率的关系,讲解程序设计的具体过程。
-
●4.3矩阵按键的原理及识别
介绍按键的工作原理,讲解反转法和扫描法的具体思路。
-
●4.4项目实现(一):声音的频率
利用Excel软件,计算音符与频率对照表。
-
●4.5项目实现(二):发声测试
利用Proteus和Keil软件实现发声的测试。
-
●4.6项目实现(三):矩阵式按键识别
讲解反转法矩阵式按键识别的原理和实现过程。
-
●4.7项目实现(四):完善程序
结合发声和按键识别实现系统的设计。
-
●4.8总结
本项目的小总结。
-
第五章声控灯系统的设计
本项目将介绍继电器模块的基本原理和使用方法,同时结合声音检测模块的学习,以及“秒定时”的实现技巧,完成声控灯的设计。
-
●5.1项目介绍、准备工作以及声音检测模块
介绍项目的具体组成,声音模块的工作原理和使用方法。
-
●5.2继电器驱动
介绍继电器的工作原理和使用方法。
-
●5.3秒定时的实现
讲解利用定时器实现1秒钟定时的常用方法。
-
●5.4项目实现(一)硬件电路设计
基于Proteus实现硬件电路的设计和测试。
-
●5.5项目实现(二)软件延时与定时器查询法延时
介绍软件延时和定时器查询法延时的实现过程。
-
●5.6项目实现(三)基于定时中断的延时法
利用定时中断方式实现延时功能。
-
●5.7总结
本项目的小总结。
-
第六章电子时钟的设计
本项目将学习数码管显示的基本原理和驱动方法;在了解静态显示原理的同时,重点掌握数码管动态显示原理和驱动方法;为了降低编程难度,引入状态图流程分析方法;学习“时钟走时”功能的实现技巧;学习按键调节时间功能的实现方法。
-
●6.1项目介绍、准备工作及数码管驱动
介绍项目的具体要求,系统的基本组成,数码管驱动方法等。
-
●6.2静态显示原理
介绍数码管静态显示和动态显示的异同,简要介绍数码管静态显示的工作原理和驱动方法。
-
●6.3数码管动态显示原理
介绍多片级联的数码管硬件结构,视觉暂留效应的定义以及在数码管动态显示中的应用。
-
●6.4数码管动态显示接口、驱动
介绍常用的数码管动态显示驱动方法,并详细介绍利用译码器和移位寄存器实现数码管动态驱动的方法。
-
●6.5基于状态图的流程分析、走时功能实现及按键设置功能实现
介绍走时功能的实现过程,以及引入状态图流程描述方法,进而明确系统的控制流程。
-
●6.6项目实现(一)单个数码管的测试
介绍数码管的硬件连接、字形码的计算以及驱动。
-
●6.7项目实现(二)多片数码管的测试
利用74HC138和74HC595实现多片数码管的动态驱动电路设计和测试。
-
●6.8项目实现(三)动态显示编程
利用视觉暂留效应实现数码管动态驱动。
-
●6.9项目实现(四)走时功能的实现
利用定时器实现1秒钟定时,完成时间信息的刷新,然后介绍拆数方法和传数过程。
-
●6.10项目实现(五)按键功能的实现
介绍按键扫描和识别方法,并依据状态图实现该系统的设计。
-
●6.11总结
本项目的小总结。
-
第七章计算器的设计
本项目将详细介绍数码管静态显示原理和驱动方法,同时进一步强化状态图流程分析方法和矩阵按键识别方法。
-
●7.1数码管静态显示原理、实现及驱动
介绍数码管静态显示的工作原理和驱动方法。
-
●7.2基于状态图的流程分析
根据计算器的工作过程,设计系统的状态图,并实现程序设计。
-
●7.3项目实现(一)系统硬件电路设计
基于Proteus绘制系统电路图,讲解74HC595与数码管的连接方法,以及级联方法,介绍网络标号的作用。
-
●7.4项目实现(二)数码管驱动
编写程序,利用串行口的工作方式0实现数码管的驱动。
-
●7.5项目实现(三)功能实现
完成矩阵式按键的识别,并依据状态图实现键函数的编程,最终实现计算器的设计。
-
●7.6总结
本项目的小总结。
-
第八章频率计的设计
外中断在信号采集中具有举足轻重的作用,该项目将学习外中断的使用方法,并讨论如何利用定时器进行外部计数。
-
●8.1外中断控制流程
搭建频率计仿真电路,配置外部中断的触发方式。
-
●8.2中断触发计数
讲解定时器的工作方式、定时初值的计算,以及项目的实现过程。
-
●8.3项目实现
利用仿真软件讲解项目的具体实现过程。
-
●8.4总结
本项目的小总结。
-
第九章 基于蓝牙的双机通信系统设计
本项目将学习串行口的工作原理和使用方法;介绍蓝牙模块的用法。
-
●9.1串行口功能与结构
项目简介,系统基本组成以及串口的结构和使用方法的介绍。
-
●9.2串行口工作方式
介绍串行口的工作方式,重点介绍波特率的计算过程。
-
●9.3蓝牙模块用法
以HC05蓝牙模块为例,介绍蓝牙模块的电特性、配置过程和基本用法;以DS18B20为例,介绍温度传感器模块的电特性和基本用法;介绍串行通信中常用函数的编写方法。
-
●9.4项目实现(一)温度传感器驱动
介绍DS18B20的复位、读、写以及温度采集函数的具体实现方法。
-
●9.5项目实现(二)串行通信编程实现
介绍串行口的波特率计算、晶振的选择、驱动函数的编写等,并利用Proteus中的虚拟终端完成串行口的测试。
-
●9.6项目实现(三)完善系统功能
详细介绍项目的实现过程。
-
●9.7总结
本项目的小总结。
-
第十章超声波身高检测系统设计
本项目将学习超声波模块和语音播报模块的使用方法,同时利用蓝牙模块完成数据的无线传输。
-
●10.1超声波模块介绍
项目简介、系统组成分析以及超声波模块的工作时序和使用方法介绍等。
-
●10.2语音模块介绍、检测流程及语音模块程序
介绍语音模块的基本结构和用法,并完成系统流程和程序设计过程。
-
●10.3项目实现
介绍延时函数的实现,定时器、波特率、系统晶振的配置,以及具体的系统设计过程。
-
●10.4总结
本项目的小总结。
-
第十一章数字电压表的设计
本项目将学习A/D转换的基本原理和ADC的基本用法。
-
●11.1项目介绍及其准备工作
项目简介、系统组成分析以及ADC的指标和典型模块介绍。
-
●11.2项目实现(一)硬件设计
按照设计要求,以ADC0808为核心模块,完成硬件电路的设计。
-
●11.3项目实现(二)软件框架
为A/D转换电路设计软件框架,为数据采集做好准备。
-
●11.4项目实现(三) 数据采集(软件延时法)
以软件延时法为例介绍A/D转换的实现过程。
-
●11.5项目实现(三)数据采集(查询法)
介绍查询法的基本原理和实现A/D转换的过程。
-
●11.6项目实现(三)数据采集(中断法)
介绍中断法实现A/D转换的过程。
-
●11.7项目实现(四)显示功能的实现(硬件设计)
以数码管静态显示为例,详细介绍显示电路的设计过程。
-
●11.8项目实现(四)显示功能的实现(软件设计)
编写数码管驱动程序,并完成整个项目的设计。
-
●11.9总结
本项目的小总结。
-
第十二章点阵显示系统设计
本项目将学习点阵显示模块的基本原理,以及8*8点阵以及16*16点阵汉字显示的实现方法。
-
●12.1项目介绍及其准备工作
项目简介、系统组成分析以及点阵的工作原理和驱动方法。
-
●12.2项目实现(一)8*8点阵电路设计
加载8*8点阵模块,利用74HC595和74HC138完成电路驱动设计。
-
●12.3项目实现(二)8*8点阵电路测试(74HC595传数)
讲解基于74HC595的传输函数的实现过程。
-
●12.4项目实现(二)8*8点阵电路测试(74HC138传数)
讲解基于74HC138的数据传输过程的实现方法。
-
●12.5项目实现(三)8*8点阵显示0-9
介绍基于8*8点阵实现数字0-9显示的具体实现过程。
-
●12.6项目实现(四)16*16点阵模块设计与驱动
介绍16*16点阵显示屏的电路连接方法。
-
●12.7项目实现(五)16*16点阵电路测试(列驱动)
完成16*16点阵电路的列驱动。
-
●12.8项目实现(五)16*16点阵电路测试(行驱动)
完成16*16点阵电路的行驱动,并完成完整的项目设计。
-
●12.9总结
本项目的小总结。