插卡式广适配单片机学习实验平台的研制
2014-05-02李学海吴蓬勃孙群中
李学海,吴蓬勃,孙群中,李 莉
(石家庄邮电职业技术学院 电信系,河北 石家庄 050021)
目前,在我国市场上见到的单片机(即MCU)品种不下几十种品牌的上百个系列,每个系列内部又包含若干种不同的型号,每个型号的片内资源、封装形式、引脚排列各不相同,这就使得对应每个型号的学习实验平台也应各不相同[1-15]。这不仅给学习研究带来极大不便,而且也造成巨大的资源浪费和经济负担。如果在同一个规范化的单片机实验平台上,同时可以适配、演示、实验、开发多种不同厂牌、不同系列、不同架构、不同引脚数量、不同封装形式,甚至不同位宽的单片机芯片,那该是一件很有意义的事情。
1 分析和比较各型单片机的异同
为了让种类繁多的单片机能够在同一个单片机学习实验平台上进行实践教学或学习演练,我们必须对一些不同时期设计的、不同厂家生产的、不同风格和用途的各型常用单片机的异同进行综合全面的研究和比对。当然,各型单片机的异同比较是个很庞大的话题,这里我们仅限于与研制单片机实验平台相关的异同进行比较[1-15]。
1.1 相同之处
无论何种类型、厂牌、型号、架构的单片机,无论有着多大差异的单片机,它们都存在以下共同之处:
(1)都需要稳定的直流电源作为工作的基本条件;
(2)都需要稳定的时钟信号作为工作的基本条件;
(3)都需要复位信号作为工作的基本条件;
(4)都需要在线编程(ISP)的路径,不具备ISP能力的单片机目前基本淘汰;
(5)都需要外接常用的人机界面器件作为内外信号吞吐的途径。
1.2 差异之处
(1)工作电源电压不尽相同。绝大多数为+5V,只有少数为+3V;
(2)工作时钟频率各不相同。包含2个方面,最高工作频率不同,生产标准波特率的频率不同;
(3)时钟发生器的电路设计不同;
(4)复位信号的有效电平不同。绝大多数的新型单片机采用低电平,只有传统的80C51采用高电平;
(5)复位信号的外接电路不同;
(6)在线编程(ISP)的方式不同。比如,同属于80C51兼容品的单片机也有不同,AT89S51的ISP采用SPI接口,P89C51采用UART接口,SM59R16A5采用I2C接口,C8051Fxxx采用JTAG接口等;
(7)另有封装不同、引脚排列不同、引脚功能不同、引脚数量不同、位宽不同、架构不同、内部集成的单元电路的功能不同和数量不同等。
1.3 比较结果的应用
基于异同比较的结果,我们把“差异之处”用作界定基础板和适配卡电路功能的依据,以及规划适配卡的依据,把“相同之处”用作规划“基础板”的依据或参考。
2 广适配单片机实验平台的优化设计
通过对于现有的、大量的、各种各样的、由多家不同著名厂商设计和生产的,用于推广和开发不同品牌、不同系列、不同位宽的单片机的实验平台或评估板,进行了深入剖析、优劣评测、实用考察之后,制定我们的设计方案。
2.1 系统总体设计方案
本方案采用的是插卡式、积木化、开放式的设计思想,整个系统由属于3个类型的多种、多块电路板、电路卡或电路模块组成。3个类型分别为:基础板、适配卡和外接模块。三者之间的组织关系(或者一个具体实验系统的构成)如图1所示。基础板与适配卡之间的连接采用168针的卡槽,其好处很多,比如触点足够富裕,可以转接引脚多达百余条的高端单片机。基础板与外接模块之间的连接采用10芯排线,统一标准以方便选配、组合。
图1 整个系统组织关系方框图
基础板只有一种一块,作为整个实验平台的台基;适配卡可以配备若干种(如果研制了N种,就借助于该实验平台学习N种单片机),但是具体进行某一种单片机的教学和实验时只需要插接装有该种单片机的一块适配卡;外接模块是为了进一步拓展基础板的用途,作为可选配件可有若干种若干块,使用时可以同时连接多种多块。如图2所示就是在基础板的卡槽中,插接一片装有MC9S08AW60单片机的适配卡实物图片。
图2 基础板插接MC9S08AW60适配卡的实物图片
2.2 基础板的设计方案
基础板(见图2)的规划设计和特色:
(1)板上没有直接焊装任何型号的单片机。
(2)板上设置一个168针卡槽(选用PC机主板中插接SDRAM存储器的168线插槽)作为接口,可以分别插接装有各型单片机的适配卡。
(3)板载电路的功能单元以能够满足学生或者用户的常规需要为原则。比如包含了20种单元电路:5V稳压电源、单只PWM驱动呼吸灯LED、有源蜂鸣器、微型继电器、步进电机、单线数字温度传感器DS18B20、一体化红外遥控信号接收头、模拟量输入电位器、8位7段LED数码管、点阵字符式LCD1602插口、点阵图形式LCD12864插口、实时时钟DS1302、I2C串口EEPROM存储器AT24C2、RS232串行通信接口、8位分立LED、8位独立按键开关、4×4矩阵按键开关、16×16点阵LED显示模块、PS/2计算机键盘插口、6组10芯排针插口。
(4)利用9只8联同体的拨码开关来选接单元电路到卡槽,其好处是搭建实验电路方便、免用跨接连线。
(5)预留了6组10芯插针,以备利用统一的10芯排线,跨接扩展一些个性化的外接模块。
2.3 适配卡的设计方案
可以为每一种感兴趣的、不同型号或不同封装的单片机分别研制一款适配卡。这里仅以首批试制的两款适配卡为样板,其实物如图3所示,他们分别是为飞思卡尔公司MC9S08AW60单片机和ATMEL公司ATmega169单片机研制的适配卡。卡上除了焊装单片机之外,还应该包含时钟电路(其中石英晶体可以插拔更换)、ISP在线编程烧写器插口和靠近单片机的电源滤波电容(最好还有手动复位电路)[12-13]。
图3 两款单片机适配卡
2.4 外接模块的设计方案
把一些基础板上不具备的、不常用的、造价比较高的、结构比较复杂的、功能相对独立的单元电路分离出来,单独规划和制作一系列的外接模块,以备实验、构建或开发复杂系统时选用。外接模块统一采用10芯插针和排线来连接。每个模块可为主板扩展一种特定功能,可扩展的功能多种多样,并且还可逐步增多。可以自行研制,也可以从市场上选购。例如,各种高性能传感器、超声波测距模块、USB/UART转换接口模块、以太网通信接口模块、图形识别摄像头模块、语音处理模块、无线通信模块、ZigBee通信模块、WiFi通信模块、GSM通信模块、GPS卫星定位模块等。如图4所示的外接模块分别是超声测距模块、以太网卡模块和摄像头模块(这是为凌阳大学计划写书时公司的赠品)。
图4 几款外接模块
3 实践体会与试用收获
多年来的实践经验告诉我们,单片机学科是从应试教育到素质教育的优选教学仪器。我们研制的这个项目是一套通用性极强,可以适配多种型号的单片机,集合“仿真器、烧写器和目标板”于一体的,适合教学、实验、实训和开发的综合性单片机实验平台。“三合一”的设计方式进一步提升了实验平台的性价比,也进一步提高了它的利用率,以及应用过程的便利性。借助于该平台既可以学习到多型单片机的硬件资源设计和软件编程方法,也可开发出特定项目的原型机。这种组合化或模块化设计方案,便于厂家的批量生产,也便于用户选配组件。模块的组合式应用更为灵活,可用较少的硬件资源来实现更多的功能。这种积木化和套件化的设计,也可以使学生积极参与二次开发,提高学生设计开发水平及自主创新能力。经过多个学期的实践证明,该实验平台获得学生和同行的好评。
表1就是基于该平台分别为ATmega169和MC9S08AW60两种单片机各自设计的20余个实验范例,全部调通,并且运行稳定。这套实验系统曾经被多次应用到学生的实验、实训、课程设计、电子大赛、毕业设计等学习实践活动之中,提高了便利性,减少了维护量,节省了不少开销。
表1 为两种单片机设计的实验范例
4 结束语
通过本项目的研究,锻炼了教师,以及参与实验学生的动手能力和创新能力。基于这种广适配型实验平台,还可以拓展实验设备的新用途、新功能,比如,可以很方便地进行不同型号单片机性能的横向比较研究(例如,对于表1中功能相同的两种实验程序,对比其代码效率和执行时间)。如果把该课题的设计思想加以变通、延伸和移植,可以改造和升级众多高校实验室中那些现有的趋于报废的各种单片机实验箱或实验台,以及广大单片机爱好者手中大量的各种单片机学习板和实验板,不仅能节约开支、避免浪费,还可以盘活大量的现存资源,意义十分重大。
(
)
[1]李学海.经典80C51单片机快速进阶与实作[M].北京:清华大学出版社,2012.
[2]李学海.新型80C51单片机轻松入门与应用开发:AT89S8253[M].北京:金盾出版社,2011.
[3]李学海.PIC单片机实用教程:基础篇[M].2版.北京:北京航空航天大学出版社,2007.
[4]李学海.EM78单片机实用教程:基础篇[M].北京:电子工业出版社,2003.
[5]李学海.凌阳8位单片机:基础篇[M].北京:北京航空航天大学出版社,2005.
[6]李学海.16位语音型单片机SPCE061A实用教程:基础篇[M].北京:人民邮电出版社,2007.
[7]李学海.电机控制型单片机SPMC75应用基础[M].北京:中国电力出版社,2007.
[8]李学海.ATtinyAVR单片机精品项目开发[M].北京:科学出版社,2012.
[9]李学海.PIC单片机BASIC编程项目开发[M].北京:科学出版社,2012.
[10]李学海.基于 MC68HC908的智能遥控电话报警系统设计[C]//电子产品世界*特刊.第3届Motorola杯单片机应用大奖赛论文集,2000.
[11]李学海.在SX系列单片机上实现的虚拟技术[J].世界电子元器件,2000(11):18-19.
[12]Atmel.8-bit AVR Microcontroller with 16KBytes In-System Programmable Flash ATmega169V/ATmega169 [EB/OL].[2013-07-08].http//:www.atmel.com/devices/ATMEGA 169A.aspx.
[13]Freescale. MC9S08AW60/MC9S08AW48/MC9S08AW32/MC9S08AW16 Data Sheet(Rev 2)[EB/OL].[2013-06-08].http//:www.freescale.com.
[14]SST.FlashFlex51MCU SST89C54/SST89C58[EB/OL].[2013-05-08].http//:www.microchip.com/search/searchapp/searchome.aspx?q=SST89C58RC Data Sheet-FlashFlex MCU&resperpape=10&id=2&ac=1.
[15]Philips.80C51 8-bit Flash microcontroller family P89C51RA2xx/RB2xx/RC2xx/RD2xx [EB/OL].[2013-04-05].http//:www.zlgmcu.com/philips/philips-80c51.asp.