实验七屏幕字符显示程序

合集下载

EDA 实验LCD菜单字符显示

EDA 实验LCD菜单字符显示

EDA 实验:LCD菜单字符显示班级:姓名:学号:一、实验目的为了使学生有效加深数字系统的分析和设计方法,熟练用EDA工具完成对数字系统的设计及仿真过程;安排本“设计性实验”。

自己拟定实用电路、实验步骤,学会系统设计、调试、仿真及故障诊断、排除方法。

二、实验题目:流动字符显示电路设计要求:(1)利用实验箱中的LCD2004字符型液晶,与MC8051 IP软核,编写两页以上LCD菜单。

(2) 第一行显示“0-9 :;< = > ?”第二行显示“A—P”HS2004液晶显示模块可以和单片机AT89C51直接接口,电路如图1所示AT89C51 HS2004液晶块4液晶模三、实验设备及器材:1、GH48EDA/SOPC+PK2实验系统四、实验程序RS EQU P0.0RW EQU P0.1E EQU P0.2DAT EQU 30H ;命令单元DAT1 EQU 31H ;数据单元AJMP STARTORG 0030HSTART:MOV DAT,#01H ; 清屏ACALL ENABLEMOV DAT,#38H ; 8位2行5x7点阵ACALL ENABLEMOV DAT,#0FH ; 显示器开、光标开、闪烁开ACALL ENABLEMOV DAT,#06H ; 文字不动,光标自动右移ACALL ENABLEMOV R3,#2MOV DAT,#080H ; 写入显示起始地址(第一行第一个位置)ACALL ENABLEMOV DAT1,#30H ;数字0的ASCII码ACALL DSP0MOV DAT,#0C0H ; 写入显示起始地址(第二行第一个位置)ACALL ENABLEMOV DAT1,#61H ;字母a的ASCII码ACALL DSP0SJMP $DSP0: MOV R2,#16DSP1: ACALL RDYMOV P2,DAT1SETB RSCLR RWCLR ESETB EINC DAT1DJNZ R2,DSP1RETENABLE: ACALL RDY; 写入控制命令的子程序MOV P2,#0FFHCLR RSCLR RWMOV P1,DATCLR ESETB ERETRDY: MOV P2,#0FFH ; 判断液晶显示器是否忙的子程序CLR RSSETB RWCLR ESETB EJB P2.7,RDY ; 如果P1.7为高电平表示忙就循环等待RETEND。

字符型液晶显示实验

字符型液晶显示实验

实验十二字符型液晶显示实验(1602C)一、实验目的与要求了解字符型液晶模块的控制方法;了解它与单片机的接口逻辑。

二、实验设备STAR系列实验仪一套、PC机一台。

三、实验内容1、1602C液晶显示器(1) 字符型液晶显示器,可以显示二行,每行最多16个字符(2) 采用8位数据总线并行输入输出和3条控制线。

(3) 指令简单,7种指令2、实验过程在1602C液晶上,第一行显示“STAR ES598PCIS”,第二行滚动显示“Shanghai Xingyan Electronics Co.,LTD.”。

四、实验原理图五、实验步骤1、主机连线说明:2、运行程序,验证显示结果。

六、流程图1主程序流程图①子程序延时15ms ②子程序延时5ms③子程序DL50ms ④子程序 DelayTime_Move⑤子程序:DL05S ⑥子程序:WrconNoBusy⑦子程序:写指令子程序:WR_Con⑧子程序:写数据子程序WR_Data⑨子程序:Clear_LCD 10子程序:Close_Cursor关光标子程序11:清行A:哪一行Clear_Line子程序12:设置光标A--光标位置子程序13:Set_DdramCursor设置光标A--光标位置A=00H~13H,光标在第一行;A=40H~53H,光标在第二行A=14H~27H,光标在第三行;A=54H~67H,光标在第四行Set_CgramCursor七、实验现象在1602C液晶上,第一行显示“STAR ES598PCIS”,第二行滚动显示“Shanghai Xingyan Electronics Co.,LTD.”。

汇编实验-屏幕窗口程序

