自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则是调
3
取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
4
的使用通常都非常简单,就是“吱一声”的事。最后,本章借温度传感器采样的例程,介绍了如何从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条评论
快来发表一下你的评论吧 !