基于MSP430平台及基于FPGA平台的实验_第1页
基于MSP430平台及基于FPGA平台的实验_第2页
基于MSP430平台及基于FPGA平台的实验_第3页
基于MSP430平台及基于FPGA平台的实验_第4页
基于MSP430平台及基于FPGA平台的实验_第5页
已阅读5页,还剩30页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

嵌入式系统实验报告实验名称基于MSP430平台及基于FPGA平台的实验学员学号培养类型年级专业所属学院指导教员实验室嵌入式系统设计实验报告实验1基于MSP430平台的键盘实验姓名学号专业实验地点实验时间实验前准备学习IAR开发软件的使用方法。对IAR开发环境的配置操作进行练习熟悉。提前预习本实验的内容。明确本实验的目的和要求。初步设计程序,并在电脑上编译验证,发现错误并改正。实验内容和目的实验内容(1)实现按键键值数码管显示;(2)实现数据从实验平台传输到PC机。实验目的(1)熟悉行列矩阵键盘的工作原理及连接方式;(2)实现按键键值数码管显示;(3)实现按键键值串口打印。实验步骤(1)在FILE菜单里选择FILENEWWORKSPACE,建立一个空工作空间。(2)在PROJECT菜单中选择PROJECTCREATENEWPROJECT,在当前空间建立一个新工程。(3)在FILE菜单中选择FILESAVEWORKSPACE,提示选择路径并输入文件名,保存当前空间。(4)在工程管理窗内会看待新建的工程,若在第二步选择了“CMAIN”,则在工程内已经包含了MAINC,双击文件,在编辑窗口打开后即可编辑,在软件的编辑窗口内输入程序。(5)如果已经编辑好了源文件,则选择PROJECTADDFILES就可以打开一个对话框,通过这里可以向项目中添加源文件。如果需要手动输入源文件,则选择FILENEWFILE或者是工具栏左侧的图标按钮将新建一个文本文件,可在其中输入自己的源程序,然后选择FILESAVE保存输入的文件即可。(6)配置工程属性。(7)编译并进行调试。(8)连接开发板并运行。实验总结通过本次实验,我初步学习了IAR开发软件的使用方法,和对IAR开发环境的配置操作进行练习熟悉。实验过程中严格按照老师之前上课时演示要求操作每一个步骤,但是在程序的编译与运行过程中总是出问题。经过教员的讲解之后,我明白了许多编成的基础原理与要求,受益匪浅,为之后几个实验的编程奠定基础。本次键盘实验让我联想到之前在微机课上学习到的键盘实验,有种融会贯通之感。程序源代码/程序功能扫描4X4键盘并将键值在数码管上显示跳线设置将跳线座J3上的短路帽拔下测试说明按动K1K16按键,观察数码管显示/INCLUDEINCLUDE“BOARDCONFIGH“INCLUDE“KEYPADH“INCLUDE“GDATAH“/主函数/VOIDMAINVOIDBOARDCONFIG0X88/打开数码管,关闭流水灯和电平转换WDTCTLWDT_ADLY_1_9/设置内部看门狗工作在定时器模式,19MS中断一次IE1|WDTIE/使能看门狗中断P4DIR0XFF/设置P4,P5的IO方向为输出P5DIR0XFFP4OUT0X00/设置P4,P5的输出初值P5OUT0XFF_EINT/打开全局中断INIT_KEYPADWHILE1KEY_EVENTIFKEY_FLAG1KEY_FLAG0DISPBUF0KEY_VAL/10DISPBUF1KEY_VAL10/函数名称WATCHDOG_TIMER功能看门狗中断服务函数,在这里输出数码管的段选和位选信号参数无返回值无/PRAGMAVECTORWDT_VECTOR_INTERRUPTVOIDWATCHDOG_TIMERVOIDP5OUT0XFFP4OUTSCANDATADISPBUFCNT/输出段选信号P5OUTVOIDPLAY_SONGVOID/主函数/VOIDMAINVOIDUCHARIWDTCTLWDTPWWDTHOLD/关闭看门狗/选择系统主时钟为8MHZ/BOARDCONFIG0XF0BCSCTL1/打开XT2高频晶体振荡器DOIFG1/清除晶振失败标志FORI0XFFI0I/等待8MHZ晶体起振WHILEIFG1/晶振失效标志仍然存在BCSCTL2|SELM_2SELS/主时钟和从时钟都选择高频晶振P2DIR0XFF/设置P2口方向为输出P2OUT0XFF/设置定时器A每10MS中断一次CCTL0CCIECCR010000TACTL|TASSEL_2ID_3/设置控制蜂鸣器的IO方向为输出BUZZER_DIR|BUZZER/打开全局中断_EINT/循环演奏歌曲WHILE1PLAY_SONG/函数名称TIMERA_ISR功能定时器A的中断服务函数参数无返回值无/PRAGMAVECTORTIMERA0_VECTOR_INTERRUPTVOIDTIMERA_ISRVOIDCOUNTER/函数名称DELAY_NMS功能延时N个MS的函数参数N延时长度返回值无/VOIDDELAY_NMSUCHARNUCHARI,JFORI0IINCLUDE“BOARDCONFIGH“VOIDDELAYINTIWHILEI0IINTCOUNT0/数码管7位段码0FUNSIGNEDCHARSCANDATA160X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X71/显示缓存UNSIGNEDCHARDISPBUF2/主函数/VOIDMAINVOIDWDTCTLWDTPWWDTHOLD/关闭看门狗/BOARDCONFIG0XF0/关闭数码管和电平转换,打开流水灯CCTL0CCIE/使能CCR0中断CCR04098/设定周期05STACTLTASSEL_1ID_3MC_1/定时器A的时钟源选择ACLK,增计数模式P2DIR0XFF/设置P2口方向为输出P2OUT0XFFP4DIR0XFF/设置P4,P5的IO方向为输出P5DIR0XFFP4OUT0X00/设置P4,P5的输出初值P5OUT0XFF_EINT/使能全局中断WHILE1DISPBUF0COUNT/10DISPBUF1COUNT10P4OUTSCANDATADISPBUF0/输出段选信号P5OUT/输出位选信号DELAY1000P5OUT0XFF/输出位选信号P4OUTSCANDATADISPBUF1/输出段选信号P5OUT/输出位选信号DELAY1000P5OUT0XFF/输出位选信号/函数名称TIMER_A功能定时器A的中断服务函数参数无返回值无/PRAGMAVECTORTIMERA0_VECTOR_INTERRUPTVOIDTIMER_AVOIDCOUNTIFCOUNT60COUNT0嵌入式系统设计实验报告实验1基于MSP430平台的跑马灯实验姓名学号专业实验地点实验时间实验前准备学习IAR开发软件的使用方法;对IAR开发环境的配置操作进行练习熟悉;提前预习本实验的内容;明确本实验的目的和要求;初步设计程序,并在电脑上编译验证,发现错误并改正。实验内容和目的实验内容(1)配置定时器A的工作模式;(2)05S中断定时;(3)数码管实时显示。实验目的(1)熟悉MSP430F149的定时器寄存器;(2)计算定时时间;(3)配置定时中断模式。实验步骤(1)在FILE菜单里选择FILENEWWORKSPACE,建立一个空工作空间。(2)在PROJECT菜单中选择PROJECTCREATENEWPROJECT,在当前空间建立一个新工程。(3)在FILE菜单中选择FILESAVEWORKSPACE,提示选择路径并输入文件名,保存当前空间。(4)在工程管理窗内会看待新建的工程,若在第二步选择了“CMAIN”,则在工程内已经包含了MAINC,双击文件,在编辑窗口打开后即可编辑,在软件的编辑窗口内输入程序。(5)如果已经编辑好了源文件,则选择PROJECTADDFILES就可以打开一个对话框,通过这里可以向项目中添加源文件。如果需要手动输入源文件,则选择FILENEWFILE或者是工具栏左侧的图标按钮将新建一个文本文件,可在其中输入自己的源程序,然后选择FILESAVE保存输入的文件即可。(6)配置工程属性。(7)编译并进行调试。(8)连接开发板并运行。实验总结本次实验继续熟悉了MSP430F149的定时器寄存器的原理,并通过编译程序,实现了LED跑马灯。不仅如此,在教员的讲解拓展下,可以进一步对程序的修改,实现跑马灯点亮顺序及快慢变化,对于中断知识的掌握进一步加深。程序源代码/程序功能实现流水灯以自左向右流动显示/INCLUDEINCLUDE“BOARDCONFIGH“UINTI0/主函数/VOIDMAINVOIDWDTCTLWDTPWWDTHOLD/关闭看门狗BOARDCONFIG0XF0CCTL0CCIE/使能CCR0中断CCR012000TACTLTASSEL_2ID_3MC_1/定时器A的时钟源选择SMCLK,增计数模式P2DIR0XFF/设置P2口方向为输出P2OUT0XFF_EINT/使能全局中断LPM0/CPU进入LPM0模式/函数名称TIMER_A功能定时器A的中断服务函数,通过改变中断周期控制流水灯流动速度参数无返回值无/PRAGMAVECTORTIMERA0_VECTOR_INTERRUPTVOIDTIMER_AVOIDSWITCHICASE0P2OUT0XFEBREAK/点亮LED灯D1CASE1P2OUT0XFCBREAK/点亮LED灯D2CASE2P2OUT0XFBBREAKCASE3P2OUT0XF7BREAKCASE4P2OUT0XEFBREAKCASE5P2OUT0XCFBREAKCASE6P2OUT0XBFBREAKCASE7P2OUT0X7FBREAKIIFI7I0嵌入式系统设计实验报告实验1基于MSP430平台的LCD显示实验姓名学号专业实验地点实验时间实验前准备学习IAR开发软件的使用方法;对IAR开发环境的配置操作进行练习熟悉;提前预习本实验的内容;明确本实验的目的和要求;初步设计程序,并在电脑上编译验证,发现错误并改正。实验内容和目的实验内容(1)采用并口模式控制液晶屏;(2)在液晶屏上显示字符串。实验目的(1)熟悉掌握MSP430F149的I/O控制;(2)熟悉LCD1602的操作时序。实验步骤(1)在FILE菜单里选择FILENEWWORKSPACE,建立一个空工作空间。(2)在PROJECT菜单中选择PROJECTCREATENEWPROJECT,在当前空间建立一个新工程。(3)在FILE菜单中选择FILESAVEWORKSPACE,提示选择路径并输入文件名,保存当前空间。(4)在工程管理窗内会看待新建的工程,若在第二步选择了“CMAIN”,则在工程内已经包含了MAINC,双击文件,在编辑窗口打开后即可编辑,在软件的编辑窗口内输入程序。(5)如果已经编辑好了源文件,则选择PROJECTADDFILES就可以打开一个对话框,通过这里可以向项目中添加源文件。如果需要手动输入源文件,则选择FILENEWFILE或者是工具栏左侧的图标按钮将新建一个文本文件,可在其中输入自己的源程序,然后选择FILESAVE保存输入的文件即可。(6)配置工程属性。(7)编译并进行调试。(8)连接开发板并运行。实验总结通过此次实验,我能够熟悉和掌握IAR开发环境的配置操作,基于前几次实验的操作,现在对于IAR开发环境的配置操作已经能够达到熟练掌握的水平,能够快速完成实验。程序源代码/程序功能动态显示文字测试说明观察液晶显示/INCLUDEINCLUDE“BOARDCONFIGH“INCLUDE“CRY1602H“UCHARS1“ZHOUQI“UCHARS2“2015/06/23“VOIDMAINVOIDUCHARIWDTCTLWDT_ADLY_250/间隔定时器,定时16MSBOARDCONFIG0XB8/关闭数码管、流水灯和电平转换LCDRESETDISPSTR4,0,S1DISPSTR4,1,S2/OCATEXY0,9/确定写入字符的显示位置LCDWRITECOMMAND0X07,1/整体显示左移FORI12I0ILCDWRITEDATA0X20/延时250MSIFG1WHILEIFG1IFG1WHILE1LCDWRITECOMMAND0X05,1/整体显示右移FORI24I0ILCDWRITEDATA0X20/延时250MSIFG1WHILEIFG1IFG1LCDWRITECOMMAND0X07,1/整体显示左移FORI24I0ILCDWRITEDATA0X20/延时250MSIFG1WHILEIFG1IFG1/嵌入式系统设计实验报告实验1基于MSP430平台的AD数据采集实验姓名学号专业实验地点实验时间实验前准备学习IAR开发软件的使用方法;对IAR开发环境的配置操作进行练习熟悉;提前预习本实验的内容;明确本实验的目的和要求;初步设计程序,并在电脑上编译验证,发现错误并改正。实验内容和目的实验内容(5)实现AD/DA转化;(6)实现数据从实验平台到PC机的相互转化传输。实验目的(6)实现模拟信号至数字信号的转化;(7)熟悉MSP430F149的ADC寄存器。实验步骤(1)在FILE菜单里选择FILENEWWORKSPACE,建立一个空工作空间。(2)在PROJECT菜单中选择PROJECTCREATENEWPROJECT,在当前空间建立一个新工程。(3)在FILE菜单中选择FILESAVEWORKSPACE,提示选择路径并输入文件名,保存当前空间。(4)在工程管理窗内会看待新建的工程,若在第二步选择了“CMAIN”,则在工程内已经包含了MAINC,双击文件,在编辑窗口打开后即可编辑,在软件的编辑窗口内输入程序。(5)如果已经编辑好了源文件,则选择PROJECTADDFILES就可以打开一个对话框,通过这里可以向项目中添加源文件。如果需要手动输入源文件,则选择FILENEWFILE或者是工具栏左侧的图标按钮将新建一个文本文件,可在其中输入自己的源程序,然后选择FILESAVE保存输入的文件即可。(6)配置工程属性。(7)编译并进行调试。(8)连接开发板并运行。实验总结通过模拟信号至数字信号转化的实验,我进一步了解并熟悉了MSP430F149的ADC寄存器的原理及工作方式,并通过自己的一系列操作实现了数据从实验平台再到PC机的相互转化传输,已经能对IAR开发环境熟练掌握,尤其是在教员的教导之下,养成了良好的操作规范与编程习惯,为之后的实验奠定了一定的基础。程序源代码/程序功能MCU的片内ADC对P60端口的电压进行转换将模拟电压值显示在1602液晶上。测试说明调节电位器R7的旋钮观察液晶显示数字变化。/INCLUDEINCLUDE“BOARDCONFIGH“INCLUDE“CRY1602H“DEFINENUM_OF_RESULTS32UCHARSHUZI“0123456789“UCHARTISHI“THEVOLTIS“STATICUINTRESULTSNUM_OF_RESULTS/保存ADC转换结果的数组/ISNOTUSEDFORANYTHINGVOIDTRANS_VALUINTHEX_VAL/主函数/VOIDMAINVOIDWDTCTLWDTPWWDTHOLD/关闭看门狗BOARDCONFIG0XB8/关闭数码管、流水灯、4245LCDRESET/复位1602液晶DISPNCHAR2,0,12,TISHI/显示提示信息DISP1CHAR11,1,V/显示电压单位P6SEL|0X01/使能ADC通道ADC12CTL0ADC12ONSHT0_8MSC/打开ADC,设置采样时间ADC12CTL1SHPCONSEQ_2/使用采样定时器ADC12IE0X01/使能ADC中断ADC12CTL0|ENC/使能转换ADC12CTL0|ADC12SC/开始转换_EINTLPM0/函数名称ADC12ISR功能ADC中断服务函数,在这里用多次平均的计算P60口的模拟电压数值参数无返回值无/PRAGMAVECTORADC_VECTOR_INTERRUPTVOIDADC12ISRVOIDSTATICUINTINDEX0RESULTSINDEXADC12MEM0/MOVERESULTSIFINDEXNUM_OF_RESULTSUCHARIUNSIGNEDLONGSUM0INDEX0FORI0I5/除以32TRANS_VALSUM/函数名称TRANS_VAL功能将16进制ADC转换数据变换成三位10进制真实的模拟电压数据,并在液晶上显示参数HEX_VAL16进制数据N变换时的分母等于2的N次方返回值无/VOIDTRANS_VALUINTHEX_VALUNSIGNEDLONGCALTMPUINTCURR_VOLTUCHART1,IUCHARPTR4CALTMPHEX_VALCALTMPCALTMP12/CURR_VOLTCALTMP/2NPTR0CURR_VOLT/100/HEXDEC变换T1CURR_VOLTPTR0100PTR2T1/10PTR3T1PTR210PTR110/SHUZI表中第10位对应符号“/在液晶上显示变换后的结果FORI0I0SIG_OVERFLOW0SIG_OVERFLOWSOFTWARE。确认后软件会重新启动。在欢迎界面中选择WORKBENCH,进入主界面。2选择FILENEWNIOSC/CAPPLICATION。在SELECTPROJECTTEMPLATE内选择第一项BLANKPROJECT,NAME使用MY_APPLICATION,SOPCBUILDERSYSTEMPTFFILE使用默认设置,即采用前面生成的SOPC系统,点击FINISH完成。3选择工程MY_APPLICATION,右键单击,选择PROPERTIES,在C/CBUILD选项卡中配置编译器参数,选择DALT_RELEASEOSGWALL。4配置MY_APPLICATION_SYSLIB编译器参数。与工程名MY_APPLICATION配置的参数一样。5SYSTEMLIBRARYPROPERTIES设置。右击工程MY_APPLICATION_SYSLIBPROPERTIES,选中SYSTEMLIBRARY选项卡,选中PROGRAMNEVEREXITS,REDUCEDEVICEDRIVERS和SMALLCLIBRARY以减小程序体积。其他保持默认即可。6右键点击工程MY_APPLICATION,选择NEWSOURCEFILE。在弹出的对话框中指定文件名为MAINC,填写代码并保存。7PROJECTBUILDALL,编译。8右击MY_APPLICATION,选择RUNASNIOSHARDWARE。此时实验板上的8个LED依次点亮和熄灭。实验总结本次实验初步学习了QUARTUS软件的开发流程和创建SOPC系统流程。本实验需要在前两次实验的基础上再用IDE来编程实现,对软件操作的要求更进一步。而自己对IDE编程并不是很熟悉,中间出了许多错误,编译程序时总是出错,每次都麻烦老师来看,非常失败,最后在老师的细心检查与教导之下完成了本次实验。程序源代码INCLUDE“SYSTEMH“INCLUDEINCLUDE“ALT_TYPESH“INCLUDE/INTERNALTIMEROVERFLOWINTERRUPTSTATICVOIDTIMER_OVERFLOWVOIDCONTEXT,ALT_U32IDIOWRTIMER_0_BASE,0,0IFALT_U8CONTEXTELSEALT_U8CONTEXTALT_U8CONTEXTSOFTWARE。确认后软件会重新启动。在欢迎界面中选择WORKBENCH,进入主界面。2选择FILENEWNIOSC/CAPPLICATION。在SELECTPROJECTTEMPLATE内选择第一项BLANKPROJECT,NAME使用MY_APPLICATION,SOPCBUILDERSYSTEMPTFFILE使用默认设置,即采用前面生成的SOPC系统,点击FINISH完成。3选择工程MY_APPLICATION,右键单击,选择PROPERTIES,在C/CBUILD选项卡中配置编译器参数,选择DALT_RELEASEOSGWALL。4配置MY_APPLICATION_SYSLIB编译器参数。与工程名MY_APPLICATION配置的参数一样。5SYSTEMLIBRARYPROPERTIES设置。右击工程MY_APPLICATION_SYS

温馨提示

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

评论

0/150

提交评论