汇编实验-屏幕窗口程序
汇编实验-屏幕窗口程序
实验五屏幕窗口程序
一、实验的目的与要求
(一)实验目的:掌握显示器I。程序设计的方法,掌握宏的相关概念,以及运用方法。
(二)实验要求:在屏幕上开出三个窗口,它们的行列坐标如下页图所示,光标首先定位在右窗口最下面一行 的行首(15,50),如果从键盘输入字符,则显示在右窗口,同时也显示在下窗口的最下面一行。若需要将字符显示 于左窗口,则先按下左键,接着再从键盘输入字符,字符就会从左窗口的最下行开始显示,同时下窗口也显示左窗 口的内容。当一行字符显示满后,窗口自动向上卷动一行,输入字符继续显示于最低一行,窗口最高一行向上卷动 后消失。编写屏幕窗口程序时,要求将一些功能程序段定义成宏指令,如向上卷动、清屏、
(18,15)
(22,65)
接受字符并判断、在屏幕上显示字符、光标定位。
二、实验正文
实验分析:实验思路比较简单,主要是运用BloS调用,这些查表可得,实验要求要用宏来定义一些基本功能, 宏调用比较简单,把一些基本功能编写成宏,能高效率的执行程序,但是宏也存在着一些缺点,在宏调用时,要宏展 开,这样会占用一定的空间,所以宏是一种以空间换时间的策略,像一些复杂的操作不宜编写成宏。BIoSI。号调用 提供了大量的屏幕、光标显示格式,要注意参数的意义,以便正确的显示结果。
三、流程图如下:
初始化卷行属性 scroll 页号 行、列 附录:程序源代码如下: ・**************************************************************** datassegmentcurydb15curxdb50 在当前பைடு நூலகம்口和下窗口显示 displaymacro ;在当前的窗口打印字符 ;在下窗口输出

LED电子屏字符显示器程序

LED电子屏字符显示器程序
AJMP START1 ;跳回START1循环
;
;键扫描子程序
KEYWORK: MOV P1,#0FFH ;置输入状态
JNB P1.0,KEY1 ;P1.0为0(键按下)转KEY1
MOV 31H,#08H ;换帧跳转步距为8
LJMP DISP1 ;转显示子程序DISP1
; 上移显示功能程序
FUN1: MOV 30H,#0AH ;1帧显示时间控制(约80毫秒)
RETI ;中断返回(不开中断)
ORG 0023H ;串行口中断入口地址
RETI ;中断返回(不开中断)
ORG 002BH ;定时器T2中断入口地址
RETI ;中断返回(不开中断)
MOV R7,#08H ;一次扫描8行
DISLOOP: MOV A,@R0 ;取显示数据
MOV P0,A ;放入P0口
MOV P2,R6 ;扫描输出(显示某一行)
CLR 01H ;
CLR 00H ;
RET
;
;逐字显示功能程序
FUN0: MOV 30H,#80H ;1帧显示时间控制(约1秒)
JB 00H,FUN0 ;20H.0位为1,执行FUN0
JB 01H,FUN1 ;20H.1位为1,执行FUN1
JB 02H,FUN2 ;20H.2位为1,执行FUN2
MOV B,A ;
AJMP LOOP ;转LOOP进行次帧扫描
;
;显示子程序,字符数据从P0口输出,扫描控制字从P2口输出,显示1帧约需8MS
DISPLAY: MOV A,#0FFH ;
START: MOV 20H,#00H ;20H内存单元清0

字符显示实验报告

字符显示实验报告

一、实验目的1. 熟悉计算机字符显示的基本原理。

2. 掌握字符显示编程的基本方法。

3. 了解字符显示在计算机图形界面设计中的应用。

二、实验原理计算机字符显示是计算机输出设备的基本功能之一。

它通过将字符编码转换为字符图形,并在屏幕上显示出来,实现信息的输出。

字符显示主要包括以下三个步骤:1. 字符编码:将字符转换为计算机可识别的编码,如ASCII码、GB2312等。

2. 字模转换:将字符编码转换为字符图形,即字模。

3. 显示输出:将字符图形输出到屏幕上。

三、实验内容1. 实验环境:Windows操作系统、C++编程环境。

2. 实验步骤:(1)创建一个新的C++项目。

(2)编写字符显示程序,实现以下功能:① 输入字符编码。

② 将字符编码转换为字符图形。

③ 在屏幕上显示字符图形。

3. 实验代码:```cpp#include <iostream>#include <windows.h>using namespace std;// 定义字模数组,存储字符图形unsigned char font[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 空格 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, // 字母A // ... 其他字符的字模数据};// 字符显示函数void DisplayChar(unsigned char ch) {int width = 8; // 字模宽度int height = 16; // 字模高度int i, j;// 创建位图BITMAP bmp;bmp.bmWidth = width;bmp.bmHeight = height;bmp.bmWidthBytes = width;bmp.bmBits = new BYTE[bmp.bmWidthBytes bmp.bmHeight];// 初始化位图for (i = 0; i < bmp.bmHeight; i++) {for (j = 0; j < bmp.bmWidthBytes; j++) {bmp.bmBits[i bmp.bmWidthBytes + j] = 0;}}// 绘制字符图形for (i = 0; i < height; i++) {for (j = 0; j < width; j++) {if (font[(ch - 32) height + i] & (0x80 >> j)) {bmp.bmBits[i bmp.bmWidthBytes + j] = 0xFF;}}}// 创建设备上下文HDC hdc = GetDC(NULL);HDC memDC = CreateCompatibleDC(hdc);// 创建位图句柄HBITMAP hBitmap = CreateCompatibleBitmap(hdc, width, height); SelectObject(memDC, hBitmap);// 绘制位图BitBlt(memDC, 0, 0, width, height, hdc, 0, 0, SRCCOPY);// 清理资源DeleteObject(hBitmap);DeleteDC(memDC);ReleaseDC(NULL, hdc);// 输出字符cout << ch << endl;}int main() {unsigned char ch;cout << "请输入一个字符:";cin >> ch;DisplayChar(ch);return 0;}```4. 运行程序,输入一个字符,观察屏幕上是否显示对应的字符图形。

