自 TI 推出超低功耗 MSP430 单片机以来,MSP430 凭借其优越的性能,丰富的外设,易于上手的特性备受业内工程师的欢迎。超高性价比 Value Line 系列的横空出世,使得 MSP430 在性价比上更具有其他单片机无法比拟的优势。 TI 中国大学计划一直致力于将 TI 先进技术,高性能器件推广到高校中。近几年更是加大在单片机与模拟大学计划上的投入,在相关教学改革,学生创新与竞赛等方面加强与大学的合作。2012 年 TI 中国大学计划开始与全国各高校合作成立基于 MSP430G2 Launchpad 的口袋实验室,使得学生对单片机以及电路的入门学习不再局限在实验室,做到“一人一板,随时学习”,这一概念也受到广大师生的欢迎和好评。在实践的过程中, 由于 G2 Launchpad 自带的硬件资源较少,而 MSP430G2553 的集成外设相当丰富(ADC, Timer, Comparator, Touch Key, SPI, I2C, UART, 等), 为了学习到每一个外设,老师和同学们投入了相当多的精力和时间来开发对应的外围模块来完整的学习 MSP430G2553。其中,青岛大学傅强和杨艳老师在开展口袋实验室教学的过程中上积累了大量的经验,开发了一系列外围模块,为了向更多的兄弟院校以最简单便捷的方式推广他们的成功案例,TI 中国大学计划与两位老师共同设计开发了一套 G2 全功能迷你扩展板,作为 TI MCU 生态系统的一个组成部分:在和 Launchpad 同等大小的 PCB 上,集成了多款 TI 模拟和数字器件来提供声、光、电相结合的实验,集学习性与趣味性于一体。这套实验板卡和配套材料一方面继承口袋实验室的理念——所有实验都可以脱离实验室完成,另一方面,将单片机和模拟器件完美的结合在一起,通过该迷你扩展板,不仅可以学习到 MSP430 的所有外设,还可以学习基本的模拟知识和系统设计方法,可谓一举多得。
MSP-EXP430G2 LaunchPad (以下简称 G2)是 TI 公司推出的 1 款 MSP430 开发板,它提供了具有集成仿真功能的 14/20 引脚 DIP 插座目标板,可通过 Spy Bi-Wire(2 线 JTAG)协议对系统内置的 MSP430 超值系列器件(G 系列)进行快速编程和调试。 MSP-EXP430G2 价格极具亲和力,特别适用于在校学生单片机入门学习之用。受 TI 中国大学计划部委托,特别设计了 1 款 MSP-EXP430G2 口袋实验平台扩展板。该扩展板基于 MSP430G2553 单片机设计,面积与 MSP-EXP430G2 大小相等,两者对插后可为 G2 提供丰富的实验外设。 本书编写的初衷是为扩展板编写实验教程,换句话说,书是扩展板的衍生品。但随着编写工作的深入,对于本书的定性和理解发生了重大变化。关于 G2 的定位,应该是针对单片机入门学生的,如果仅抛出一个个孤立的实验,“显摆”单片机和扩展板有多能耐,是不能真正帮助学生入门的。所以,最终书是引领单片机入门学习的主线,扩展板几经修改后成为辅助教学的得力工具。 第 1 章为扩展板的硬件原理介绍。这一章最重要的知识是关于电源单元的一番讨论,包含耦合干扰、滤波、去耦、地线冲突等诸多知识。而其他硬件单元仅为概括性的阐述,在本书后面的章节里会有更详细的论述。 第 2 章为 CCS 软件的使用。大多数教程对于单片机开发软件的安装使用,仅限于“自古华山一条路”的教法,完全建立在没有任何意外和“创意”的情况下。人不是机器,人会犯各种错误,会迸发各种靠谱不靠谱的创意,如果为了一个小小的软件问题困扰几天,仅有的一点学习激情将耗尽。所以在 CCS 软件使用章节的最后,专门开辟一节常见问题解答,将自己遇到过的,学生问过的各种软件问题集中起来解答。 第 3 章为基础知识。单片机的学习绝没有“XX 天学会”“XX 小时入门”的可能性,但也不是非得受过多“高等”的教育才能学。学单片机只要会一点 C 语言的皮毛就行,基础知识章节就是帮助大家梳理学习单片机前需要掌握的一些知识。任何知识都不是灌输能够教会的,基础知识也不例外,在初次学习时,能记住多少记多少,有个大概印象就行。后面学习的过程中,遇到问题,再带着问题翻回基础知识部分复习,这也是个学以致用,消化知识的过程。 第 4 章为系统时钟。从这一章开始,将以 MSP430G2553 单片机的片内外设为主线,讲解 MSP430 单片机的原理。系统时钟章节对初学者来说会有些枯燥,这章可以采用跳读的方法学习,但最起码需要掌握的是用调取出厂校验参数的方法快速设定时钟,并理解低功耗实 2 现的原理。待到本书最后一章,我们将返回时钟部分,将其彻底驯服。 第 5 章为 GPIO。控制单片机最基本的就是控制其输入输出口(IO),本章将介绍 MSP430 单片机 IO 的控制方法,IO 中断的使用方法。另外还有关于经典的上拉、下拉、图腾柱输出的科普知识。可以说,IO 不吃透,就不要再往下翻了。 第 6 章为 Timer_A 定时器。定时器是单片机中最重要的片内外设,没有定时器,其他花哨的外设都是浮云。Timer_A 定时器除了普通闹钟用途外,最拿手的两个本领是捕获脉冲边沿和比较输出波形。本章的重点也放在了讲解捕获和比较的实现原理上。本章最后,一劳永逸的将 TA 生成 PWM 写成库函数文件,在将来使用 PWM 的时候,事半功倍。 第 7 章为看门狗定时器。在大多数单片机中,看门狗定时器仅是一个“非正式”的定时器,除了看门狗复位,一般不会去用它。但在 MSP430G2 系列单片机中,由于没有基础定时器(Basic Timer),看门狗定时器就担当起闹钟的职责。类似闹钟原理的定时节拍用法,是定时器使用的精华,本章将看门狗定时器用到了极致,通过大量的例程,让大家深刻认识定时器在单片机编程中的巨大作用。本章没有学会,也不用往下翻了,先安心、耐心、细心的 “养好”那只忠诚、可靠、能干的看门狗吧。 第 8 章为电容触摸章节。电容触摸属于比较花哨的内容,其实质是通过 Timer_A 的计数功能和看门狗的定时功能相结合而实现的。本章相当于是对前面章节知识的一个总结,请在本章停下来,稍事休整和总结。觉得自己真的有所心得,准备好了,再开始新的征程。 第 9 章为串行通信原理。本章内容既不包括 MSP430G2553 单片机的片内外设,也不含任何一行代码,而是从科普角度介绍串行通信的原理。本章没有什么内容是必须掌握的,能够领悟串行通信的思想最好,不能领悟就当成字典以便将来翻看查找也行。 第 10 章为 USCI_UART 章节。本章主要介绍如何用 CCS 辅助初始化 UART 异步串行通信模块,如何通过 UART 与上位机通信从而实现人机交互。本章代码中,理解 FIFO 的原理和使用是亮点,需很好的掌握。 第 11 章为 USCI_SPI 章节。本章的内容包括两个部分,一是如何真正用上硬件 SPI 模块,为其编写库函数文件。二是 SD 卡的初始化、读扇区、写扇区原理,以及为其编写库函数文件。硬件 SPI 的使用上,与硬件 UART 有很大区别,需要用库函数封装起来才能用起来顺手。像 SD 卡这种外设,说明书“规定”怎么操作,就得怎么操作,没有什么神乎其技的刀法在里面。SD 内容比较多,但都是依照操作时序按部就班来就行,也是需要封装成库函数才好使用,都是一劳永逸的事。 第 12 章为 USCI_I2C 章节。本章的内容也包含两个部分,一是如何真正用上硬件 I2C 模块,为其编写库函数文件。二是基于 I2C 接口的 IO 扩展芯片 TCA6416A 的使用。硬件 I2C 模块要真正用起来,比 SPI 还要复杂一点,必须封成库函数才能用。至于 TCA6416A 则是调取 I2C 库函数,按说明书时序操作就行,同样要再次封装成 TCA6416A 的库函数。在学完 TCA6416A 后,扩展板的功能才算是被“激活”,按键和显示单元才能谈怎么用。 第 13 章为软件串行通信章节。在任何情况下,都可以使用软件方法来模拟串行通信,这里面饱含“我命由己不由天”的英雄气概。对于硬件 SPI 和硬件 I2C 的库函数文件,想要看明白想明白其实是很不容易的。这是因为,半硬半软的库函数受硬件掣肘颇多,库函数在编写过程中常有憋屈的感觉。而纯软件编写串行通信库函数,反倒感觉一气呵成,条理清楚。学完本章之后,再返工去看硬件 SPI 和 I2C 章节,一定会有新的认识。 第 14 章为 LCD 段式液晶章节。本章分为 LCD 顶层库函数和 LCD 硬件驱动 HT1621 函数两个部分。已知显示内容的情况下,如何计算出控制 LCD 显示的“显存”数据是一个难点。耐心、细心再加上手指头脚趾头一定可以算出来的!这部分内容来不得半点跳读,你骗书,书就骗你。单看 HT1621 的说明书,不过是按时序进行控制。但扩展板上是用 I2C 协议的扩展 IO 间接控制 HT1621,一想到这里,别说是 CPU,人脑子都要当机了。其实无论是用什么类型的 IO 进行控制,我们都可以编写与硬件无关的 HT1621 库函数文件,这就是硬件隔离的编程思想。学会如何通过 TCA6416A 间接控制 HT1621,再控制 LCD 显示,就像打通了任督二脉,以后多复杂的控制程序都会不在话下。 第 15 章为存储器章节。储存器是单片机系统的重要组成部分,本章相当于是对各种存储器原理做一个综述,本身与 MSP430 单片机无关,也不包含任何一行代码。当做科普来阅读,对存储器有个比较宏观的了解,对入门后的学习会大有裨益。 第 16 章为 Flash 控制器章节。MSP430 全系列单片机都提供了 Flash 控制器,可以实现程序运行中,擦写 Flash ROM,这意味着可将 Flash ROM 作为掉电不失存储器来使用。这章内容不涉及其他模块知识,主要就是按“规定”操作寄存器,用数组搬运数据而已。编写 Flash 库函数文件可以方便使用这一片内外设。 第 17 章为 Comparator_A 比较器章节。乍看这个章节的内容时,还以为标题写错了,怎么都觉得是在写模数转换器 ADC 的。没错,比较器实际就是构成模数转换器的核心器件。本章的前半部分都是谈如何用比较器实现 ADC 的原理,后半部分是介绍一种只用一个比较器就能实现的 Slope 型 ADC。最后,配以一个生动有趣的例程,展示 Slope 型 ADC 性能的同时,学习代码移植的方法。 第 18 章为模数转换器章节。本章也是科普章节,内容多且有一定难度。如果只是想要 ADC 出数,大可不必看这一章。但是要想用好 ADC,本章内容还只是抛了块板砖,ADC 采样的知识需要不断在实践中积累。本章最后给出了单极性 ADC 采集双极性信号的方法,有必要重点掌握。 第 19 章为 ADC10 章节。有了前两章的浓墨铺垫,本章的内容显得轻松惬意。片内 ADC的使用通常都非常简单,就是“吱一声”的事。最后,本章借温度传感器采样的例程,介绍了如何从 CCS Example 中移植修改代码。 第 20 章为 PWM 波形合成与双极性信号采样章节。从这章开始,进入了综合实验部分。虽然在前面的 Timer_A 章节已经介绍了 PWM 是什么,但是只有经过本章的学习,才能真正领悟 PWM 的精髓。相信会给大家带来全新的收获。 第 21 章为 DAC 与 AWG 章节。对于初学者来说,ADC 和 DAC 就像是单片机学习的双枪一样,少了 DAC 好像人生都不完美了。但是 DAC 到手后拿来干什么是个问题,本章用 AWG 任意波形发生器的例子展示了 DAC 的非凡魅力,大家看完这章后对于扩展板上不到半粒米大小的 DAC8411 肯定会刮目相看。为了让没有示波器的同学也能共享“发展成果”,特别加了音频功率放大器,来驱动喇叭,如果从 TF 卡中读取音频文件来生成 AWG,那么喇叭就可以播放音乐了。 第 22 章为自校准 DCO 章节。对于 MSP430G2553 的学习,是从系统时钟开始的,最后又回到时钟上去。出厂时,MSP430G2553 单片机的 DCO 校准了 1/8/12/16MHz 四个频率点。当我们学成归来之时,投桃报李,还以颜色,校准任意频率点,而且精度高于出厂校准,为本书的学习划上完美的句号。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !