SCI论文(www.lunwensci.com):
摘 要:针对 51 单片机系统扩展教学中单片机与外设数据传送时地址和数据不易直观演示的难点,本文提出了基于 Proteus 仿真软件的可视化教学设计,将常见的扩展部件如存储器 6264、8255a、DaC0832、aDC0809 和 LCD1602 等进行统一编址,利用串行口扩展 6 位 LED 数码管,与外设传送数据时前 4 位显示外设地址,后 2 位显示数据。教学实践表明,系统总线扩展的可视化设计大大提高了教学效率,有助于学生理解和掌握系统扩展的体系结构、地址编排和指令执行。
关键词:单片机;系统扩展;可视化;Proteus
本文引用格式:陈海云 .51 单片机系统总线扩展的可视化教学设计 [J]. 教育现代化 ,2020,7(95):38-41.
Visual Teaching Design of 51 single chip microcomputer system Bus expansion
CHEn Haiyun
(College of Physics and Electronic Information Engineering, Zhejiang normal university, Jinhua Zhejiang)
Abstract: In order to solve the problem that the address and data are not easy to be demonstrated intuitively in the teaching of 51 single-chip microcomputer system extension, this paper proposes a visual teaching design based on Proteus simulation software, which addresses the common expansion components such as memory 6264, 8255A, DAC0832, adc00809 and LCD1602, and extends the 6-bit LED digital tube with the serial port When transmitting data, the first four bits display the peripheral address, and the last two bits display the data. Teaching practice shows that the visual design of system bus extension greatly improves teaching efficiency and helps students understand and master the system structure, address arrangement and instruction execution of system expansion.
Key words: single-chip; system extension; visualization; proteus
一 引言
51 单片机是一款经典的单片机,具有典型的结构和完善的总线专用寄存器,有众多的逻辑位操作功能及面向控制的丰富的指令系统,是应用最广泛的 8 位单片机,也是初学者最容易上手学习的单片机 [1,2]。在 51 单片机的学习中,利用数据总线、地址总线和控制总线进行系统扩展是十分重要的内容,同时也是难点之一。主要有三个方面的问题:1)单片机通过三组总线与外设构成层次体系结构的正确连接;2)通过片选译码对各外设进行地址分配及相应地址范围的确定;3)理解MOVX 指令执行过程中的地址和数据。笔者尝试用思维导图呈现单片机扩展系统的层次化结构 [3], 取得了明显的效果,学生对体系结构和编址问题的理解更加直观有效。但由于单片机与外设之间
的数据交换过程不易演示,如何使学生在课堂学习中能够直观地观察和理解扩展系统中单片机与不同外设数据传送时的地址和数据是该部分内容教学中的主要难点。
Proteus 是一款功能丰富的单片机仿真软件, 是单片机学习中不可或缺的强大工具 [4-7],也为单片机演示实验的开发和应用提供了很好的技术平台。针对 51 单片机系统扩展中外设地址与传送数据演示的难点,本文利用 Proteus 仿真软件设计了51 单片机总线扩展的可视化演示实验系统,将常见的 RaM6264、8255a、DaC0832、aDC0809 和LCD1602 等扩展部件进行统一编址, 由 74LS138 进行片选地址译码,将单片机与扩展部件构成有机统一的体系,并从串行口扩展 6 位 LED 数码管, 以 16 进制数形式实时显示单片机外部数据传送时的外设地址和实际传送数据,从而实现 51 单片机系统扩展的可视化演示实验教学。
二 系统结构设计
MCS-51 单片机系统扩展结构如图 1 所示, 51 单片机通过数据总线、地址总线和控制总线与6264、74LS374、74LS244、8255a、DaC0832、aDC0809 和 LCD1602 等扩展部件构成一个完整的层次体系。74LS138 用于片选译码,74LS373 用于系统低 8 位地址锁存。P0 口发出的 a/D 复用信号经 74LS373 分离出低 8 位地址连接 6264 的低 8 位片内地址,6264 的剩余片内地址由 P2.0~P2.4 提供,其余部件的片内地址均与系统地址的最低若干位相连。地址总线高 3 位 P2.7、2.6、2.5 经74LS138 译码产生的Y1 ~ Y7 依次作为各个部件的片选信号。74LS374、74LS244 和 DaC0832 相当于仅有一个单元的存储器,只需片选信号即可,而8255a、aDC0809 和 LCD1602 则可以分别看成是有 4 个、8 个和 4 个存储单元的小型存储器,因此这些部件的扩展可以按存储器模型进行统一编址。由 图 1 所 示 系 统 结 构 的 地 址 连 接 可 知 ,对 6264 采 用 的 是 全 译 码 方 式, 地 址 范 围 为
2000~3fffH。对其他扩展部件则是部分译码方 式,74LS374、74LS244、DaC0832 的地址分别为: 4000H、6000H 和 a000H。8255a 的地址范围为8000H~8003H, 分别对应 a、B、C 和控制寄存器端口。aDC0809 的地址范围为 C000H~C007H, 对应 In0~In7 的 8 个模拟输入通道。LCD1602 的地址范围为 E000H~E003H,对应写命令、读状态、写数据和读数据四个端口。
图 1 51 单片机系统扩展结构示意图
根据原理图设计的 Proteus 电路系统如图 2 所示,为达到 51 单片机外设数据传送时的可视化演示,在原理图结构基础上增加了地址和数据显示模块。利用空闲的串行口通过 6 片 74LS164 扩展 6 位 LED 数码管,前 4 位绿色 LED 显示外设地址,后 2 位红色 LED 显示传送的数据。同时,设计了相应的串口显示子程序,每次执行外设数据传送指令时调用该子程序,实时显示当前操作的系统地址和数据。如图 2 所示,当前外设地址为 E001H,传送数据为 00H。此外,为更好地演示各扩展部件输入输出结果,增加了相应的输入输出设备,如:74LS374 通过排阻连接了一位 LED 数码管;74LS244 连接 4 位拨码开关输入;8255a 连接了 6 位 LED 数码管,用于演示通过 8255a 接口的 LED 动态显示,串口显示缓冲器中数据输出到 LED 动态显示,则同样可以用于显示 4 位系统地址和 2 位数据;DaC0832 输出通过运放连接电压表,用以显示转换后的模拟电压大小;aDC0809 的 In5 通道接可调电位器,可输入不同大小的模拟电压供转换,并同时用电压表显示,以便与显示的转换结果数据进行实时对比。
图 2 Proteus 设计系统图
三 典型教学演示案例
(一) 输入输出接口扩展演示
输入输出接口扩展操作的教学演示结果如图3 所示。根据前文所述电路结构,输入接口采用74LS244 芯片,其低 4 位连接一个 4 位拨码开关SW,关状态时输入为高电平,开状态时输入为低电平。输出接口采用 74LS374 芯片,通过排阻连接 1 位绿色 LED 数码管。程序设计实现读入 4 位拨码开关的高低电平组合,并将对应的“0”~“f” 字符实时显示在输出接口的 LED 数码管中。串口扩展的 6 位 LED 数码管以 1 秒钟为时间单位交替显示输入和输出接口的地址和数据。
图 3 输入输出接口扩展演示结果
图 3(a)中显示的是输入接口 74LS244 的地址 6000H 及读入的数据 03H,此时拨码开关 SW 的低两位拨向“on”,对应输入代码“0011”。图 3(b)中显示的则是输出接口 74LS374 的地址 4000H 及输出的数据 4fH,接口 LED 数码管显示字符“3”,而 4fH 正是字符“3”对应的 LED 笔段代码。当拨码开关变化时,输入输出的数据及显示的字符也相应改变,可实时有效地演示输入输出接口的地址和数据。
(二) d/A、A/d 转换演示
D/a 转换输出部分电路结构如图 4 所示, DaC0832 的 D0~D7 连接到系统数据总线,输出信号通过运放 LM324 连接到电压表 VM,用以指示转换得到的模拟电压值。通过 8255a 扩展的 6 位LED 数码管同时用于显示 4 位地址和 2 位数据。演示程序设计向 DaC0832 输出数字量 0~250,步长为 50,在 5V 参考电压下,转换得到模拟电压值 0~4.88V,步长 0.98V,间隔时间 1 秒依次向外输出,可实时观察 DaC0832 的地址、输出转换的数字量及相应的模电压值。图 4 中所示 DaC0832 地址为 a000H,输出数据 96H(即 150),相应模拟电压值为 2.93V。实际演示中串口输出的 6 位LED 数码管同时显示相同的地址和数据,图 4 中限于篇幅未呈现。
图 4 d/A 转换演示结果
a/D 转 换 输 入 电 路 结 构 如 图 5 所 示, aDC0809 的 D0~D7 与系统数据总线相连,输入不同模拟电压通过调节电位器 RV 得到,模拟信号接入 8 路模拟通道中的 In5,由地址信号的连接可知, 此时 aDC0809 中 In5 通道的地址为 C005H, aDC0809 的 EOC 信号经逻辑取返后连到单片机的InT0,aDC0809 与单片机之间采用中断方式进行数据传送,负边沿触发。实验中,aDC0809 初始化后启动 a/D 转换,一次转换结束产生中断信号, 单片机中断响应后读取转换结果数字量,并将地址和结果数字量实时显示于串口连接 LED 数码管和 8255a 连接的动态显示 LED 数码管。电位器调节模拟电压值时,LED 数码管可实时显示转换结果。图 5 所示 In5 通道地址为 C005H,当前模拟电压值为 3.30V,对应的转换结果为 a8H。由上述分析可知,a/D 转换电路结构的连接及地址信号明确,a/D 转换操作演示方便,简明直观,有利于提高课堂教学的效率。
图 5 A/d 转换演示结果
四 结 语
针对 51 单片机系统扩展内容教学中对结构体系难于掌握、对外设地址和传送数据不易直接观察和理解等难点,本文设计了基于 Proteus 仿真软件的可视化演示实验系统。根据单片机系统总线扩展原理, 将 RaM6264、8255a、DaC0832、aDC0809 和 LCD1602 等 51 单片机教学中常见的扩展部件纳入到同一扩展系统中进行统一编址, 同时将空闲的串口扩展出 6 位 LED 数码管,以 16进制数形式显示 4 位外设址址和 2 位数据,每次执行外设数据传送指令时,调用显示子程序可实时显示外设操作的地址和数据信息,直观简便。实际教学中已完成了所有扩展部件相应的演示实验案例,文中给出了输入 / 输出接口 74LS244、74LS374 和 DaC0832 扩展接口的演示,操作简单, 效果直观。课堂教学实践表明,利用可视化的演示实验教学设计,能有效提高关于 51 单片机系统扩展内容的教学效率,促进学生对系统扩展方法的理解及对实际应用技能的掌握。
参考文献
[1]张鑫 . 单片机原理及应用(第 3 版)[M]. 北京 : 电子工业出版社 ,2014.
[2]陈坤 . 物理选修课“51 单片机”校本化的开发探索 [J]. 物理通报 ,2014(2):51-56.
[3]陈海云 . 思维导图在单片机教学中的借鉴和应用 [J]. 电气电子教学学报 ,2018,40(1):87-89.
[4]张宏新 , 王新环 . 基于 Proteus 和 Keil 的单片机实验教学改革 [J]. 电气电子教学学报 , 2008,30:(6):64-66.
[5]任肖丽 , 王骥 . 基于 Proteus 和 Keil 的单片机课程实验教学改革探索 [J]. 教育现代化 , 2019(101):5-7.
[6]刘丹丹 , 王计元 , 杨芳,等 . 基于 Proteus 平台的单片机教学改革方法与实践 [J]. 教育现代化 , 2019(74):114-115.
[7]宁志刚,朱卫华,刘华 , 等. 基于 Proteus 和 Keil C51 单片机仿真平台的实践创新能力培养研究 [J]. 教育现代化 , 2018(49):209-212.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网! 文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jiaoyulunwen/32150.html