使用opengl程序在屏幕输出自己设定的字符

使用opengl程序在屏幕输出自己设定的字符

GIS专业实验报告(计算机图形学)实验7 使用opengl程序在屏幕输出自己设定的字符。

使用opengl程序在屏幕输出自己设定的字符。

二.理论基础1.ASCII:ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是基于拉丁字母的一套电脑编码系统。

它主要用于显示现代英语和其他西欧语言。

它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。

2.GB2312:GB2312码是中华人民共和国国家汉字信息交换用编码,全称《信息交换用汉字编码字符集——基本集》,由国家标准总局发布,1981年5月1日实施,通行于大陆。

新加坡等地也使用此编码。

3.ANSI:unicode和ansi都是字符代码的一种表示形式。

为使计算机支持更多语言,通常使用0x80~0xFF 范围的2 个字节来表示1 个字符。

比如:汉字'中' 在中文操作系统中,使用[0xD6,0xD0] 这两个字节存储。

不同的国家和地区制定了不同的标准,由此产生了GB2312, BIG5, JIS 等各自的编码标准。

这些使用2 个字节来代表一个字符的各种汉字延伸编码方式,称为ANSI 编码。

在简体中文系统下,ANSI 编码代表GB2312 编码,在日文操作系统下,ANSI 编码代表JIS 编码。

不同ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段ANSI 编码的文本中。

4.MultiByteToWideChar:OpenGL的一个函数,该函数映射一个字符串到一个宽字符(unicode)的字符串。

由该函数映射的字符串没必要是多字节字符组。

三.算法设计与分析运行之前,在工程属性>>>参数中需要增加(libwinmm.a)和(libgdi32.a)引用,这样才能保证字体选择和字符绘制可以正常运行。

微机汇编实验七屏幕字符显示程序

微机汇编实验七屏幕字符显示程序

实验时间:2014年6月4日实验成绩评定:姓名:黄涛学号:2012311419实验七屏幕字符显示程序实验目的:通过实验掌握下列知识:1、8086/8088指令: JMP,CMP,LEA,CMPBS。

2、利用DOS功能调用INT21H的2号、8号、9号和0A号功能进行屏幕显示的方法。

3、IBM-PC机的ASCII码表及控制字符。

实验内容及步骤:一、利用INT 21H 2号功能显示字符:1、用A命令在100H处键入下列程序:XOR DL,DLMOV CX,100LOP:MOV AH,2INT 21INC DLPUSH CXMOV CX,8DELY: PUSH CXMOV CX,0J: LOOP JPOP CXLOOP DELYPOP CXLOOP LOPINT 202、用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。

仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同?3、按CTRL+BREAK退出此程序,若一次不行可多做几次。

二、自编一个程序, 在显示器上显示“How are you ?”,然后读一个字符,但不显示此字符,若读入字符是‘y’,则显示‘ok’。

解:程序如下:DSEG SEGMENTDAT1 DB 'HOW ARE YOU?',0DH,0AH,'$'DAT2 DB 'OK',0DH,0AH,'$'DSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART: MOV AX,DSEGMOV DS,AXMOV DX,OFFSET DAT1MOV AH,9INT 21HMOV AH,8INT 21HCMP AL,'Y'JNE NEXTLEA DX,DAT2MOV AH,9INT 21HNEXT: MOV AH,4CHINT 21HCSEG ENDSEND START程序编译:程序运行:1.输入“Y”:2.输入其他字符:三、自编一个程序, 屏幕显示“PASS WORD ?”,随后从键盘读入字符串,并比较这个字符串与内部设定的字符串,若两者相同,则显示“ok”,否则不作任何显示。

利用开发板编写程序,实现在LCD显示屏上显示宇符

利用开发板编写程序,实现在LCD显示屏上显示宇符

实验三、编写程序,实现在LCD显示屏上显示宇符一、实验目的1、了解显示屏的电路的结构软硬件的设计。

2、学习并熟悉LCD显示屏显示的原理和使用方法;3、更进一步了解飞凌6410的功能。

