郭以贺 张宁 何玉钧
摘 要 目前,大多数高等院校数字电子技术基础课程的实验教学滞后于课堂讲授,且实验内容占讲授内容的比例偏低。为了实现在课堂上边讲授边实验,激发学生的学习兴趣并帮助学生及时掌握授课内容,设计一种便携式数字电子技术实验平台。其核心由逻辑分析仪和各种基本数字电子电路组成,采用STM32F103处理器作为主控芯片,采用液晶显示屏和按键实现人机交互。实践表明,采用该实验平台后,有效提高了课堂教学的质量。
关键词 逻辑分析仪;数字电子技术;微处理器;实验平台
中图分类号:G642.423 文献标识码:B
文章编号:1671-489X(2019)20-0027-02
Design of Portable Digital Electronic Technology Experimental Platform with Classroom//GUO Yihe, ZHANG Ning, HE Yujun
Abstract At present, the experimental teaching of the course “Digital Electronic Technology Basis” in most universities lags behind the classroom teaching, and the proportion of the experimental content in the teaching content is low. In order to realize the experiment while teaching in class, stimulate interest in learning and help stu-dents grasp the teaching content in time, this paper designs a portabledigital electronic technology experimental platform, which consists of logic analyzer and various basic digital electronic circuits. The STM32F103 processor is used as the main control chip, and the hu-man-machine interaction is realized by LCD and keys. Practice showsthat the experimental platform can effectively improve the quality of classroom teaching.
Key words logic analyzer; digital electronic technology; micro-pro-cessor; experimental platform
1 前言
高等院校數字电子技术基础课程包括课堂教学和实验教学。在课堂教学中,一般通过板书或幻灯片等方式呈现电路的输入和输出逻辑关系。受实验学时限制,大部分高校只能让学生对课程讲授的部分电路在实验室进行实验验证。这种传统的教学方式中,实验滞后于讲授,当学生在课堂遇到难以理解的问题时,往往不能进行有效的实验预习,实验的效果也就难以保证。由于实验的内容和学时有限,学生在实验过程中将主要时间花在导线连接上,对实验结果的分析和思考反而不足。
本文旨在设计一种便携式的数字电子技术实验平台,供学生在课堂及课下进行电路逻辑功能验证。教师可以一边讲授一边让学生进行动手实验,从而及时消化所学知识,遇到问题后可以及时反馈给教师,从而实现师生间及时有效的互动,将讲授的知识消化在课堂中。这样在实验室的实验教学中就不必再进行基本电路的功能验证,从而通过设计综合性的实验内容,提高学生分析问题和解决问题的能力。
2 设计思路
数字电路输入输出引脚往往较多,输入和输出之间具有特定的逻辑关系,传统的示波器一般只有两个通道,不适于对多路信号进行同步观察。数字电路往往只关注逻辑电平的高低,而不在意具体的电平数值,因此,逻辑分析仪应运而生[1]。时至今日,逻辑分析仪已经是分析数字系统不可或缺的仪器。逻辑分析仪有三个重要参数,分别是阈值电压、采样率和存储深度。随着后两个参数要求的提高,逻辑分析仪实现的难度越大,成本也越高。而针对数字电子技术教学的便携式逻辑分析仪对采样率和存储深度的要求并不太高,如采样率1 MHz、存储深度1 kB就能满足要求。
随着微处理器技术的发展,基于微处理器实现便携式逻辑分析仪成为可能。本文采用STM32F103处理器,该芯片基于Cortex-M3内核,CPU最高速度达72 MHz[2-3],内置256 kB的Flash存储器可以实现代码的固化,内置48 kB的 RAM存储器可以实现数据的存储,不需要外置RAM就能满足便携式逻辑分析仪的采样和存储要求。软件设计则基于MDK5开发平台和C语言开发[4],程序包含数据采集、数据处理、数据显示等几个部分。
3 实现方案
为满足课堂实验的需求,所设计逻辑分析仪采用常见的手机充电宝供电,因此,本系统5 V电源采用Mini USB供电,由于STM32F103等芯片需要3.3 V供电,故使用一片LDO芯片AMS1117-3.3实现5 V转3.3 V。处理器采用8 MHz的无源晶振,通过内部锁相环倍频至64 MHz作为处理器的时钟。逻辑波形通过屏幕分辨率为320×240的TFT-LCD显示,每个像素点支持16位色。TFT-LCD模块接口的数据端口采用16位的并口,可以提供足够快的传输速率,处理器通过FSMC接口连接LCD。实验平台设置六个按键,分别提供上、下、左、右、确定和取消功能,在不同的界面下可以通过六个按键实现参数配置和功能选择。为实现配置参数掉电不丢失,外扩一片闪存芯片W25Q64,将重要的参数存储到该芯片中。同时设置四个LED,提供必要的电平指示功能。
和数字电子技术基础课程有关的测试电路,如基本门电路、触发器、译码器、计数器、移位寄存器等,采用体积较小的贴片封装,输入和输出连接至处理器的IO口,通过按键可灵活地设置不同的输入模式,通过液晶实现输入和输出的显示。这样一来,学生可以准确地了解相关电路的输入输出逻辑关系,并通过不同的配置,全面测试电路的功能。此外,通过硬件设置相应的跳线帽,学生可以手动修改电路的结构,进行丰富的尝试和电路设计。
软件基于STM32的固件库进行开发,将需要读取的IO口配置成下拉输入高速模式,输出IO口设置为推挽输出,测试电路的时钟由处理器输出。设置定时器的中断频率最高为1 MHz,即最快每1 μs翻转一次时钟电平,并在中断服务函数中同步读取测试电路各个输出口的电平,保存在RAM中。
以74HC163计数器电路为例,电路如图1所示。其中时钟CLK、置数输入端P0-P3接處理器输出IO口;计数输出Q0-Q3、进位TC接处理器输入IO口;S1为拨码开关,可手动控制,计数输出经4输入与非门SN74HC20反馈到置数端,实现小于16的其他进制计数器[5]。学生可以设定不同的置数数值和拨码开关位置并通过液晶观察电路的各种输出结果,从而全面准确地理解电路的工作原理。与采用LED或数码管方式观察电路输出相比,逻辑分析仪可以清楚地显示各个观察波形的相位关系。教师也可以在课堂上提出设计实验题目,根据学生的实验效果,及时调整授课内容。而在实验室的实践环节,可以安排更为复杂的两片163计数器级联实现100进制、60进制计数等综合性题目。
液晶显示屏呈现的逻辑波形效果如图2所示,同时通过按键控制可以对显示波形进行缩放,满足不同情况下的观察需求。在待机界面中可以通过选择不同的实验项目,进入不同的显示界面,满足各个实验的特定需求。同时利用处理器内部定时器的计数功能,可以测量各个波形的频率,帮助学生更好地理解计数器的分频功能。
4 结语
以便携式数字电子技术实验平台为设计目标,提出一种以STM32F103处理器为核心的设计方案,实现逻辑分析仪功能与数字电子技术基础课程常见电路的有机结合。便携式数字电子技术实验平台体积小、成本低,可以在课堂教学中发放给学生使用,通过边讲边练,提高课堂教学效率,丰富实验教学内容。
参考文献
[1]徐杰.电子测量技术与应用[M].2版.哈尔滨:哈尔滨工业大学出版社,2018.
[2]郑亮,郑士海.嵌入式系统开发与实践:基于STM32F10x系列[M].北京:北京航空航天大学出版社,2015.
[3]陈启军,余有灵,张伟.嵌入式系统及其应用:基于Cortex-M3内核和STM32F系列微控制器的系统设计与开发[M].上海:同济大学出版社,2014.
[4]李宁.基于MDK的STM32处理器开发应用[M].北京:北京航空航天大学出版社,2008.
[5]谢志远,尚秋峰.数字电子技术基础[M].北京:清华大学出版社,2014.