当前位置:首页 > 电源 > 数字电源
[导读]摘要:为了改进数字逻辑电路教学方法以适应电子技术迅猛发展的需要,我们探索和实践了数字逻辑电路教学的新方法,这就是基于计算机高级语言(C语言)的数字逻辑电路课堂教学和实验教学方法,本文重点介绍了本教学方法

摘要:为了改进数字逻辑电路教学方法以适应电子技术迅猛发展的需要,我们探索和实践了数字逻辑电路教学的新方法,这就是基于计算机高级语言(C语言)的数字逻辑电路课堂教学和实验教学方法,本文重点介绍了本教学方法的特点以及实现方法。
关键词:教学改革;数字逻辑电路;C语言
中图分类号:G642 文献标识码:B
文章编号:1672-5913(2007)10-0090-03
  
  引言
  
  数字逻辑电路课是高等学校计算机科学技术专业的一门必修基础课。在计算机专业基础课程中,它是微机原理与应用、微机接口技术、计算机组成与系统结构等课程的前导课程,有着承上启下的重要地位。该课程从电子计算机的基本硬件组成及数字电子技术着手,对计算机的组成部件的基本电路工作原理展开讨论,使学生掌握有关计算机硬件方面的基础知识,尤其是各数字逻辑电路的基本功能,构成整机数字系统的技术,为培养学生对硬件系统的分析、设计、开发和使用能力打下最基本的基础知识。

  数字逻辑电路这门课程学习结果的好坏将对计算机专业的后续课程的学习产生很大的影响。数字逻辑电路是学好计算机专业基础课的必要途径,因此应该重视这门课程教学方法的改进。为了改革目前的数字逻辑电路课教学方法,我们探索了新的数字逻辑电路教学方法,即基于计算机高级语言的数字逻辑电路教学方法。本数字逻辑电路教学方法的特点是用计算机高级语言C语言对数字逻辑电路的基本功能进行描述和实验,也就是用计算机高级语言对我们在数字逻辑电路课程中讲解的全部基本数字逻辑电路进行表示。本方法特别适合与计算机专业的学生,因为计算机专业的学生在学习数字逻辑电路课程之前都学习过了计算机高级语言C语言。这使得他们能够较好的理解数字逻辑电路的这种表示方式,同时也能够使他们在学习数字逻辑电路的这种表示方式中复习计算机的高级语言,并且可以扩展学生的知识面,培养和训练学生的创新能力。它不但能够进行数字逻辑电路的基本教学,还可以用于数字逻辑电路的实验教学和课程设计。
  
1 数字逻辑电路的C语言描述
  
  C语言功能丰富,表达能力强,使用灵活方便,目标程序效率高,可移植性好,适合编写各种软件,尤其是系统软件,所以C语言已在诸多领域得到广泛的应用。目前许多高等院校,都在计算机专业开设了C语言课程。利用C语言可以编写出简洁、紧凑、高效的程序。C51是在完全支持标准C全部指令的基础上添加了许多用来优化8051指令结构的C的扩展指令而形成的,其程序结构也类似于标准C程序的编写。随着嵌入式技术的不断发展以及C语言在嵌入式应用中的不断普及,C程序设计技术在嵌入式系统中将得到广泛的应用。
  数字逻辑电路通常分为组合数字逻辑电路和时序数字逻辑电路两大类,组合数字逻辑电路常用的描述方法是逻辑图、逻辑代数式、真值表和卡诺图,它们均可对同一个组合逻辑问题进行描述,知道其中的任何一个,就可以推出其余的三个。随着EDA技术的发展,目前又出现了硬件描述语言的数字逻辑电路描述法。与用硬件描述语言类似的方法,本文探索了在微控制器中的C51程序描述法。例如对一个三变量的一致电路的描述:
  三变量的一致电路就是当A、B、C三个变量一致时,电路输出高电平;当三个变量不一致时,电路输出低电平。
用逻辑代数式表示为:F=ABC+  