二、实验设备及材料1、飞凌6410开发板及连接开发板和计算机的线路;2、DM Tool工具等相应的的软件;3、PC机1台三、实验步骤1.连接开发板和计算机并保证两者之间通信顺畅。

2、新建一个工程,在工程中新建一个C语言文件main.c。

3、按照实验原理,为显示模组提供显示驱动程序,显示驱动程序用了常用的一些显示函数,事先将驱动程序文件导入到工程中。

4、按照事先设计的方法在main.c中编写C语言程序,在程序中调用驱动程序中的子函数,控制LCD显示。

5、调试程序,观察并记录实验结果。

四、试验中使用的控制程序显示字符的程序如下:#include "ok6410User.h"#define P_Watchdog_Clear (volatile unsigned int *)0x7012: int main(void)// 实现功能:在开发板上的LCD模组显示 //"Automation"以及"is developing" // 参数:无 //int main(void) { int i,j;LCD501_Init(0xff);while(1){ LCD501_ClrScreen(1);for(j=0;j<=3;j++) /for(i=0;i<0x1fff;i++)*P_Watchdog_Clear = 0x0001;LCD501_ClrScreen(0);LCD501_PutString(30,3,(unsigned int *)"Automation"); //显示字符串"Automation"for(j=0;j<=7;j++)for(i=0;i<0x1fff;i++)*P_Watchdog_Clear = 0x0001;LCD501_FontSet(0);LCD501_PutString(0,40,(unsigned int *)"is");LCD501_PutString(50,50,(unsigned int *)"developing");for(j=0;j<=13;j++)for(i=0;i<0x1fff;i++)*P_Watchdog_Clear = 0x0001;}}五、实验结果按照实验要求将开发板和计算机连接起来,并肩控制程序导入相应的工程文件中,并进行调试保证其正常运行,就将会在显示屏上显示:“Automation is developing”LCD电路图。

实验报告一-显示程序实验

实验报告一-显示程序实验

信息工程学院实验报告实验项目名称:显示程序实验实验时间:2016.11.10班级:姓名:学号:一、实验目的1、掌握在PC 机上以十六进制形式显示数据的方法2、掌握部分DOS 功能调用使用方法。

3、熟悉Windows 集成操作软件Tdpit 的操作环境和操作方法。

二、实验设备PC 微机一台、TD-PITD+实验系统一套。

三、实验原理一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。

本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并利用DOS 功能调用完成一些提示信息的显示。

通过本实验,初步掌握实验系统配套操作软件的使用。

实验中所使用DOS 功能调用(INT 21H)说明如下。

(1)显示单个字符输出入口:AH=02H调用参数:DL=输出字符(2)显示字符串入口:AH=09H调用参数:DS:DX=串地址,’$’为结束字符(3)键盘输入并回显入口:AH=01H返回参数:AL=输出字符(4)返回DOS 系统入口:AH=4CH调用参数:AL=返回码程序流程图如图1-1 所示。

实验参考程序如下。

实验程序清单(例程文件名:A1.ASM)STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDATA SEGMENT USE16MES DB 'Press any key to exit!',0AH,0DH,0AH,0DH,'$' MES1 DB 'Show a as hex:',0AH,0DH,'$'SD DB 'b'DATA ENDSCODE SEGMENT USE16ASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV DX,OFFSET MES ;显示退出提示MOV AH,09HINT 21HMOV DX,OFFSET MES1 ;显示字符串MOV AH,09HINT 21HMOV SI,OFFSET SDMOV AL,DS:[SI]AND AL,0F0H ;取高4 位SHR AL,4CMP AL,0AH ;是否是A 以上的数JB C2ADD AL,07HC2: ADD AL,30HMOV DL,AL ;显示字符MOV AH,02HINT 21HMOV AL,DS:[SI]AND AL,0FH ;取低4 位图1-1 显示程序实验参考流程图CMP AL,0AHJB C3ADD AL,07HC3: ADD AL,30HMOV DL,AL ;显示字符MOV AH,02HINT 21HKEY: MOV AH,1 ;判断是否有按键按下?INT 16H ;(为观察运行结果,使程序有控制的退出)JZ KEYMOV AX,4C00H ;结束程序退出INT 21HCODE ENDSEND START四、实验内容与步骤(1)运行Tdpit 集成操作软件,进入编辑调试集成环境。

汇编实验四汇编语言上机过程及屏幕字符显示程序

汇编实验四汇编语言上机过程及屏幕字符显示程序

实验报告──学年第学期实验课程汇编语言学生姓名123实验项目汇编语言上机过程及屏幕字符显示程序学院计算机科学技术实验性质专业选修课班级学号实验地点同组人数 1 第组实验日期第周星期第节成绩3环境参数Windows xp一、实验目的及要求二、实验原理、实验内容三、实验仪器设备及材料四、操作方法与实验步骤五、实验数据记录及处理六、实验结果分析及讨论一:1、熟练掌握汇编语言的程序格式,程序设计方法;学会使用masm6.11对源程序进行编译、链接、调试和运行2、利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的方法。

