基于STM8S的单片机实验教学平台开发

2014-04-26 08:35邓少华王铁流
电气电子教学学报 2014年2期
关键词:外设固件单片机

高 强,邓少华,王铁流

(北京工业大学电子信息与控制工程学院,北京 100124)

“单片机技术”在电子、机电、自动化等专业的课程体系中有着极其重要的地位,是一门与“计算机原理”、“电子电路”及“程序设计”等课程有着紧密联系的应用型课程。

传统工科“单片机技术”课程中,51单片机因其结构简单、成本低廉和简单易学等特点而得到了非常广泛应用。目前,单片机实验教学平台基本上还都是以51单片机为基础设计的。但是,随着电子技术的不断发展和要求的不断提高,传统的51单片机已经不能很好适应时代的需求[1,2]。因此,设计出一种能够容纳更多模块和实现更复杂功能的单片机实验教学平台颇具意义。学生通过这个平台进行焊接,安装和调试等锻炼了动手能力,还可用于课程设计、电子实习和毕业设计等教学环节。

1 STM8S单片机

STM8S为意法半导体公司新近推出的8位单片机,经过2年多的推广已经成为市场上非常具有竞争力的产品。STM8S具有优越的性能。它基于哈佛架构,采用和51单片机一样的CISC指令集,具有高达20MIPS的运行速度,而51单片机最高运行速度只有 1.33MIPS。

STM8S具有丰富的外设:10位 ADC、UART、SPI、I2C、CAN、LIN、IR(红外线远程控制)、LCD 驱动接口、1~2个8位基本定时器、1~2个16位一般定时器、1个16位高级定时器、1个自动唤醒定时器和独立看门狗定时器。此外,STM8S还有16MHz的内部高速晶振和38kHz的低速晶振。相比51单片机而言,STM8S的外设相当丰富,能够给学生提供更多的学习选择。

STM8S采用SWIM调试接口,调试下载程序简单且速度快。而一般51单片机实验平台采用串口下载程序,并不能让学生在线调试,不利于学生了解单片机的运行方式。因此,STM8S相比51单片机具有相当大的优势,更有利学生学习单片机课程。

2 实验教学平台的硬件设计实现

实验教学平台开发目的是为了高校师生提供一个单片机评估参考系统的设计方法,提供基于STM8S的基础外设应用开发思路,帮助学生更深入了解单片机工作原理,熟悉单片机外围电路的设计与操作。本设计着重考虑系统的可重用性和可扩展性。在配备基本的外围电路的基础上,同时留出更复杂外设的接口,方便学生自学与提高。

实验平台设计采用STM8S208R作为主控芯片,其他部分包括了液晶、温度传感器、加速度传感器、2.4G 无线模块、FLASH、数码管、AD 采样、串口、LED和按键等电路。由此构成一个学生实验平台,如图1所示。

图1 单片机实验教学平台

由于系统中的模块供电电压不一样,分别要求3.3V和5V供电。因此,系统采用ASM117芯片来提供3.3V工作电源,采用LM2575芯片产生5V工作电源。晶振使用STM8S内部16MHz高速振荡器,节省了晶振电路。

液晶屏控制器ILI9320用来实现对LCD液晶屏的控制。与传统的单片机教学平台搭配的字符型LCD相比,TFT LCD液晶屏显示效果更好,程序也更具有典型性。

2.4G无线模块采用NRF2401芯片,该芯片是单片射频收发芯片,工作于2.4~2.5GHz(ISM频段)。芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。该无线模块功能强大,收发一体,编程简单,有助于学生了解无线通信的工作原理。

加速度传感器MMA7455L是一款数字输出(I2C/SPI)、低功耗和紧凑型电容式微机械加速度计,它具有信号调理、低通滤波、温度补偿和自测等功能,可配置通过中断引脚(INT1或INT2)检测0g,以及用于快速运动检测的脉冲检测功能。加速度传感器在四轴飞行器和智能车中应用广泛。

温度传感器DS18B20是一种单总线数字温度传感器,测试温度范围为-55℃ ~125℃。温度数据位可配置为9、10、11和12位,对应的精度分别为0.5℃、0.25℃、0.125℃ 和 0.0625℃。该器件为单总线(没有时钟线)只有一根通信线。单总线读写数据是靠控制起始时间和采样时间来完成,时序要求很严格,这也是DS18B20驱动编程的难点。

Flash芯片W25X16容量为16Mb。其擦写周期为10000次,具有20年的数据保存期限,支持电压为2.7~3.6V。W25X16 支持标准的 SPI。学生通过学习Flash的读写,可以深入了解SPI协议,并为以后操作其他SPI器件打下基础。

3 实验设计

为了使实验平台能够正常工作,首先需要把平台的各组部件正确地组装起来,在这个过程中学生需要掌握如下技术:焊接和拆接、元器件识别、筛选和性能测试、电子电路和电子产品装配与调试、常用的电子仪器的使用和操作以及正确读懂电路原理图等。组装完成后,就成了一套完整的8位单片机开发系统。

实验教学平台配套软件的教学方面,实验平台紧跟单片机系统主流技术,包括基本的外设使用、多模块配合的应用实例和各模块测试例程。学生可更加全面地掌握单片机系统开发,实现从硬件平台到应用软件的开发,掌握整个单片机系统构建的基本流程[3]。

该平台配备相关的十几个实验,其中包括:

(1)基础实验:包括I/O相关操作、定时器、中断和AD转换等方面的实验。该部分实验主要让学生熟悉单片机的工作原理和操作。

(2)高级实验:包括Flash读写、数码管显示、LCD显示、温度传感器和加速度传感器的操作以及2.4GHz无线收发等方面的实验。该部分实验主要让学生学习I2C和SPI等协议的相关知识。

(3)综合实验:要求学生根据要求,移植μC/OS操作系统,在此基础上使用多个模块进行实验。

以上实验都是在意法半导体公司提供的固件库的基础上设计的。固件库是一个固件函数包,它由程序、数据结构和宏组成,包括了微控制器所有外设的性能特征。该固件函数库还包括每一个外设的驱动描述和应用实例,为开发者访问底层硬件提供了一个中间API,通过使用固件函数库,无需深入掌握底层硬件细节,开发者就可以轻松应用每一个外设。因此,使用固件函数库可以大大减少用户的程序编写时间,进而降低开发成本。

采用库的形式而不是直接操作寄存器的原因,在于学习固件库的使用有利于学生养成良好的代码书写习惯,帮助他们深刻理解C语言的高级用法。

4 结语

为改变“单片机技术”课程中实验教学与应用实践严重脱节的现状,本文以STM8S单片机教学实验平台建设为主线,将产品设计的各个环节融入单片机实验教学中,使实验教学,毕业设计与产品设计相结合,学生在学习实践、再学习、再实践的过程中,全面掌握单片机应用设计中各方面的知识和技能。

[1]焦振宇.浅谈新形势下我国高校单片机教学的课程改革[J].南宁.高教论坛,2005,2(1):102-105.

[2]倪志莲.单片机课程的实验教学改革[J].上海.实验室研究与探索,2006,25(7):843-844.

[3]许国安,徐华成.深化实验教学改革,注重对学生能力的培养[J].北京.实验技术与管理,2003,20(2):112-115.

猜你喜欢
外设固件单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
基于SHA1的SCADA系统PLC固件完整性验证方法
基于UEFI固件的攻击验证技术研究*
基于固件的远程身份认证
提取ROM固件中的APP
外设天地行情
外设天地行情