用C51语言描述为:
  Main()
  { sbit a=P1.0; // 定义布尔输入变量a是微控制器的P1.0口
  sbit b=P1.1; // 定义布尔输入变量b是微控制器的P1.1口
  sbit c=P1.2; // 定义布尔输入变量c是微控制器的P1.2口
  sbit f=P2.0; // 定义布尔输出变量f是微控制器的P2.0口
  while(1){ // 无限循环
  P1=0xff;
  if (a==b==c)
  f==1;
  elsl f==0;
  }
  } // P1为输入口,P2为输出口
  从以上的C51程序可以看出,这样的数字逻辑电路描述方法,对于计算机专业的学生,只要学习过C语言是非常容易理解的,而且用该方法描述的数字逻辑电路也容易用下面介绍的实验方法中得到验证。
   [!--empirenews.page--]
2 在教学中的应用原则
  
  2.1教学重点
  笔者认为对于计算机专业的数字逻辑电路课,教学重点在于让学生能够很好地理解常用数字逻辑电路的逻辑功能,至于这些数字逻辑电路的实现方法有一些概念就可以了,没有必要掌握数字逻辑电路的中小规模集成电路实现方法。而这些中小规模集成电路实现的数字逻辑电路在我们目前所用的教材中往往是重点讲解的,这点对于计算机专业的学生就不是很合适。事实上,本文探索的用C51程序描述数字逻辑电路,就是基于微控制器的用软件实现的数字逻辑电路。这就是说数字逻辑电路课程的重点内容是理解数字逻辑电路的逻辑功能。而具体用什么方法实现这个逻辑功能就不是太重要了。用中小规模集成电路、可编程逻辑电路和软件来实现都是可以的。2.2应用实例
  根据笔者的多年教学实践经验,在计算机专业的数字逻辑电路课程教学中,灵活运用本文论述的C51程序描述法,结合传统的数字逻辑电路的描述方法,取得到了较好的教学效果。
  如:对于在计算机专业中用到的较多的逻辑电路“译码器”。用逻辑代数描述为:
  
  用C51程序可以描述为:
  main()
  { sbit a=P1.0; // 定义布尔输入变量a,b,c为微控制器的P1口
  sbit b=P1.1;
  sbit c=P1.2;
  sbit y0=P2.0; // 定义布尔输出变量y0~y7是微控制器的P2口
  sbit y1=P2.1;
  sbit y2=P2.2;
  sbit y3=P2.3;
  sbit y4=P2.4;
  sbit y5=P2.5;
  sbit y6=P2.6;
  sbit y7=P2.7;
  while(1){ // 无限循环
  P1=0xff;
  y0=y1=y2=y3=y4=y5=y6=y7=0;
  if (a==0&&b==0&&c==0) y0=1;
  if (a==0&&b==0&&c==1) y1=1;
  if (a==0&&b==1&&c==0) y2=1;
  if (a==0&&b==1&&c==1) y3=1;
  if (a==1&&b==0&&c==0) y4=1;
  if (a==1&&b==0&&c==1) y5=1;
  if (a==1&&b==1&&c==0) y6=1;
  if (a==1&&b==1&&c==1) y7=1;
  }
  }
  因此,在数字逻辑电路课程中,让学生懂得作为计算机专业的学生,单单学会数字逻辑电路的硬件实现方法是不够的,还应当让学生从一开始就重视学习计算机软硬件的相互关系。如果教师在数字逻辑电路课程的教学中运用本文论述的方法,引导学生从计算机软件和硬件层次上去认识数字逻辑电路知识,对学生学好后续专业课程有着积极的促进意义。
  