3、利用^Break退出程序的方法及局限性。

4、汇编程序的编写二:实验任务编写一个简化的段定义结构程序:先提示输入数字“Input number:0-9”,然后在下一行显示输入的数字,结束;如果不是键入了0-9 数字,就提示错误“ERROR!”,继续等待输入数字。

源代码:编译连接:实验结果:此程序没按要求将数字在下一行输出。

且程序中用到了多余的指令int 3.修改“done:”段done: mov dl,almov ah,02hint 21h.exit 02.编写一个完整的段定义结构程序:从键盘输入一个字符串(不超过255个),将其中的小写字母转换成大写字母,然后按原来的顺序在屏幕上显示。

要求对以上两个程序,进行编译,链接,调试,运行,给出具体步骤源代码:请问程序中的第39行错误用了一个标号。

编译连接:运行结果:三、小结1、学会使用edit进行程序的编写。

2、学会写简易段程序和完整段程序。

3、学会了在dos下进行汇编程序的编译、连接、调试和运行。

4、学会了使用21号中断的2号9号功能进行字符的显示。

5、汇编基础知识不扎实,指令经常写错,要多练习。

仪器设备损坏、非正常损耗材料(试剂)及处理情况:无教师对报告的最终评价及处理意见:2段程序均有错。

教师签字:年月日。

微机原理与接口技术--实验二 屏幕字符显示程序

微机原理与接口技术--实验二 屏幕字符显示程序

北京X X大学实验报告课程(项目)名称:实验二屏幕字符显示程序学院:专业:班级:学号:姓名:成绩:2013年 12月 10 日一、任务与目的1. 实验任务:(1) 熟悉和掌握利用DOS调用进行屏幕显示的方法;(2) 掌握屏幕字符显示程序的编写。

2. 实验目的:(1) 熟悉字符串表示的语法结构;(2) 熟悉利用DOS调用编写字符屏幕显示的基本程序。

二、原理(条件)1.相关知识:(1) 字符串显示格式;(2) 熟悉DOS调用使用方法。

2.实验条件:MASM汇编程序及TD调试软件。

三、内容步骤1.编写程序在屏幕上显示“Our Team: 姓名拼音+姓名拼音!”,观察执行情况并分析结果。

参考程序如下,请在参考程序之上改写。

DATA SEGMENTSTRING DB 'hello,everybody!.You cannot improve your past, but you can improve your future. Once time is wasted, life is wasted.',0DH,0AH,'$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA DX,STRINGMOV AH,09HINT 21HMOV AH,4CHINT 21HCODE ENDSEND START四、数据处理(现象分析)实验结果:实现代码:DATA SEGMENTSTRING DB 'Our team:Lingwei zhangzhengqiangcaoruanruan',0DH,0AH,'$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA DX,STRINGMOV AH,09HINT 21HMOV AH,4CHINT 21HCODE ENDSEND START五、结论通过参照示例程序完成实验时,对实验结果的观察并结合课本对实验现象的分析可得知:DOS系统功能调用是利用软中断指令INT 21来实现的,方法如下,1.AH←功能号;2.在指定寄存器中放入该功能所要求的入口参数;3.执行INT 21H指令;4.分析出口参数此外,要将一个字符串送到显示器显示,需要调用DOS功能的9号功能,该功能要求被显示的字符串必须以“$”字符作为结束符,否则会引起屏幕乱码。

LCD1602液晶显示实验实验报告及程序

LCD1602液晶显示实验实验报告及程序

LCD1602液晶显示实验实验报告及程序一、实验目的本次实验的主要目的是熟悉并掌握 LCD1602 液晶显示屏的工作原理和编程方法,能够成功实现字符在液晶屏幕上的显示和控制。

二、实验原理LCD1602 是一种工业字符型液晶,能够显示 16x2 个字符,即每行16 个字符,共 2 行。

它的工作原理是通过控制液晶分子的偏转来实现字符的显示。

LCD1602 有 16 个引脚,主要引脚功能如下:1、 VSS:接地。

2、 VDD:接电源(通常为+5V)。

3、 V0:对比度调整引脚,通过外接电位器来调节屏幕显示的对比度。

4、 RS:寄存器选择引脚,高电平时选择数据寄存器,低电平时选择指令寄存器。

5、 RW:读写选择引脚,高电平时进行读操作,低电平时进行写操作。

6、 E:使能引脚,下降沿触发。

7、 D0 D7:数据引脚,用于传输数据和指令。

