单片机引用doc.docx
- 文档编号:16132668
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:140
- 大小:54.39KB
单片机引用doc.docx
《单片机引用doc.docx》由会员分享,可在线阅读,更多相关《单片机引用doc.docx(140页珍藏版)》请在冰点文库上搜索。
单片机引用doc
第8章µ’nSP™单片机应用及开发技术317
第8章µ’nSP™单片机应用及开发技术
本章将介绍µ’nSP™系列单片机的应用领域,具体讲述SPCE061A单片机在通讯、
语音领域里的应用,并详细给出了有关系统的电路原理图、程序流程图以及程序代码,
供读者参考。
8.1µ’nSP™的应用领域
µ’nSP™家族产品具有电源电压范围和工作速率范围较宽、集成度高、性能价格比
高以及功耗低等特点,故其有非常广泛的应用领域。
µ’nSP™家族系列产品,涵盖了非
常广泛的应用。
包括:
发音与语音识别的微控制器(SPCE系列)、通信来电辩识应用
的微控制器(SPT660x系列)、以及通用型微控制器等等,主要体现在以下几个方面:
„用于数字信号处理
„用于开发研制便携式移动终端
„用于开发嵌入式计算机应用系统
8.1.1用于数字信号处理
1.数字滤波器(DigitalFilter)
数字滤波器是一种计算处理或算法。
借助于此,可以将输入的一种数字信号或序
列变换为另一种序列输出。
数字滤波器已被广泛地应用于数字语音、数字图像处理以
及模式识别和频谱分析。
数字信号处理器(DSP,DigitalSignalProcessor)的作用是通过一系列数字来
表示信号及其信息,并借助数字计算方法变换和处理这些信号。
为了构成DSP,必须
有一种部件能够快速地完成两个数值的乘法运算并将乘积累加于寄存器。
“快速”意
味着乘和累加(MAC,Multiply&ACcumulate)较高的运算速度。
若以16位数值进行
乘和累加,其结果应为32位。
显然,µ’nSP™的硬件结构与其指令系统的结合足以构成DSP应用的硬件MAC单元,
因而很适用于一些DSP方面的应用。
2.数字信号的压缩编码与解码
通常,用于存储语音、图像等多种媒体信息的数字信号量非常巨大。
这无论对于
存储还是对于传输都是很不利的。
为了节省存储空间或增强传输效率,自然使人想到:
第8章µ’nSP™单片机应用及开发技术318
将那些暂不运行的数字信号文件用某种算法进行压缩编码,待要运行时再释放还原,
即解码。
3.数字语音(音乐)信号处理
数字语音(音乐)信号处理是建立在DSP硬件基础上。
通常DSP按运算的复杂程度
分为定点和浮点两类,其根本区别在于数值的格式。
定点DSP采用整数运算,对于大
容量、低功耗的应用场合较合适;浮点DSP用于实数运算,最适宜于高性能且复杂场
合的运算。
µ’nSP™可用于定点DSP运算,且其成本较低,在语音处理这样的应用场合
最能发挥出其特长。
譬如像数字语音(音乐)信号处理中的频移处理算法就可用µ’nSP™
实现。
8.1.2用于开发研制便携移动式终端
随着无线电通信及芯片技术的迅速发展以及电子商务的需求,使得便携移动式终
端越来越朝着强实用性、个性化且时尚化的方向发展。
个人数字助理(PDA,Personal
DigitalAssistant)就是符合这种时尚潮流的便携移动式终端。
若以µ’nSP™家族产品为主,据CPU工作速率、存储容量和负荷能力,添加必要
的外围电路并配合相应的一些外设,便可方便地设计出实用性强、可靠性高的PDA产
品。
图8.1是基于µ’nSP™的PDA基本硬件构成框图,该框图是PDA比较全方位的一个
设计方案。
针对不同的要求,可对其外围电路作适当删减修改,而设计出不同功能和
不同价位的各款PDA产品。
液晶显示器
无线通信模块
GPS接收模块
耳
机
话
筒
SIM卡接口模块
串行闪存模块
u'nSP功
能
键
电阻式触摸屏
图8.1基于µ’nSP™家族产品的PDA硬件构成
图8.1中的PDA可以设计规划如下一些功能:
z内置微型实时操作系统(RTOS,Real-TimeOperatingSystem)
z语音识别输入或触摸屏输入
z无线移动式语音通信
z无线寻呼机、对讲机
z双机或多机通信第8章µ’nSP™单片机应用及开发技术319
z下载升级软件
z移动定位导航及位置信息服务
z家电遥控器
z个人资料数据库(名片册、医疗档案及家庭理财等)
z皮包工具(字典、计算器、游戏机、学习机、万年历及钟表等)
8.1.3用于开发嵌入式计算机应用系统
嵌入式计算机系统(ECS,EmbeddedComputerSystem)是指专门用于某一应用系
统或设备并隐藏于其中的起关键支配作用的计算机应用系统。
ECS与通用计算机系统
相比有以下一些特征:
专用性、可封装性、外来性、实时性及可靠性。
所谓外来性一
般是指ECS自成一个子系统,与目标系统的其它子系统保持一定的独立性。
在不同的应用领域中对ECS有各自特殊的要求。
例如:
(1)小型应用系统,一般不需大量的数据处理,只需较强的实时控制功能,且要
求体积小、功耗低等。
这类系统如计算机智能化仪表、家电产品的自动控制等。
(2)简单的工业控制系统,要求有相当强的实时数据处理能力和控制能力。
如步
进电机的驱动控制、数据采集、智能测量、汽车工业等。
(3)比较复杂的系统中若采用分布式多机系统,在某些节点要配置智能I/O处理
机对现场信息进行实时测量和控制。
由于现场情况复杂,环境恶劣,故要求高可靠性
和抗干扰能力等。
如航空航天、尖端武器以及机器人系统等。
对于上述应用领域,第一类通常用8位机,如凌阳公司的SPL系列微处理器即可
满足要求。
而对于第二类则用具有定点DSP运算功能的µ’nSP™系列的16位微处理器
实现较为合适。
至于第三类则可根据需要选用若干个8位机或若干个8位机与µ’nSP™
系列的16位机组合形成分布式多机系统。
µ’nSP™的特点决定其能很好地胜任于从简单到复杂的嵌入计算机系统。
具体地可
在如下一些应用领域里进行开发:
z工业控制
…工厂自动化系统(锅炉、化工、电力等)
…智能化仪器仪表
…汽车控制(防撞系统、减震系统、静噪系统、燃油喷射系统、通信与音
响等)
…机器人控制
z消费、娱乐
…数字机顶盒
…游戏机、智能玩具、学习机
…家用电器
z通信
…数字留言机
…数字语音信箱
…数字免提电话
z军事第8章µ’nSP™单片机应用及开发技术320
…雷达与声纳信号处理
…导航、制导
…保密通信
…全球定位、搜索跟踪
8.2SPCE061A单片机的应用举例
单片机的应用非常广泛,为了帮助读者尽快将SPCE061A用的得心应手,下面举几
个SPCE061A单片机在不同领域中的应用实例,通过这些例子,读者可以对µ’nSP™系
列产品的应用窥见一斑。
8.2.1单片机报时及作息时间控制
原理说明
本例所设计的是一个具有报时功能及作息时间控制钟。
它利用SPCE061A单片机的
2Hz时基计时,进行年历计算,并用SPCE061A的语音功能将它报出来;在进行时间计
算,分每加1时,都与规定的作息时间比较,如果相等则进行相应的控制或动作。
本
例中假定某高校的作息时间如下所示:
08:
00-------08:
50第一节课09:
00-------09:
50第二节课
09:
52-------10:
05课间操10:
10-------11:
00第三节课
01:
10-------12:
00第四节课12:
00-------13:
30午间休息
13:
30-------14:
20第五节课14:
30-------15:
20第六节课
15:
21-------15:
50播放歌曲
硬件电路
硬件电路由键盘、声音输出模块和指示灯三部分组成,如图8.2所示。
系统扩展三个按键用于报时及校正时间。
SPCE061A的DAC为电流型输出,经负载
电阻R11、三极管8050驱动扬声器SPEAKER放音,SPEAKER可选用4Ω或8Ω扬声器。
IOA15接一个LED,到规定的作息时间用LED闪烁来表示,使用者可根据具体需要来控
制电铃、播放提示语等。
凌阳芯片的工作电压为3.3v,在图8.2中,我们给出了获得
工作电压两种方法。
(1)通过两个二极管连续降压使5v的电压降至3.6v,接近3.3v供芯片使用,
这种方法比较简单,但电压值不是很精确。
(2)通过LM7833可获得准确的3.3V电压。
第8章µ’nSP™单片机应用及开发技术321
VSS
VSS
VCP
OSCIOSCO
VSSA
VSSP
VSS
VSSA
OSC32O12
OSC32I
13
XTEST14
VDD15
XICE16
XICECLK17
XICESDA18
VSS
19
PVIN20
DAC1
21
DAC2
22
VREF2
23
VSS
24
AGC25
OPI
26
MICOUT27
MICN28
PFUSE29
MICP33
VCM34
VRTPAD35
VDD36
VMIC37
VSS
38
IOA0
41
IOA1
42
IOA2
43
IOA3
44
IOA4
45
IOA5
46
IOA6
47
IOA7
48
VSS
49
VSS
50
VDDH51
VDDH52
IOA8
53
NC39
NC40
NC30
NC31
NC32
IOA9
54
IOA10
55
IOA11
56
IOA12
57
IOA13
58
IOA14
59
IOA15
60
XROMT61
VSS
62
XSLEEP63
IOB15
64
IOB14
65
IOB13
66
IOB12
67
IOB11
68
PVPP
69
VDDH75
IOB10
76
IOB9
77
NC70
NC71
NC72
NC73
NC74
IOB8
78
IOB7
79
IOB6
80
IOB5
81
IOB4
1
IOB3
2
IOB2
3
NC82
NC83
NC84
IOB1
4
IOB0
5
XRESB6
VDD7
VCP
8
VSS
9
NC10
NC11
SPCE061A
C25
104
C34
104
C33
104
1
J12CON1
C26
104
R10
3.3K
C32
104
C38
3300p
Y1
32768
C36
20p
C37
20p
C28
104
C29
104
C24
104
+C11
10u16V
+C12
100u16V
VDD
ICE_EN1
ICE_SCK
ICE_SDA
VSS
1
2
3
4
5
PROBE
Time
UP
Down
VDD
D1
1K
8050
R11
R7
C22
SPEAKER
VDD
1042.4K
1K
IOA8
VDDH
VSS
IOA7
IOA6
IOA5
IOA3
IOA1
IOA2
IOA4
IOA0
VCM
VMIC
MICP
VRT
VSS
VSS
VDDH
VDD_A
OSCO
OSCI
ICE_EN
ICE_SCK
ICE_SDA
PVIN
DAC1
DAC2
VREF2
VSSA
AGC
OPI
MICOUT
MICN
PFUSE
VSSA
XTEST
VDD
IOB11
IOB12
IOB13
IOB14
IOB15
SLEEP
VSS
IOA15
IOA14
IOA13
IOA12
IOA11
IOA10
IOB10
IOB9
IOB8
IOB7
IOB6
IOB5
IOB4
IOB3
IOB2
IOB1
IOB0
RES_B
VCP
VDDH
VDD_P
VSSP
+5vVDDͼ1
ͼ2
1
2
3
4
9v
OUTIN
GND
LM7833
104
104
470uF
470uF
VDD
IOA9
图8.2硬件连接图
程序说明
整个程序分为主程序、键盘扫描子程序、万年历计算子程序、校时子程序、播放
语音子程序几部分。
第8章µ’nSP™单片机应用及开发技术322
a)主程序
程序按照结构化程序设计,所有功能都可通过调用子程序完成,主程序较简单,
流程见图8.3。
SPCE061A具有低功耗的睡眠模式,在睡眠模式下功耗电流可降到2μA,
这对于用电池供电的系统非常重要,睡眠模式可以通过按键中断唤醒。
初始化
键唤醒
键扫描
2Hz中断唤醒
调整万年历
按键处理
进入睡眠
有键按下
无键按下
图8.3主程序流程图
b)键盘扫描程序
由于机械触点的弹性作用,在键被按下或弹起时会出现电压抖动,从最初按下到
接触稳定要经过数毫秒的弹跳时间,如图8.4所示。
为保证键识别的准确,必须进行
去抖动处理,去抖动有硬件和软件两种方法。
硬件方法就是加去抖动电路,从根本上
避免抖动;软件方法有很多种,本例中主要是利用主程序的循环扫描,主程序循环一
次,扫描一次按键,当连续N次扫描到的键值都一样时,则说明是稳定的按键值。
键按下
稳定
前沿抖动后沿抖动
图8.4键按下的过程
第8章µ’nSP™单片机应用及开发技术323
c)万年历计算子程序
利用2Hz中断做时钟源进行计时,每两次中断秒加1,并进行年历计算,年历范
围从2001年到3099年。
在进行年历计算时,有平闰年计算问题。
闰年的条件是:
能
被400整除,或者能被4整除,但不能被100整除。
万年历计算子程序流程图见图8.5。
有2Hz中断?
半秒单元+1
半秒单元=2?
半秒单元=0
秒+1
分+1
秒=60?
分=60?
时+1
时=24?
根据平润年查出本
月有多少天
日<本月天数?
日+1日=1
月+1
月=13?
月=1
年+1
年=3099?
年=2001
Y
分=0
Y
Y
时=0
N
Y
Y
返回
N
N
N
N
Y
N
N
秒=0
Y
N
Y
图8.5万年历计算子程序
d)校时子程序
系统扩展了三个按键,TIME键用于报时,由于时间包括年月日和时分,按一次TIME
键,则报年月日,再按一次则报时分。
当一直按住TIME键3秒则进入时间校正状态,
语音报当前是XXXX年,按UP键年份增加,按DOWN键减少;按TIME键来切换月、日、
时、分,调整完分后,按TIME键确认,语音报出年月日时分。
时间增加的流程如图
8.6所示,时间减少的流程与增加的相同,所以不再给出时间减少的流程图。
在校正时
间的状态下,如果连续2分钟键没有被按下,则自动退出。
第8章µ’nSP™单片机应用及开发技术324
调整状态
年+1
年>3099
年=2001
月+1
月>12
月=1
日+1
日>31
日=1
时+1
时>23
时=0
分+1
分>59
分=0
返回
Y
N
Y
N
Y
N
Y
N
Y
N
当前状态?
年月日时分
图8.6校时子程序
e)播放语音子程序
报时用SACM-A2000播放,关于SPCE061A放音的子程序,前面章节已有详细介绍,
这里不再介绍。
8.2.2热敏电阻温度计
常见的玻璃管温度计,是靠管内水银升降来判断温度值的高低。
当光线较暗时,
就看不清水银位置,给观察带来不便。
这里介绍一种采用热敏电阻测温并用语音报告
温度值的热敏电阻温度计,它具有使用方便的优点。
电阻测温原理:
热敏电阻是一种新型半导体感温元件,具有灵敏度高、体积小、寿命长的优点。
热敏电阻可分为正温度系数和负温度系数两种类型。
负温度系数热敏电阻具有负的电阻温度特性,当温度升高时,电阻值减小;当温
度降低时,电阻值增大,其阻值——温度特性曲线如图8.7所示。
热敏电阻的阻值—
—温度特性曲线是一条指数曲线,非线性较大,在实际使用中要进行线性化处理,但
比较复杂,一般只使用线性度较好的一段(如图8.7所示ab段)。
如果测出热敏电阻
的阻值,就可以算出对应的温度值。
第8章µ’nSP™单片机应用及开发技术325
T0
有效范围0
温度
阻值
a
b
图8.7热敏电阻温度特性曲线
硬件电路:
用热敏电阻测温的硬件连接见图8.8。
将热敏电阻RT与固定电阻R串联,接3.3V
电源,当温度改变时,RT阻值改变,其两端的电压随之改变,测量两端的电压,通过
以下公式求得温度值:
T=T0-KVT
其中:
T——-被测温度
T0——与热敏电阻特性有关的温度参数
K——-与热敏电阻特性有关的系数
VT——热敏电阻两端的电压
此例中选用负温度系数热敏电阻MFD-502-34,其线性化较好的一段是在-20℃~
80℃。
第8章µ’nSP™单片机应用及开发技术326
VSS
VSS
VCP
OSCIOSCO
VSSA
VSSP
VSSVSSA
OSC32O12
OSC32I
13
XTEST14
VDD15
XICE16
XICECLK17
XICESDA18
VSS
19
PVIN20
DAC1
21
DAC2
22
VREF2
23
VSS
24
AGC25
OPI
26
MICOUT27
MICN28
PFUSE29
MICP
33
VCM34
VRTPAD35
VDD36
VMIC37
VSS
38
IOA0
41
IOA1
42
IOA2
43
IOA3
44
IOA4
45
IOA5
46
IOA6
47
IOA7
48
VSS
49
VSS
50
VDDH51
VDDH52
IOA8
53
NC39
NC40
NC30
NC31
NC32
IOA9
54
IOA10
55
IOA11
56
IOA12
57
IOA13
58
IOA14
59
IOA15
60
XROMT61
VSS
62
XSLEEP
63
IOB15
64
IOB14
65
IOB13
66
IOB12
67
IOB11
68
PVPP
69
VDDH75
IOB10
76
IOB9
77
NC70
NC71
NC72
NC73
NC74
IOB8
78
IOB7
79
IOB6
80
IOB5
81
IOB4
1
IOB3
2
IOB2
3
NC82
NC83
NC84
IOB1
4
IOB0
5
XRESB
6
VDD7
VCP
8
VSS
9
NC10
NC11
SPCE061A
C25
104
C34
104
C33
104
1
J12CON1
C26
104
R10
3.3K
C32
104
C38
3300p
Y1
32768
C36
20p
C37
20p
C28
104
C29
104
C24
104
+C11
10u16V
+C12
100u16V
1
2
3
4
5
PROBE
VDD
8050
R11
R7
C22
SPEAKER
VDD
104
2.4K
1K
5KRT
VDD
KEY
IOA8
VDDH
VSS
IOA7
IOA6
IOA5
IOA3
IOA1
IOA2
IOA4
IOA0
VCM
VMIC
MICP
VRT
VSS
VSS
VDDH
VDD_A
IOB11
IOB12
IOB13
IOB14
IOB15
SLEEP
VSS
IOA15
IOA14
IOA13
IOA12
IOA11
IOA10
IOB10
IOB9
IOB8
IOB7
IOB6
IOB5
IOB4
IOB3
IOB2
IOB1
IOB0
RES_B
VCP
VDDH
VDD_P
VSSP
OSCO
OSCI
ICE_EN
ICE_SCK
ICE_SDA
PVIN
DAC1
DAC2
VREF2
VSSA
AGC
OPI
MICOUT
MICN
PFUSE
VSSA
XTEST
VDDVDD
ICE_EN1
ICE_SCK
ICE_SDA
VSS
IOA9
1
2
3
4
9v
OUTIN
GND
LM7833
104
104
470uF
470uF
VDD
图8.8硬件连接图
固定电阻R阻值的选取:
MFD-502-34型热敏电阻线性化较好的一段是在-20℃——80℃,为了在最高温度
和最低温度时使被测信号基本接近满量程值,采取线性区域内中间某一点温度的阻值
作为固定电阻的值。
它们分压后,AD的输入电压是AD的输入电压范围一半。
在25℃
时热敏电阻的阻值为5KΩ,所以选取固定电阻R的值为5KΩ。
在-20℃时热敏电阻的阻值为37.399KΩ,热敏电阻两端电压VRT=2.9V,接近A/D
输入电压的上限3.3V;在80℃时热敏电阻的阻值为0.796KΩ,热敏电阻两端电压
VRT=0.45V,接近A/D输入电压的下限0V。
第8章µ’nSP™单片机应用及开发技术327
在温度线性化较好的区域内SPCE061A的A/D值都没有达到极限值。
按照图8.8接
法时,T0=76,K=0.1022,根据以上公式和参数,测出热敏电阻两端的电压就可以求出
被测温度。
温度计算:
系统扩展了一个按键,接于IOA15,当按键按下时,就进行A/D转换初始化,并
进行4次A/D转换,SPCE061A的A/D转换结果在高10位,每次将其移入低10位再计
算4次平均值作为AD有效结果返回;为了提高准确度,变量TempAD、Temper都采用
浮点数,计算完成用语音将温度值报出来。
由于在放音时播放函数会改变一些参数,
为了稳定起见,在每次A/D转换前都做一次初
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 引用 doc