3 实验教学方法
  
  3.1硬件结构
  本实验方法的硬件部分主要由PC机以及微控制器电路和多个LED电路组成。微控制器选用Philips公司生产的P89C51RD2BN。该芯片内部集成了多种功能部件,如四个8位的数字I/O口,8路A/D转换接口、UART、定时器、看门狗定时器和FLASH存储器等。微控制器的主要功能是:用户输入输出端口状态扫描输入,用户输入输出端口信号输入和数字信号显示等。实验硬件组成框图如图1所示。
  
  图1 实验硬件组成框图
  
  3.2ISP实现原理
  本实验方法的关键是ISP技术。P89C51RD2BN的系统编程是通过标准RS232串口来完成的,它是一种内嵌的在线可编程。内部有一系列的硬件资源,当微控制器对自身的Flash存储器进行编程时,所有底层操作都由这些内部资源来完成。ISP编程不需要将微控制器从系统中取出,只要用一个开关将PSEN强行拉低,ALE管脚悬空,系统便在上电复位后进入ISP状态。通过免费的编程软件Flashmagic下载二进制文件到微控制器,就可以运行程序了。
  3.3实验方法
  如图1所示,实验时先把ISP控制开关放置在ISP位置上,在PC机上输入需要实现的数字逻辑电路的C51程序,然后经过C51编译器编译,生成二进制文件形式的目标程序文件,然后使用Flashmagic软件把目标程序下载到微控制器中,再把ISP控制开关放置到微控制器的正常工作状态,按动复位按钮,微控制器中的程序就可以正常运行了。这时可以在输入拨位开关上输入数字信号,在LED上可以观察到这个实验数字逻辑电路的逻辑功能的实现结果。改变输入拨位开关上输入的数字信号,可以得到不同的数字信号输入,在LED中可以观察分析实验数字逻辑电路的全部逻辑功能。
  运用本实验方法进行的数字逻辑电路实验,由于实验所用到的硬件设备,除PC机以外的成本是极低的,可以实现把实验带回家的实验理念。在家里进行各种有创造性的实验。让学生真正成为实验学习的主人。
  
4 结束语
  
  本文论述的数字逻辑电路C语言描述方法具有易懂、直观、有创新性的特点。用该教学方法的实验装置结构简单、成本较低、维护方便、性能可靠。可以进行简单的组合数字逻辑电路实验,也可以进行时序逻辑电路的实验,能够搭建多种趣味电路。能满足基本教学的需要,也可以进行综合性、设计性实验。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

全球半导体短缺让所有微控制器使用者的生活都变得难熬了起来,如今的订货周期有时会长达好几年。不过,售价4美元的树莓派Pico是一个亮点,它是一个以新型RP2040芯片为基础的微控制器。RP2040不仅有强大的计算能力,还没...

关键字: 半导体 微控制器 芯片

最近看到APP上,给我推送了很多类似的回答,借此机会,也想着重新审视一下自己的学习历程,以及结合自身和大牛,分享一些学习经验,希望对大家有所启发和帮助。

关键字: APP 嵌入式 C语言

SQLite是一个跨平台的轻量级数据库,支持C/C++开发,可用于嵌入式中,关于C/C++使用SQLite的简单实例,可参考这篇:“玩转SQLite6:使用C语言来读写数据库”,本篇来继续介绍SQLite的基础运算符与表...

关键字: SQLite C语言 数据库

在下述的内容中,小编将会对MCU微控制器的相关消息予以报道,如果MCU微控制器是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: MCU 微控制器 智能控制

今天,小编将在这篇文章中为大家带来MCU微控制器的有关报道,通过阅读这篇文章,大家可以对MCU微控制器具备清晰的认识,主要内容如下。

关键字: MCU 微控制器 物联网

MCU微控制器将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对MCU微控制器的相关情况以及信息有所认识和了解,详细内容如下。

关键字: MCU 微控制器 芯片

一直以来,MCU微控制器都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来MCU微控制器的相关介绍,详细内容请看下文。

关键字: MCU 微控制器 控制器

在这篇文章中,小编将对MCU微控制器的相关内容和情况加以介绍以帮助大家增进对MCU微控制器的了解程度,和小编一起来阅读以下内容吧。

关键字: MCU 微控制器 芯片

单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便...

关键字: 单片机 微控制器 芯片

在计算机科学中,内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存。

关键字: C语言 内存泄漏

数字电源

15504 篇文章

关注

发布文章

编辑精选

技术子站

关闭