LCD1602 的指令集包括清屏、归位、输入方式设置、显示开关控制、光标或显示移位、功能设置、CGRAM 和 DDRAM 地址设置以及读忙标志和地址等。

三、实验设备与材料1、单片机开发板2、 LCD1602 液晶显示屏3、杜邦线若干4、电脑四、实验步骤1、硬件连接将 LCD1602 的 VSS 引脚接地。

将 VDD 引脚接+5V 电源。

将 V0 引脚通过一个 10K 的电位器接地,用于调节对比度。

将 RS、RW、E 引脚分别连接到单片机的三个 I/O 口。

将 D0 D7 引脚连接到单片机的 8 个 I/O 口。

2、软件编程包含必要的头文件。

定义与 LCD1602 连接的 I/O 口。

编写初始化函数,包括设置显示模式、清屏、输入方式等。

编写写指令函数和写数据函数,用于向LCD1602 发送指令和数据。

编写显示字符串函数,实现字符在屏幕上的显示。

3、编译下载程序使用编译软件对编写的程序进行编译,生成可执行文件。

将可执行文件下载到单片机开发板中。

4、观察实验结果给开发板上电,观察 LCD1602 液晶显示屏上是否正确显示预设的字符。

汇编做的字符显示程序

汇编做的字符显示程序

目录一.论文题目 (2)二.技术参数 (2)三.设计步骤 (2)1.数据段 (2)2. 主程序 (2)3. 清屏子程序 (3)4. 显示子程序 (3)五.程序代码 (4)六.程序运行结果 (16)七.设计体会 (17)八.参考文献 (17)九.附录 (17)一.论文题目字符图案显示程序二.技术参数1.通过编程将字符数据直接置入显示存储区,文本方式下屏幕上的字符位置所对应的显示缓冲区的偏移地址为:行号(0~24)×160+列号(0~79)×2。

2.BOIS功能调用:int 10H在本程序中发回了至关重要的作用。

在图形方式下,可以利用BOIS 的int 10h功能对屏幕上的像素进行读写和处理。

例如设置彩色文本方式:mov ah,0 ,mov al,3,int10h;取当前显示方式:mov ah,0fh ,int 10h,;置光标位置:mov ah,2 ,int 10h;显示字符:mov ah,09 ,int 10h等3.DOS系统功能调用(21H)。

从键盘输入字符:mov ah,01h ,int 21h,带返回码终止:mov ah,4ch ,int 21h。

三.设计步骤1.数据段在数据段中设置要显示“科技大学”图案的字符图形表。

图形表主要包括每个字符的ASCII,属性,以及在显示图形中的相对位移量(行、列坐标)四个参数组成。

其中,ASCII决定了用何种字符显示要求图案。

行、列坐标恰当的排列决定了图形的完整性和美观性。

2.主程序在主程序中完成初始化DOS,设置彩色文本方式等功能。

其中清屏子程序、显示子程序。

并且设置了退出的操作,操作者可以按空格退出,回到DOS界面。

3.清屏子程序INT 10H功能6使屏幕内容上卷指定的行,这个功能需要设置7个参数。

AH、BH、CH、CL、DH、DL分别表示了上卷行数、初始化窗口、卷入行属性、左上角行列号和右上角行列号。

在做这项工作前,将寄存器压栈保护寄存器,最后再出栈回复寄存器。

字符显示实验

字符显示实验

实验一:字符显示实验学号:1203121650 姓名:于斌批次:第3批一、实验要求:编写设计通过液晶显示器显示相应的数字或字母。

