- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理键盘控制与显示实验报告.doc
实验报告
课程名称:________微机原理(实验)___________指导老师:____徐习东_______成绩:__________________
实验名称:______键盘控制与显示_______实验类型:_____软件实验______同组学生姓名:__________
一、实验目的和要求(必填) 二、实验内容和原理(必填)
三、主要仪器设备(必填) 四、操作方法和实验步骤
五、实验数据记录和处理 六、实验结果与分析(必填)
七、讨论、心得
【实验目的】
通过实验掌握TMS320F2812通用输入/输出管脚直接控制外围设备的方法
了解发光二极管的控制编程方法。
了解SPI的使用。
了解如何使用GpioA口进行数据的锁存
通过实验掌握TMS320F2812的扩展端口接收外围设备信息的方法
了解键盘的使用原理及编程方法
【实验内容】
按键显示程序,对按键记录次数,以二进制显示在16个LED上。
定时器编程,并用按键控制各位时分秒,使其能完成加减操作
【实验仪器】
TMS320F2812数字信号处理器与学生用集成板。
【实验步骤】
撰写代码
调试代码
实现功能
【实验代码】
一、定时器
宏定义和全局变量定义
分析:这段代码是初始宏定义,用于定义按键对应的编码与地址,然后同时定义了全局变量,包括时、分、秒,按键编码,LED编码和控制位。
共阳字形码
分析:由于这次实验要用到数码管,所以我们要定义一个数码管共阳端字形码,使每一个代码对应一种显示状态。
SPI初始化子程序
分析:这一段是本次实验的重点,就是SPI初始化。
1)SPICCR:用于控制SPI的状态,上下降沿发送,还有几位的数据。其中第7位,即SPICCR.6是控制SPI在上下沿发送,1代表下降沿,2代表上升沿;第8位,即SPICCR.7是控制复位的,0代表为复位状态;低4位控制数据长度,长度等于n+1。
2)SPICTL:SPICTL.3用来设定时钟是否延迟半个周期,此程序中此位为0,即不延迟半个周期,其中SPICTL.2是控制主从模式的,然后1为主设备,0为从设备,SPICTL.1是设置Talk功能,1为使能。
3)SPIBRR:配置波特率,即控制串行外设发送和接受的速度。
然后,将GPIO的F口低四位设置为专门外设引脚,即为SPI引脚。设置MUX控制是否为专门外设。
GPIO初始化
分析:此部分为为GPIO初始化,即设置GPIO的功能,此部分里A11设置为通用I/O,在实际电路中是为了连接锁存口。另外GPIOE与B的设置见注释,分别作为片选和红灯的控制。
键扫描程序
分析:键扫描程序为int类型,所以必须返回整形数据,此程序中返回1或者0表示是否检测到键被按下。首先通过E口控制选通的是低8位还是高8为。然后后面的If 和for语句为延时消抖,这是检测程序中的关键,就是检测B口是否有低电平出现,如果有说明有键被按下,但是我们无法判断,这个键是否被误按下,所以要进行一个空循环,如果再检测到,说明这个键按下不是因为按键自身的抖动。另外,这段代码里还有一个细节,就是D口的出现,这句话只是为了进行一个空操作,进行检测按键是否松开。
控制调时子程序
分析:KEYFUNCTION程序是为了做一个控制时钟的功能,按下一个键对应一个功能选项。由于选择项比较多,所以用switch比较好。然后CTRL代表选定的位,是时,还是分,还是秒。然后通过三位的数值到LEDCODE中查表获得数码管显示的值。其中上调或者下降哪一位要根据CTRL的值判断。LIGHT代表数码管的代号。
显示模块
分析:显示程序中就要用到SPI的串行功能了,需要先对数据进行锁存,然后是上升沿有效,即上升沿时将数据送到数码管的引脚上。如何发送数据即通过SPI,先将数据写入SPITXBUF,即发送缓存器中,然后发送缓存器会将数据传送过去。SPISTS.bit.INT_FLAG代表中断标志位,如果数据从SPIDAT移出后,这个中断标志位会置1。此时while语句的功能就是说如果数据没有被发送出去,则一直会进行空操作,直到数据被发送出去为止。
中断
分析:此时的中断是进行定时器的自增过程,即实现时钟功能。
二、键盘显示
① 定义编码
分析:此向量表与第一个程序相同,即作为索引用,编入数码管可显示内容的编码。
② main函数
分析:首先初始化程序,然后就不断得执行一个while循环,就是检测有没有按键被按下,如果被按下就继续执行显示程序。然后LEDOUT函数与前几次程序一样,作为点灯模块,作为计数的显示。
三、总结编程要点
① 可删语句
SpiaRegs.SPIRXBUF = SpiaRegs.SPIRXBUF;
2) if((GpioDataRegs.GPBDAT.all|0x00FF)
您可能关注的文档
- 边沟、排水沟施工合同(范本).doc
- 以内进位加减法口算训练.docx
- 尤里奇:hr转型新层次:由外而内的hr.docx
- 学校教育和家庭教育辩论赛.doc
- 东方花园小区施工组织设计毕业设计(可编辑).doc
- 微机械装置的液体输送性能实验与分析.doc
- 中班甜品屋角色教案.doc
- 幼儿园孩子的家长感言.doc
- 台t岸桥技术规格书.doc
- 聚合物基复合材料层压板充填孔拉伸和压缩标准试验方法(D ).doc
- 2026-2031年中国自来水行业市场发展趋势与前景展望战略研究报告.docx
- 2025年预制菜企业冷链物流技术评估报告.docx
- 《2025年高性能再生塑料改性在汽车零部件制造应用创新》.docx
- 2025年基础护理烫伤的题目及答案.doc
- 2025年智能巡检机器人在铁路货运场站自动化巡检中的应用报告.docx
- 新能源汽车热管理技术创新与2025年新能源汽车政策环境分析报告.docx
- 2025年跨境支付数字货币场景竞争报告.docx
- 2025年绿色包装冷链物流成本优化报告.docx
- 2025年智能巡检机器人在海上风电运维机器人续航能力报告.docx
- 2025年AI创业陪跑服务行业报告.docx
原创力文档


文档评论(0)