基于MSP430G2211实现的简易信号发生器sa.ppt_第1页
基于MSP430G2211实现的简易信号发生器sa.ppt_第2页
基于MSP430G2211实现的简易信号发生器sa.ppt_第3页
基于MSP430G2211实现的简易信号发生器sa.ppt_第4页
基于MSP430G2211实现的简易信号发生器sa.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 MSP430G2系列Launchpad作品开发实例教程 实例名称 基于MSP430G2211实现的简易信号发生器作者 景振华制作单位 西安电子科技大学测控工程与仪器系MSP430单片机联合实验室制作时间 2011年12月 第一章作品概述 2 作品基本情况介绍 本作品基于TI的LaunchPad设计了一款简易信号发生器 选用TI的MSP430G2211这款单片机 作品采用DDS原理实现信号的产生 使用PWM调制波模拟DAC 外加一些基本的滤波和放大电路 实现了可产生正弦波 三角波 锯齿波的简易信号发生器 3 4 作品相关技术参数 系统硬件框图 整个系统硬件主要由TI的LaunchPad 滤波器电路模块 增益控制模块 按键菜单及LED指示灯模块和电源模块组成 5 6 系统软件框图 整个系统的软件主要有主函数 定时器TA中断函数 按键中断函数三个大的模块组成 PCB板正面与背面图 正面图 7 背面图 作品实物图 8 第二章作品硬件系统设计 9 10 Launchpad开发板实物图 TI的Launchpad开发板简介 TI的MSP430G2系列Launchpad开发板是一款适用于TI最新MSP430G2xx系列产品的完整开发解决方案 其基于USB的集成型仿真器可提供为全系列MSP430G2xx器件开发应用所必需的所有软 硬件 LaunchPad具有集成的DIP插座 可支持多达20个引脚 从而使MSP430ValueLine器件能够简便地插入LaunchPad电路板中 此外 其还可提供板上Flash仿真工具 以直接连接至PC轻松进行编程 调试和评估 此外 它还提供了从MSP430G2xx器件到主机PC或相连目标板的9600波特率的UART串行连接 11 12 MSP430G2系列Launchpad开发板的特性 USB调试与编程接口无需驱动即可安装使用 且具备高达9600波特的UART串行通信速度支持所有采用PDIP14或PDIP20封装的MSP430G2xx和MSP430F20 xx器件两个通用数字I O引脚分别连接至绿光和红光的LED灯可提供视觉反馈两个按钮可实现用户反馈和芯片复位器件引脚可通过插座引出 既可以方便的用于调试 也可用来添加定制的扩展板 MSP430G2211单片机的资源和功能 16位RISC指令集处理器128字节RAM 数据 2K字节Flash存储器 代码 一个16位TA定时器内置数控振荡器 DCO 最高频率可达21MHz9个双向I O口 每个I O口都可以作为中断源自带BOR检测电路 能自动避开上电瞬间的毛刺并产生可靠的复位信号内置低功耗低频振荡器 VLO 可通过软件配置的8通道比较器 13 作品中总共使用了三种电源 5V 3 6V 5V 其中3 6V的产生是在1117 3 3的参考端加了二极管1N5819 5V由负压产生芯片ICL7660产生 14 电源模块 PWM模拟DAC原理 PWM调制的本质是改变波形中高电平的比例 实际是波形在一个周期内的 面积 如果将PWM调制波进行低通滤波 取出其直流成分 平均值 滤除后的输出电压将线性正比于PWM的占空比 根据这个原理可以利用PWM输出作为低速DAC使用 15 滤波电路模块 滤波电路模块由低通滤波电路和高通滤波电路组成 低通滤波电路主要是对430单片机P1 2 TA0 1 输出的PWM调制波进行滤波 来模拟DAC的功能 滤波电路模块 R15 R16 R17 C10 C11和C12组成三阶低通滤波器 3dB点为600Hz 可以有效的将信号中的高频成分滤除 高通滤波器电路 C9和R19组成高通滤波电路 3dB点为362mHz 可以将信号中的直流成分有效的滤除 16 幅度调节及信号输出模块 电路由运算放大器LM358和一些电阻电容组成的反相放大电路 其中R10是精密可调电位器 方便用户对信号的幅度进行调节 17 菜单按键和指示模块 18 第三章作品软件系统设计 19 DDS原理 20 对于一个频率为fout的正弦信号Sout 可以用下式来描述 其相位为 现将正弦信号的相位和幅值均进行数字化 DDS原理 21 用频率为fclk的基准时钟对正弦信号进行抽样 将2 切割成2N等份作为最小量化单位 从而得到 的数字量M为 DDS原理 22 当M取1时 可以得到输出信号的最小频率步进为 由于正弦函数为非线性函数 很难实时计算 一般通过查表的方法来快速获得函数值 DDS在作品中的实现 对正弦波的幅值进行量化 幅值选为256 之所以选择256 是由于本作品中生成的1024个点的正弦波相位和幅值量化表中的数值是8位的无符号char型 在正弦波相位和幅值量化表中存储的数值相对于是以256个时钟为总周期的PWM调制波的高电平值 1024个量化点正好占用1K字节的存储空间 23 DDS在作品中的实现 在软件中 DCO的时钟被配置为15 25MHz 但实际测试为15 802368MHz SMCLK的时钟源为DCOCLK 定时器TA的时钟源为SMCLK 定时器TA的CCR0为256 而且为了得到稳定的幅值 让正弦波的一个点持续输出占空比相同的60个PWM波形 相当于采样频率为 则最小频率步进为 当M 2时 相当于在1029Hz的采样率下 一个波形只取了512个点 输出波形为2Hz 所以可得 利用此原理本作品实现了1到100Hz正弦波的产生 24 主程序流程图 25 定时器中断服务程序流程图 26 按键中断服务程序流程图 27 I O口初始化 voidPort init void P1SEL BIT2 TA0 1P1DIR BIT2 P1DIR BIT3 BIT4 BIT5 P1OUT BIT5 初始为Sine 点亮相应指示灯P1OUT 开中断 28 系统时钟初始化 voidSys clock init void DCOCTL 0 x60 DC0 3BCSCTL1 0 x8F 0X88 RSEL 8DCOCLK 1 6MHz0X8F RSEL 15DCOCLK 15 25MHzfor unsignedinti 0 i 65535 i 延时 使系统时钟稳定 29 定时器TA初始化 voidTA init void TACTL TASSEL 2 MC 1 TA时钟源选择SMCLK 增计数模式TACCTL1 OUTMOD 7 模式7 PWM输出模式TACCR0 255 TACCTL0 CCIE 打开中断 30 定时器TA中断服务程序产生正弦波 pragmavector TIMERA0 VECTOR interruptvoidTA ISR void if WaveSelect 5 Sine Count line if Count line Sin line TACCR1 sin M M Delt M if M 1024 M M 1024 Count line 0 31 if WaveSelect 10 Triangle Count line if Count line 3 if Count1405 Count 2810 Count Rise 0 TACCR1 Count Count line 0 return 32 定时器TA中断服务程序产生三角波 if Rise 0 三角波下降 if Count f out Count f out else Count f out Count Rise 1 TACCR1 Count Count line 0 33 定时器TA中断服务程序产生三角波 if WaveSelect 15 Sawtooth Count line if Count line 6 Count f out if Count 1405 Count 1405 TACCR1 Count Count line 0 34 定时器TA中断服务程序产生锯齿波 P1口中断服务程序 pragmavector PORT1 VECTOR interruptvoidP1 ISR KEYS void unsignedinti Keytime1 0 Keytime2 0 unsignedcharPushKey PushKey P1IFG 开TA中断 允许输出信号 35 if PushKey 36 P1口中断服务程序 pragmavector PORT2 VECTOR interruptvoidP2 ISR KEYS void unsignedinti Keytime1 0 Keytime2 0 unsignedcharPushKey PushKey P2IFG 37 P2口中断服务程序 if PushKey 38 P2口中断服务程序 正弦波相位和幅值量化表 constunsignedcharsin 1024 128 128 129 130 131 131 132 133 134 135 135 136 137 138 138 139 140 141 141 142 143 144 145 145 146 147 148 148 149 150 151 152 152 153 154 155 155 156 157 158 158 159 160 161 161 162 163 164 164 165 166 167 167 168 169 170 170 171 172 172 173 174 175 175 176 177 178 178 179 180 180 181 182 183 183 184 185 185 186 187 187 188 189 189 190 191 191 192 193 193 194 195 195 196 197 197 198 199 199 200 201 201 202 203 203 204 204 205 206 206 207 207 208 209 209 210 210 211 212 212 213 213 214 215 215 216 216 217 217 218 218 219 219 220 221 221 222 222 223 223 224 224 225 225 226 226 227 227 228 228 229 229 230 230 230 231 231 232 232 233 233 234 234 234 235 235 236 236 236 237 237 238 238 238 239 239 240 240 240 241 241 241 242 242 242 243 243 243 244 244 244 245 245 245 245 246 246 246 247 247 247 247 248 248 248 248 249 249 249 249 249 250 250 250 250 251 251 251 251 251 251 252 252 252 252 252 252 252 253 253 253 253 253 253 253 253 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 255 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 254 253 253 253 253 253 253 253 253 252 252 252 252 252 252 252 251 251 251 251 251 251 250 250 250 250 249 249 249 249 249 248 248 248 248 247 247 247 247 246 246 246 245 245 245 245 244 244 244 243 243 243 242 242 242 241 241 241 240 240 240 239 239 238 238 238 237 237 236 236 236 235 235 234 234 234 233 233 232 232 231 231 230 230 230 229 229 228 228 227 227 226 226 225 225 224 224 223 223 222 222 221 221 220 219 219 218 218 217 217 216 216 215 215 214 213 213 212 212 211 210 210 209 209 208 207 207 206 206 205 204 204 203 203 202 201 201 200 199 199 198 197 197 196 195 195 194 193 193 192 191 191 190 189 189 188 187 187 186 185 185 184 183 183 182 181 180 180 179 178 178 177 176 175 175 174 173 172 172 171 170 170 169 168 167 167 166 165 164 164 163 162 161 161 160 159 158 158 157 156 155 155 154 153 152 152 151 150 149 148 148 147 146 145 145 144 143 142 141 141 140 139 138 138 137 136 135 135 134 133 132 131 131 130 129 128 128 127 126 125 124 124 123 122 121 120 120 119 118 117 117 116 115 114 114 113 112 111 110 110 109 108 107 107 106 105 104 103 103 102 101 100 100 99 98 97 97 96 95 94 94 93 92 91 91 90 89 88 88 87 86 85 85 84 83 83 82 81 80 80 79 78 77 77 76 75 75 74 73 72 72 71 70 70 69 68 68 67 66 66 65 64 64 63 62 62 61 60 60 59 58 58 57 56 56 55 54 54 53 52 52 51 51 50 49 49 48 48 47 46 46 45 45 44 43 43 42 42 41 40 40 39 39 38 38 37 37 36 36 35 34 34 33 33 32 32 31 31 30 30 29 29 28 28 27 27 26 26 25 25 25 24 24 23 23 22 22 21 21 21 20 20 19 19 19 18 18 17 17 17 16 16 15 15 15 14 14 14 13 13 13 12 12 12 11 11 11 10 10 10 10 9 9 9 8 8 8 8 7 7 7 7 6 6 6 6 6 5 5 5 5 4 4 4 4 4 4 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 6 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 10 10 10 10 11 11 11 12 12 12 13 13 13 14 14 14 15 15 15 16 16 17 17 17 18 18 19 19 19 20 20 21 21 21 22 22 23 23 24 24 25 25 25 26 26 27 27 28 28 29 29 30 30 31 31 32 32 33 33 34 34 35 36 36 37 37 38 38 39 39 40 40 41 42 42 43 43 44 45 45 46 46 47 48 48 49 49 50 51 51 52 52 53 54 54 55 56 56 57 58 58 59 60 60 61 62 62 63 64 64 65 66 66 67 68 68 69 70 70 71 72 72 73 74 75 75 76 77 77 78 79 80 80 81 82 83 83 84 85 85 86 87 88 88 89 90 91 91 92 93 94 94 95 96 97 97 98 99 100 100 101 102 103 103 104 105 106 107 107 108 109 110 110 111 112 113 114 114 115 116 117 117 118 119 120 120 121 122 123 124 124 125 126 127 39 第四章总结与思考 40 总结 本文完成了基于MSP430G2211的简易信号发生器的设计与实现 从硬件和软件两方面 对使用PWM波模拟DAC和利用D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论