二、源程序:module lql8(clk,disp_out,en);input clk;output [7:0] disp_out,en;reg [31:0] cnt_scan=0;reg [1:0] sec_cnt=0;reg [7:0] disp_out_r,en_r;assign disp_out=disp_out_r;assign en=en_r;always@(posedge clk)begincnt_scan<=cnt_scan+1;if(cnt_scan == 4'b1111)begincnt_scan<= 0;sec_cnt=sec_cnt+1;if(sec_cnt>=4) sec_cnt<=0;endendalways@(cnt_scan)begin //select row case(cnt_scan[2:0])3'b000:en_r<=8'b11111110;3'b001:en_r<=8'b11111101;3'b010:en_r<=8'b11111011;3'b011:en_r<=8'b11110111;3'b100:en_r<=8'b11101111;3'b101:en_r<=8'b11011111;3'b110:en_r<=8'b10111111;3'b111:en_r<=8'b01111111;endcaseendalways@(cnt_scan)beginif(sec_cnt==2'b00)begin //display Acase(cnt_scan[2:0])3'b000:disp_out_r<=8'h00;3'b001:disp_out_r<=8'hfc;3'b010:disp_out_r<=8'h12;3'b011:disp_out_r<=8'h11;3'b100:disp_out_r<=8'h11;3'b101:disp_out_r<=8'h12;3'b110:disp_out_r<=8'hfc;3'b111:disp_out_r<=8'h00;endcaseendelse if(sec_cnt==2'b01)begin //display B case(cnt_scan[2:0])3'b000:disp_out_r<=8'h00;3'b001:disp_out_r<=8'h00;3'b010:disp_out_r<=8'hff;3'b011:disp_out_r<=8'h89;3'b100:disp_out_r<=8'h89;3'b101:disp_out_r<=8'h8e;3'b110:disp_out_r<=8'h70;3'b111:disp_out_r<=8'h00;endcaseendelse if(sec_cnt==2'b10)begin //display C case(cnt_scan[2:0])3'b000:disp_out_r<=8'h00;3'b001:disp_out_r<=8'h3c;3'b010:disp_out_r<=8'h42;3'b011:disp_out_r<=8'h81;3'b100:disp_out_r<=8'h81;3'b101:disp_out_r<=8'h81;3'b110:disp_out_r<=8'h42;3'b111:disp_out_r<=8'h00;endcaseendelse begin //display D case(cnt_scan[2:0])3'b000:disp_out_r<=8'h00;3'b001:disp_out_r<=8'hff;3'b010:disp_out_r<=8'h81;3'b011:disp_out_r<=8'h81;3'b100:disp_out_r<=8'h81;3'b101:disp_out_r<=8'h42;3'b110:disp_out_r<=8'h3c;3'b111:disp_out_r<=8'h00;endcaseendendendmodule三、实验步骤:1.打开操作软件diamond2.0;2.建工程并选器件新建工程file->new->project->next,然后在弹出来的对话框中填写相关内容,在Location栏上选用已经建好的文件夹(F/yubin);然后点击NEXT, 在新弹出的对话框NEW PROJECT点击NEXT,在新出现的对话框中选择相应芯片,本实验所选芯片应为MachXO2-LCMXO2-1200ZE-2MG132C;3.建立源文件在新建项目file->new->file,在对话框New File中,选择verilog;在name栏输入文件名lcd_display,点击NEXT,在Lattic Diamond主界面出现lcd_display.v. 在TextEditer中编写verilog模块代码;4.综合在主界面Process窗口中双击Translate Design,对所编辑的代码进行综合;5. 管脚分配在pin一栏中填入各输入输出映射的管脚。

显示程序实验_实验报告

显示程序实验_实验报告

一、实验目的1. 了解显示程序的基本原理和实现方法。

2. 掌握使用C语言编写显示程序的基本步骤。

3. 熟悉计算机显示系统的组成和功能。

4. 培养实际编程能力,提高动手操作能力。

二、实验环境1. 操作系统:Windows 102. 编译器:Visual Studio 20193. 显示器:普通显示器三、实验原理显示程序是指将计算机中的数据以图形或文字形式展示在显示器上的程序。

在计算机系统中,显示程序主要涉及以下原理:1. 图形显示原理:通过将图像数据转换成显示器可以识别的信号,驱动显示器显示图像。

2. 文字显示原理:通过字符编码将文字信息转换成显示器可以识别的信号,驱动显示器显示文字。

四、实验步骤1. 创建一个新的C语言项目,命名为“显示程序实验”。

2. 在项目文件夹中创建一个名为“display.c”的源文件。

3. 在“display.c”文件中编写以下代码:```c#include <stdio.h>#include <windows.h>int main() {// 创建一个窗口HWND hwnd = CreateWindow("static", "显示程序实验",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, CW_USEDEFAULT, 640, 480, NULL, NULL, NULL, NULL);ShowWindow(hwnd, SW_SHOW);// 创建一个设备上下文HDC hdc = GetDC(hwnd);// 创建一个画笔HPEN hPen = CreatePen(PS_SOLID, 1, RGB(255, 0, 0));// 选择画笔SelectObject(hdc, hPen);// 绘制矩形Rectangle(hdc, 100, 100, 300, 300);// 绘制文字TextOut(hdc, 50, 50, "Hello, World!", strlen("Hello, World!")); // 释放画笔DeleteObject(hPen);// 释放设备上下文ReleaseDC(hwnd, hdc);// 等待用户关闭窗口MSG msg;while (GetMessage(&msg, NULL, 0, 0)) {TranslateMessage(&msg);DispatchMessage(&msg);}return 0;}```4. 编译并运行程序,观察显示效果。

显示程序实验实验报告

显示程序实验实验报告

西北工业大学明德学院实验报告实验项目微机原理与接口技术实验班级 122202姓名杜昊昀学号 121764指导老师李茹时间 2014-03-18实验题目显示程序实验实验目的利用计算机语言输出一个字符和字符串,并且输出自己的姓名,班级和学号。

