- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于linux与Qt的嵌入式超市数据库管理
基于linux和Qt的嵌入式超市数据库管理
设计目的
该课程设计是在完成理论课程学习之后安排的综合实践训练,在学生掌握通过一周的综合,提高学生对所学知识的应用能力
控制系统分五个功能模块,分别是转速设置、转向设置、固定步数转动、连续转动、退出系统,在前四个功能块中都设置了ESC键来取消或暂停执行当前操作。程序中同时提供五个操作界面,一个主菜单和四个子菜单界面,进行可视控制。
(1)转速设置
根据赋给计数器的计数初值,我们可以计算出步进电机各相脉宽信号的频率和电机转速,也可以反过来根据对电机转速要求,计算并调整计算初值。
这里采用的是8253的0号计数器和方波产生方式,输入时钟为f=46875hz,设计数初值为n,要求转速为0.25转/秒,对四相步进电机而言即为5步/秒,则有:
f / n = 5
n=f/5=46875/5=9375
反过来,当计数器初值确定时,决定了电机的转速,如计数初值为0时,有电机转速为1步每秒(本设计中最慢速度);当计数初值为125时,电机转速为375步每秒(本设计中最快速度)。具体设置初值及转速见表2。
表2
步速 转速 按键 计数初值 1 0.05 F1 46875 3 0.15 F2 15625 5 0.25 F3 9375 15 0.75 F4 3125 25 1.25 F5 1875 75 3.75 F6 625 125 6.25 F7 375 375 18.75 F8 125
(2)转向设置
在内存单元中设置一方向标志FLAG1,假设FLAG1为0时为顺时针转向,则当设置FLAG1不为0时即可使电机转逆时针转动。判断操作在中断子程序中进行。
(3)连续转动设置
在此功能模块中,通过让8255的A0口输出高电平到8253的GATE0使其0号计数器继续工作(平常时A0口为低电平使8253的0号计数器暂停计数),并开放中断进入循环等待中断状态,在等待状态中若有键盘的‘ESC’键按下,则认为暂停要求而关闭中断和暂停8253计数回到主菜单。需要继续原转向原速度运行,再选择此功能模块即可。
(4)固定步数转动设置
通过键盘输入0到999的十进制值来设定转动步数。判断已转步数即中断次数是这样实现的,设置一内存单元FLAG0,中断时在中断子程序中求反,而在循环等待中断的程序中判断其有无变化,无变化继续循环,有变化则使计数寄存器CX减1后继续循环,当CX=0时退出等待中断状态,并关中断和暂停8253计数。在这个等待程序中也判断键盘有无ESC键按下,若有则认为暂停要求而退出。
(6)中断子程序
在中断子程序中,将值的内存单元循环左移或右移一位,通过8255的下C口输出低四位,控制步进电机的相序变化,从而使电机连续转动。左移或右移将使电机顺时针或逆时针转动,它由标志FLAG1来决定。
(7)菜单界面设置
利用DOS下的BIOS功能调用,设计出简单而易于操作的界面,详细设计特点请参考程序清单。
程序流程图
(1)主程序框图如图2
(2)中断服务子程序框图如图3
(3)速度设置自程序和方向设置单元程序的流程比较简单,如图4,5。
(4)固定步数转动单元子程序框图如图6
(5)连续转动单元子程序框图如图7
(6)8253和8255初始化子程序、菜单显示子程序请参考程序清单。
五、心得体会
《微机原理与应用》课程是一门应用性很强的课程,其中包括软硬件的结合,接口技术,中断的处理。由于平时对硬件的接触较少所以学习起来多少有些困难。但课程中融入了实验,并且还有课程设计。对于理论知识的理解就更深刻了。
课设的内容是步进电机的控制设计,其中包括转速设置、转向设置、固定步数转动、连续转动、退出系统。中断子程序,菜单界面设置的设计。程序完全是自己设计的,这与平时的实验很不同,对编程的要求很高。而且平时的实验都是给出程序的。这个可给我出了个难题,不过在同伴的努力下我们还是按时完成了任务。最难的就是硬件的调试,程序明明是对的就是执行的时候有些问题,在设置步数时总是不稳定。查了好久都没有找到问题。最后没有办法我们就提交了,可是老师来看实验结果时却执行的很完美。也许真的很走运吧。
通过本次课设学到很多课堂上学不到的调试知识,对Debug有了一定的了解。通过实践也加深了对理论知识的理解。很感谢学校给我们提供了这么好的学习机会。
六、源程序
DATA SEGMENT
IRQ EQU 0DH
IMR1 EQU 0DFH
IMR2 EQU 20H
PA55 EQU 280H
PC55 EQU 282H
CTL55 EQU
您可能关注的文档
- 团员的义务与权利 2课件.ppt
- 因此, 第1章时域离散信号与时域离散系统.ppt
- 团队建设方案及管理流程与制度.doc
- 四级公路标准设计与施工放样毕业设计.doc
- 四年级上册音乐课件-大雨与小雨-湘教版.ppt
- 团体心理辅导第七章 团体的形成.ppt
- 园林绿化工程与场地铺装与园林建筑小品工程施工组织设计.doc
- 园区南北主干道工程施工组织设计.doc
- 固体的压力与压强.doc
- 围术期间呼吸与循.ppt
- 基于hibenrnate与struts的选课排课系统.pptx
- 基于linux与S3C2410a网络视频监控器设计.doc
- 基于PHP与MYSQL的网站设计与实现.docx
- 基于PDIUSBD12与STC89C52手指键盘的设计 毕业设计.doc
- 基于MIPS的31条指令集与ISE软件的单周期CPU设计与实现.docx
- 基于PLC与VB的智能监控系统的设计与应用---行车式排泥机自动化系统的实现.ppt
- 基于PLC与VB的信息化监控系统的设计与应用----闸北水厂沉淀池自动排泥监控系统.doc
- 基于TL431与LM324的电动车充电器设计.doc
- 基于TEA5767与单片机的数字FM收音机设计.doc
- 基于struts与hibernate的电机销售管理系统.ppt
原创力文档


文档评论(0)