摘要
单片机巧发平台W义单片机的化发语言是单片化和嵌入式系统的学习和开化了具。由于不同类型单片机的硬件结构以及外陋设备不同,需要使用不同的开发平台对单片机进行学习和研发。随着单片机系统的日益庞大,其指令体系越来越复杂,增加了学习巧使用单片机的难度。计对传统的义本语言难以很好地表达复杂程序结构的问题,本文设计了一种通用的单片机可视化编程平台,针对不同类型的单片机,使用阐形化语亩巧替文本语昔进行程序开发。采用本平台,大大降低了对用户的要求,提窝了单片机编程效率。
本文的工作主要分为单片机数据库的建立和圈元的定义两个部分。(1)建立了单片祖程序数据库。根掘不同类型的单片机顿件和外围设备,以AT89S52和ATMEG16单片机为例,建立了数据表。(2)定义了单片机硬件、控制及子程序的图元符号,实现了对图元的基本操作,如围元的建立、参数设置、连接、编辑。(3)定义了平台的约束条件确保圆形界巧设计的正确性,将图形化程序翻译为C语言程序并文件方式保存。
实例表明,全面的数据库结构设计能够方便地进行单片机类型的增补;使用图形模块进斤单片机程序开发,提高了开发效率,降低了巧发难度义对使用者的口槛要求;但本平台在图元种类巧单片机硬件的映射上还有一定欠缺,在后续的开发过程中有待维续完善。
关键词:可视化编程,图元,数据库,通用性
ABSTRACT
The single chip development platforms and languages are tools to studyand develop single chip and embedding systems. Because of every kind of single chip has ths own hardwath structure and peripheral equipment、so we need to use.
different development platform to study and develop single chip. As single chip system become bigger and bigger,l;he program structure is becoming more and more complex,so studing and using single chip are becoming more and more difficult. This article is designing a general graphical single chip programming platform aimed at developing different kind of single chip by using graphical Ianguage instead of textual language.
It can decrease user,s demand greatly and increase the efficiency of developing single chip program. The major works of this article are the foundation of single chip data bases and the definition of the graphic unit
(1) Establishing the single chip program data base. According different single chip,s hardware and peripheral equipment, we take AT89S52 and ATMEG 16 single chip for example to establish the data table.
(2)Definding the single chip hardware, control and subprogram pixel, realizing the fundamental operation of the pixel, for example the establish of pixel, the setup of parameters, the connection and edition of pixel.
(3)Definding the constraint rules of this platform make sure the graphic design is correct. Translating the graphic program into C program and save as file form.
The example shows that,the comprehensive of the data base design could add single chip in convenience. Using pixel to develop the single chip program would increase the efficiency of the development and decthase the difficulty of the development and userthreshold. But there are some shortcoming in mapping between pixel and single chip hardware, in the follow-up work, we should solve this problem.
Keywords: Graphical Programming,Graphical Model, Data Base,Universality
无论是文本语言还是图形化语言都会有两大不同的含义,第一类含义为定义方法,另一类含义为表达方法。定义方法准确而又完整的定义程序的数据,表达方法则将数据通过平台界面湿示给用户。定义方法和表达方法在计算机编程中普遍存在。
传统的文本编程语言在定义和表达方法上均使用文本代码。在定义方法中,代码文件包含了程序逻辑的所有信息,也是连接编辑器,编译器,和调试器的核也数据格式。但是,文本代码并不能很好的胜任这种定义。随着时间的发展,软件系统的规模在不断扩大,致使其更加难进行开发和维护。为了降低程序的复杂性,増加程序的可复用性,程序的设计开始趋向于结梅化。在程序顶层,基于模块化的技术将软件系统分割成模块元素集合。在中间层,面向对象的编程观念将程序逻辑分成了各种类及类的成员。在底层,程序行为被结构化的控制流结构所定义。
文本编程语言实际上是一种一维的字符流,并不是能够承载高度封装的信息的自然载体。文本语言通过使用越来越复杂的语义和语法来适应不断增长略程序结构。然而,这样就给编程者増加不必要的负担。编程人员需要将结构化的编程思想转化为整齐的文本代码,使用工具将文本代码解析回语义结构中。这也给现有的文本编程语言增加了一种新的语法校验结构。
在表达方法上,文本代码表示结构的缺点反应在两方面;(1)编程者如何阅读代码。(2)编程者如何编辑代码。阀读代码是一个解析程序思媳,重构程序结构的过程,通过匹配分隔符和语法定义规则实现。为了提高程序结构的可视性,文本表示使用数量有限的方法为编程者提供可视化提示信息。通常所使用到的可视化协助工具包括文字压痕,语法高亮显示。一些更高级的文本编辑器会在化码视图当中加入更多可视元素,使其更像一个文本图形化混合表达。
使用相同的代码来对程序进行定义和表达会引起一系列的问题。(1)有时,定义和表达在程序格式上的需求会不同或者甚至相反。定义方法着蓝于程序的止确性,机器友好性,更加易于解析。通常会转换出更多精确的分隔符和更兀长的语法结构。而对于表达方法I代码需要简洁,直观,更贴近真实世界,便于输入和修改。(2)由于定义义法必须是完整的,包含所有的信息,所这种模式阻碍了部分表达。在复杂的大型系统当中,信息被有选择性的呈现在用户面前,用户就可专注于与程序运行相关的信息。现代程序无论从规模还是复杂性上都不断的在增长,同时包含了许多类型的信息来定义程序还辑。此外,各种各样的辅助信息植入到赶序当中来增加程序的可读性,文件归档,调试,仿真等等。这些信息通常用特殊的语法嵌入到代码当中。
例如在C++中,类和类成员的文档信息用一种特殊的格式放置在前面的声明区域中。在使用一个代码编辑器时,所有类型的信息同时呈现在用户面前。甚至当一个用户正在设计一个算法相关的程序段,他也只能通过调试器来观察这个程序段是否被执行过。不相关的信息会干扰关键信息的显示,转移用户注意力。所缺乏不相关信息隐藏机制口 是文本编程语言的另一大缺点。
与文本化编程语言相反,图形化编程语言能够很自然的将定义方法和表达方法分开。图形这个术语通常指程序的表达部分。而由于送两种方法的分开,可视化编程系统能够很自由的使用定义模式,送种定义模式具有更好的机器友好性。大多数系统使用二进制数据结构来存储程序逻辑。高模块化的文本格式如XML也能使用。与文本语言相比,图形化语言提供了更丰富的可视化词汇表,并且能够更加高效的为编程者呈现这个程序结构。图形化语言词汇包括各种各样的形状,颜色,阁标,边缘,还有空间上的组合关系,如包含,重叠。这些都能用来更直观的描述程序实体和关系。
使用图形化语言来表述一个程序通常采用面向对象的方式。所有的编辑行为,例如选择,插入,删除,复制和粘贴都是针对与图形符号对象相应的语义对象。这样消除了对文本语言语法的使用同时也增加了送些对象的结构完整性。
但是,文本语言仍然是被知名开发平台所使用最广泛的编程语言,它的优势是不可或缺的。文本化符号与等价的图形符号相比,更加的紧凑,特别是在描述一些低级的控制结构或者算法。信息密集度(information density)造检验在…定的屛幕空间内所表达信息的量。可认定,文本符号比图形符号拥有更高的信息密集度,因为文本代码是由巧似大小的宇巧排成的一个序列,而图表是由不规则的形状巧大小的国形元素构成,通常需耍更大的空问。
图形化编程平台操作实例:
平台进入界面
AT89S52图元选择区
AT89S52单片机图形化程序
定时器参数设置
分支判断参数设置
AT89S52单片机I/O口参数设置
ATMEGA16单片机I/O口参数设置
目录
摘要
ABSTRACT
1 绪论
1.1 研究意义
1.1.1 文本化编程语吉奋在的缺陷
1.1.2 图形化编程语言的优势
1.2 研究目的
1.3 研究背景
1.3.1 可视化编程与程序可视
1.3.2 可视语言与可视化编程环境
1.3.3 国内外研究现状
1.4 论文主要内容
1.5 本章小结
2 单片化硬件结构与平台总体界面
2.1 单片机简介
2.1.1 AT89S52
2.1.2 ATMEGAI6
2.1.3 ARM
2.2 单片机硬件结构
2.2.1 CPU 架构
2.2.2 定时器结构(51与AVR)
2.2.3 I/O口结构(51与AVR)
2.3 单片机程序存储结构及中断
2.4 本章小节
3 图元的定义la及图形化编程
3.1 图形化编程语言理论基础
3.2 图元的创建与组合
3.2.1 图元的分类
3.2.2 图元的建立
3.2.3 图元参数修改
3.2.4 图元的组合以及链接
3.3 图形化称巧的编辑
3.3.1 图元链表的删除
3.3.2 图元链表的插入
3.3.3 图元程序文件的保存和打升
3.4 相关约束条件
3.5 开发平台总体界面
3.6 本章小结
4 图形化程序C代码的生成
4.1 数据库的建立与连接
4.1.1 VC数据库开发概述
4.1.2 单片机数据库的建立
4.1.3 利用ADO接口连接单片化数据库
4.1.4 ADO接口在单片机数据库的应用
4.2 参数的传递
4.2.1 晶振参数的传递
4.2.2 函数参数的传逆
4.3 图形程序C代码的生成
4.4 本章小结
5 平台操作实例
5.1 单片机图形化编程
5.2 图形化赖序的修改
5.3 本章小结
6 总结展望
6.1 总结
6.2 展望
参考文献
附录攻读学位期间的主要学术成果
致谢
(如您需要查看本篇毕业设计全文,请您联系客服索取)