图3-2 主程序流程图
(二)控制程序流程图
要想在液晶模块上显示一个字符或汉字,首先必须得对控制字进行写指令代码、写显示数据和读显示数据3项操作。完成这3项工作都必须保证控制器处于不忙的情况下,这就必须有一个判忙子程序,其流程图如下:
图3-3 判忙程序流程图
(三)显示程序流程图
根据上面采用的方法设置汉字的初始值(lr、X、Y),当显示完第一列的8字节以后,跳到第二列又从上往下显示。由于一个汉字每一列有16字节,则当一页的16列显示完,只相当于显示的汉字的上半部分,则再次跳到下一页的初始位,进行汉字下半部分的显示,值到16列显示完成,才表示一个汉字全部显示结束。
通过上面的介绍,一个汉字的显示流程图编写如下:图3-4 汉字显示流程图
按上面的流程图,就可以进行显示程序的设计了。具体程序详见附录的程序清单。
第四章 系统调试
第一节 系统调试软件介绍
完成对系统的硬、软件设计后,就可以对系统进行调试了。本次设计本人采用了ICCAVR编译器作为系统的开发工具,进行程序的烧录和仿真。
(一) ICC AVR是ImageCraft公司针对AVR单片机而开发的一个C语言编译,它具有以下几个特点:
1.支持不带SRAM的单片机器件。
2.带嵌入式的应用程序编译器。
3.带全局优化器。
4.支持在线编程(STK200/300)。
5.ICC AVR是一个运行于Windows 9X/NT的集成开发环境(ODE),它包括单片机软件开发所需要的编辑器、工程管理器和C编译器。
6.ICC AVR采用了工程的组织形式。程序的所有源文件全部以工程的一个要素保存在工程中,并且程序的编辑和编译也都在这个环境中进行。工程管理器最后还能生成HEX格式的烧录文件和COFF格式的仿真文件。
(二)ICC AVR支持的数据类型
数据类型就是数据的不同表示形式,它们按照被描叙数据的性质及其所占存储空间的大小来划分。ICC AVR的C编译器可以支持4种数据类型,它们分别是:基本数据类型、构造类型、指针类型和空类型。
1.基本数据类型
基本数据类型包括字符型(Unsign Char和Signed Char)、整型(Unsigned Int和SignedInt)、长整型(Unsigned Long和Signed long)、浮点型(Float)和双精度型(Double〕。基本数据类型不只有再分性,它不可以再分解为其他的数据类型。
2.构造数据类型
构造数据类塑包括数组型(Array)、结构体类型(Smuct)、公用体类型(Union)和枚举类刑(Enum)。构造数据类型由若干个基本数据类型采用构造的方法成,因此,每个构造数据类烈都可以分解成若干个基本数招类型。
3.指针类型
指针是一种用来专门存放所指对象地址的变量,它指向计算机内的一个内存单元。指针的处理具有较高的灵活性,使用它可以有效地表示复杂的数据结构,有效地使用内存空间,方便地处理数组,因此,它是C语言中一种非常重要的数据类型。
4.空类型
空类型也就是Void类型。在调用函数时,函数通常都会返同一个函数值。这个返回的函数值的数据类型可以在函数定义和函数说明中由用户指定。但有一些函数,它只进行一定的处理,在调用后并不需要返回某个函数值,那么这种函数可以定义为“空类型”。
当一个计算的几个运算分量的数据类型不相同时.要根据一些规则把它们转换成某个共同的数据类型。这种转换可自动进行,也可以人工强制转换。通常来说,编译器会把“窄”的数据类型自动转换成“宽”数据类型,以保证计算信息不被丢失。
点击菜单中“Tools”栏中的“Application Builder”命令,打开应用构筑向导对话框,其框图如4-1所示。框图主要有以下页面:
⑴CPU选项:可对芯片的种类、频率、是否使用看门狗以及是否使用INT0和INT1等进行选择。在这里选择M16芯片,7.3728频率,使用看门狗。
⑵PORTS选项:可以设计I/O的属性,其关系如下:
表4-1 Ports选项中符号与端口实际设定
|
Direction:“ Value: “ |
Direction:“ Value: “ |
Direction:“ Value: “ |
Direction:“ Value: “ |
PORTA |
0xff |
0x00 |
0xff |
0x00 |
DDRA |
0x00 |
0x00 |
0xff |
0xff |
图4-1 应用构筑向导框
Ports的设定在具体调试过程中设定。
Memory选项:可以设定是否扩展SRAM,是否插入等待周期等内存信息。这里选中“Enable external memory”和“Wait states”的复选框。
图4-2 应用构筑向导框
Timer0选项:可以设定是否使用Timer0,是否打开Timer0溢出中断以及设定Timer0的周期。在这里选中“Use timer
<< 上一页 [11] [12] [13] [14] 下一页