实验内容DATA SEGMENTMES1 DB ‘name:dhy’,0AH,0DH,'$' MES2 DB ‘number:121764’ ,0AH,0DH,'$' MES3 DB ‘class:122202’,OAH,ODH,’$’SD DB '3'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DX,OFFSET MES1 ;显示提示信息MOV AH,09HINT 21HMOV DX,OFFSET MES2 ;显示提示信息MOV AH,09HINT 21HMOV SI,OFFSET SDMOV AL,DS:[SI]AND AL,0F0H ;取高4位SHR AL,4CMP AL,0AH ;是否是A以上的数JB C2ADD AL,07HC2: ADD AL,30HMOV DL,AL ;显示字符 MOV AH,02HINT 21HMOV AL,DS:[SI]AND AL,0FH ;取低4位 CMP AL,0AHJB C3ADD AL,07HC3: ADD AL,30HMOV DL,AL ;显示字符 MOV AH,02HINT 21HMOV AX,4C00H ;返回DOS INT 21HCODE ENDSEND START实验步骤1、阅读老师给的原程序,再利用相关的软件输入源代码。

2、根据老师要求修改源代码,分别将将自己的班级,学号和姓名及字符“3”,编写进程序。

3、编程完整个程序之后,检查无错误之后,经过编译,链接和运行得到输出结果。

字符显示的微机实验报告

字符显示的微机实验报告

一、实验目的1. 了解字符显示微机的基本原理和结构;2. 掌握字符显示微机的编程方法;3. 学会使用字符显示微机进行简单的数据处理和显示。

二、实验原理字符显示微机是一种基于微处理器的字符显示设备,它可以用于显示文本、图形等信息。

字符显示微机主要由以下几个部分组成:1. 微处理器:字符显示微机的核心部分,负责控制和协调各个模块的工作;2. 存储器:包括只读存储器(ROM)和随机存储器(RAM),用于存储程序和数据;3. 输入设备:如键盘、鼠标等,用于输入数据和指令;4. 输出设备:如显示器、打印机等,用于输出结果和显示信息;5. 接口电路:用于连接各个模块,实现数据传输和通信。

字符显示微机的基本工作原理是:微处理器根据程序指令,从存储器中读取数据,进行计算和逻辑判断,然后将结果输出到显示器上显示。

三、实验仪器与设备1. 字符显示微机一台;2. 键盘一个;3. 显示器一个;4. 电源一个。

四、实验步骤1. 启动字符显示微机,进入操作系统界面;2. 编写程序,实现以下功能:(1)定义一个字符数组,用于存储要显示的文本;(2)使用循环语句,逐个字符地在显示器上显示数组中的内容;(3)使用条件语句,实现显示内容的换行;(4)使用延时函数,实现显示内容的暂停效果;3. 编译程序,生成可执行文件;4. 运行程序,观察显示效果。

五、实验结果与分析1. 编写程序:```c#include <stdio.h>#include <stdlib.h>#include <unistd.h>int main() {char text[] = "Hello, world!";int i = 0;while (text[i] != '\0') {printf("%c", text[i]);i++;usleep(200000); // 延时200毫秒}printf("\n");return 0;}```2. 编译程序,生成可执行文件:`gcc -o display_text display_text.c`3. 运行程序,观察显示效果:在显示器上,程序将逐个字符地显示文本“Hello, world!”,每个字符之间有200毫秒的暂停效果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验时间:年月日实验成绩评定:
姓名:学号:
实验七屏幕字符显示程序
实验目的:
通过实验掌握下列知识:
1、8086/8088指令: JMP,CMP,LEA,CMPBS。

2、利用DOS功能调用INT21H的2号、8号、9号和0A号功能进行屏幕显示的方法。

3、IBM-PC机的ASCII码表及控制字符。

实验内容及步骤:
一、利用INT 21H 2号功能显示字符:
1、用A命令在100H处键入下列程序:
XOR DL,DL
MOV CX,100
LOP:MOV AH,2
INT 21
INC DL
PUSH CX
MOV CX,8
DELY: PUSH CX
MOV CX,0
J: LOOP J
POP CX
LOOP DELY
POP CX
LOOP LOP
INT 20
2、用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。

仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同?
3、按CTRL+BREAK退出此程序,若一次不行可多做几次。

二、自编一个程序, 在显示器上显示‚How are you ?‛,然后读一个字符,但不显示此字符,若读入字符是‘y’,则显示‘ok’。

三、自编一个程序, 屏幕显示‚PASS WORD ?‛,随后从键盘读入字符串,并比较这个字符串与内部设定的字符串,若两者相同,则显示‚ok‛,否则不作任何显示。

实验报告要求:
1、各项实验记S录及观察体会。

2、自编程序草稿及调试结果。

自编一个程序(二)自编一个程序(三)。

相关文档
最新文档