




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章 微控制器应用系统综合设计的目的意义1.1 设计目的 通过课程设计进一步锻炼同学们在微型计算机应用方面的实际工作能力。计算机科学在应用上得到飞速发展,因此,学习这方面的知识必须紧密联系实际:掌握这方面的知识更要强调解决实际问题的能力。同学们要着重学会面对一个实际问题,如何去自己收集资料,如何自己去学习新的知识,如何自己去制定解决问题的方案并通过实践不断地去分析和解决前进道路上的一切问题,最终到达胜利的彼岸。本实验是设计单片机重量检测与显示电路,对5种以上不同单价的商品进行键盘参数设置,称量,计价和显示。这个课题与我们现实生活联系密切,具有很大的实际用途。做好本实验对我们今后学习和生活具有重要意义。1.2 课程在教学计划中的地位和作用 微控制器应用系统综合设计课程是测控技术专业本科生必修的一门技术基础课程。通过该课程的学习使学生对单片机有一个全面的了解、掌握常规芯片的使用方法、掌握简单微型计算机应用系统软硬的设计方法。为了使我们微机应用课程设计目标更明确,要求更具体,学生收获更大,我们特编写课程设计任务书,学生可根据本人的爱好任选其中一个课题,要求独立完成课题,写出课程设计说明书,设计出电路原理图,说明工作原理,画出电路板图,编写程序及程序流程图。希望同学认真阅读本任务书,认真查阅资料与上机调试,圆满完成课程设计。第二章 电子计价称软硬件设计任务2.1 设计内容及要求 设计单片机称重测量检测,处理与显示电路,对五种不同单价的商品进行键盘参数设置,称量,计价和显示。由A/D0809把输入的05V的电压转换,当电压为5V时,对应的重量为500克,进行数值转换,并在LCD液晶显示器上显示商品的克数,程序设置了五种不同单价的商品,由键盘输入04显示不同商品的单价,并显示总的价钱,显示三位数。2.2 课程设计的要求 1.利用现有的硬件电路,构成单片机称重检测,处理与显示系统。 2.编写程序,实现称量和计价显示的功能。 3.设计出原理图,说明工作原理,画出程序流程图。 第三章 总体设计方案3.1 设计思想实验需要设计一个系统可以对5种以上不同的商品进行键盘参数设置,称量,计价和显示。可以把系统分为以下几个模块,分别进行编写程序,调试。(1)8279可编程键盘,输入04时,通过比较键值,使程序跳到不同的子程序,在子程序中进行A/D采样,设定单价,经过数值转换与乘法程序,将重量和价钱转换成十进制数,调用显示程序。执行完返回判断有无键按下。(2)A/D采样部分,给A/D0通道输入一个0-5V的电压,将转换成0FF输出,对应0500G,把A/D采样值存入内部寄存器51H中,经过数值转换成十进制数,调用LCD显示程序显示。当质量大于500克时,转到报警程序。(3)LCD液晶显示,分三个区分别显示单价,重量,价钱,并且都分为三位显示。(4)实验中还需要用到双字节与单字节乘法及十六进制转十进制报警等子程序。 P0.0-p0.78031 /RD /WR RESET373138IN0 D0D7 ADC0809 /RD /WR CLK05VT474LS02D0D7 8279 /RD SL2 /WR SL1RESET SL074LS138D0-D7C/D/CE LCD/RD/WR/RESET FS 图3.1 硬件系统结构图第四章 硬件设计4.1 硬件设计概要 本次设计主要用到的芯片有8088、ADC0809模数转换器 、可编程键盘显示8279、LCD液晶显示共同完成这个课题。A/D实现数据的采集和转换,可编程键盘显示8279实现键盘输入编号显示不同商品的单价,LCD液晶显示器显示单价,重量以及三位价钱。8088实现各个芯片之间的连接。4.2 所用到的芯片及其各自功能说明4.2.1 芯片列表 AT89C528位单片机ADC0809模数转换器 可编程键盘显示8279LCD液晶器4.2.2 AT89C528位单片机 AT89C52是 一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央 处理器和Flash存储单元,功能强大的AT89C52单片机可提供许多较复杂系统控制应用场合。 4.2.3 ADC0809的功能简介 ADC0809是8位逐次逼近式单片A/D转换芯片,可对8路05V的输入模拟电压信号分时进行转换。它内部包括8路模拟开关,以及地址锁存译码器,有三条地址输入线。该芯片还有便于和微机数据总线相连的三台输出锁存器。 ADC0809的内部结构为:ADC0809是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、三态输出锁存器等其他一些电路组成。其内部原理图如下:模拟量输入A BN位D/A N 位寄存器 启动位置控制逻辑DONE 图4.1 ADC0809芯片管脚功能如下: IN0IN7:8路模拟量输入通道。 ADDAADDC:地址线用于选择模拟量输入通道。ALE:地址锁存允许信号。 START:转换启动信。D0D7:数据输线。OE:输出允许信号,低电平允许转换结果输出。EOC:A/D转换结束信号,当转换结束时,此端口输出一个高电平。 CLOCK:时钟信号输入引脚,通常使用500KHz。 EOC:转换结束信号,为0代表正在转换,1代表转换结束。 REF()、REF(+):基准电压。Vcc:5V电压。 GND:接地。ADC0809的管脚图如下: 图4.24.2.4 可编程键盘显示8279 8279是可编程的键盘,显示接口芯片.它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛.8279内部有键盘FIFO(先进先出堆栈)/传感器,双重功能的8*8=64B RAM,键盘控制部分可控制8*8=64个按键或8*8阵列方式的传感器.该芯片能自动消抖并具有双键锁定保护功能.(1) 数据线 DB0DB7是双向三态数据总线,在接口电路中与系统数据总线相连,用以传送CPU和8279之间的数据和命令. (2)地址线 /CS=0选中8279,当A0=1时,为命令字及状态字地址;当A0=0时,为片内数据地址,故8279芯片占用2个端口地址. (3)控制线 CLK:8279的时钟输入线. IRQ:中断请求输出线,高电平有效. /RD,/WR:读,写输入控制线. SL0-SL3:扫描输出线,用来作为扫描键盘和显示的代码输出或直接输出线. RL0-RL7:回复输入线,它们是键盘或传感器矩阵的信号输入线. SHIFT:来自外部键盘或传感器矩阵的输入信号,它是8279键盘数据的次高位即D6位的状态,该位状态控制键盘上/下档功能.在传感器方式和选通方式中,该引脚无用. CNTL/S:控制/选通输入线,高电平有效.键盘方式时,键盘数据最高位(D7)的信号输入到该引脚,以扩充键功能;选通方式时,当该引脚信号上升沿到时,把RL0-RL7的数据存入FIFO RAM中. OUTA0-OUTA3:通常作为显示信号的高4位输出线. OUTB0-OUTB3:通常作为显示信号的低4位输出线. /BD:显示熄灭输出线,低电平有效.当/BD=0时将显示全熄灭.图4.3 8279引脚及引线功能425 LCD液晶器 T6963C液晶显示控制器多用于中小规模的液晶显示器件,常被装配在图形液晶显示模块上,以内藏控制器型图形液晶显示模块的形式出现。一、T6963C的特点(1) T6963C是点阵式液晶图形显示控制器,它能直接与80系列的8位微处理器接口;(2) T6963C的字符字体可由硬件或软件设置,其字体有4种:58、68、78、88;(3) T6963C的占空比可从1/16到1/128;(4) T6963C可以图形方式、文本方式及图形和文本合成方式进行显示,以及文本方式下的特征显示,还可以实现图形拷贝操作等等;(5) T6963C具有内部字符发生器CGROM,共有128个字符,T6963C可管理64K显示缓冲区及字符发生器CGRAM。并允许MPU随时访问显示缓冲区,甚至可以进行位操作。二、T6963C的引脚说明及其功能T6963C的QFP封装共有67个引脚(见图三),各引脚说明如下:(1) D0-D7:T6963C与MPU接口的数据总线,三态;(2) /RD, /WR:读、写选通信号,低电平有效,输入信号;(3) /CE:T6963C的片选信号,低电平有效;(4) C/D:通道选择信号,1为指令通道,0为数据通道;(5)/RESET, /HALT:/RESET为低电平有效的复位信号,它将行、列计数器和显示寄存器清零,关显示;/HALT具有/RESET的基本功能,还将中止内部时钟振荡器的工作;以上引脚为T6963C与MPU接口的引脚。 图4.4 T6963C管脚外形图(6) DUAL, SDSEL: DUAL = 1为单屏结构,DUAL = 0为双屏结构;SDSEL = 0为一位串行数据传输方式,SDSEL = 1为二位并行数据传输方式;(7) MD2, MD3:设置显示窗口长度,从而确定了列数据传输个数的最大值,其组合逻辑关系如下: 表4.1MD31100MD21010每行字符数32406480当DUAL = 0时,以上设置中的字符行和总行数增至原来的2倍,其它都不变,这种情况下的液晶屏结构为双屏结构;(9) FS1,FS0:显示字符的字体选择 表4.2FS11100FS01010字体58687888(10)XI,XO:振荡时钟引脚;(11) ad0-ad15:输出信号,显示缓冲区16位地址总线;(12) d0-d7:三态,显示缓冲区8位数据总线;(13)r/w:输出,显示缓冲区读、写控制信号;(14)/ce:输出,显示缓冲区片选信号,低电平有效;(15)/ce0,/ce1:输出,DUAL = 1时的存储器片选信号;(16) T1,T2,CH,CH2:用来检测T6963C工作使用情况,T1,T2作为测试信号输入端,CH,CH2作为输出端;(17) HOD,HSCP,ED,LP,CDATA,FR为T6963C驱动部信号 连线AD0809接线:1.把A/D区0809的0通道IN0用插针接至W1的中心抽头V01插孔(0-5V)。 2.0809的CLK插孔与分频输出端T4相连。3.把VREF端接到为+5V。 4.连好74LS02 5.将A/D区D0-D7用排线与BUS1区XD0-XD7相连。扩展键盘接线: 1.将DVCC实验系统上J8插座与键盘显示板用扁平电缆相连。2.将KEY区D0D7用8芯排线连到BUS2区XD0XD7上。3.将KEY区WR、RD、ALE分别连到BUS3区XWR、XRD、ALE上。4.KEY区A0连到BUS1区XA0上。5.KEY区RST连到MP区SP上。6.KEY区KCS连到SELET区的Y3上。LCD液晶显示器连线: 1.液晶板C/D 连主机 XA0,液晶板/CS连主机Y02.液晶板 D0-D7 连主机 XD0-XD73.液晶板 / RESET 连主机 /RST,液晶板/WR 连主机XWR,液晶板/RD连主机 XRD 4.液晶板FS 接地。第五章 软件设计5.1 流程图及其说明 开始8279初始化显示器显示P有键按下吗?计算键值散转商品2商品3商品4商品5商品1A/D采样A/D采样A/D采样A/D采样A/D采样调乘法及转换子程序调显示子程序调乘法及转换子程序调乘法及转换子程序调乘法及转换子程序调乘法及转换子程序调显示子程序调显示子程序调显示子程序调显示子程序,YN 图5.1 主程序流程图 开始A/D采样值转化为相应的十六进制数转化为十进制数转化为十进制数调LCD显示子程序乘单价,调乘法子程序调LCD显示子程序返回 图5.2 乘法及数值转换子程序设置显示指针地址,写控制字设置自动写方式,分区,字体,字数一行显示完,改变指针地址指向下一行全部显示完,等待下一次设置调清屏子程序开 始 图 5.3 LCD液晶显示子程序5.2源程序及其说明 ORG 0000HDAT1 EQU 30H ;第一参数存放地址DAT2 EQU 31H ;第二参数存放地址/数据存放地址COM EQU 32H ;指令代码存放地址C_ADD EQU 8001H ;指令通道地址(片选Y1端口地址8000H开始)D_ADD EQU 8000H ;数据通道地址S_ADD_H EQU 33H ;LCD显示指针地址高位S_ADD_L EQU 34H ;LCD显示指针地址低位S_ADD_HF EQU 35H ;LCD显示指针地址高位备份S_ADD_LF EQU 36H ;LCD显示指针地址低位备份SEL_FONT EQU 37H ;LCD字体选者,16X16则为#16H,8X16则为#8HWORD_NUM EQU 38H ;已经显示的字数ATTR EQU 39H ;字符属性码(低四位有效)CODED EQU 40H ;字符代码CGR_NUM EQU 41H ;CGRAM显示程序显示的字数HA7S: MOV SP,#60H MOV DPTR,#0B001H MOV A,#00H MOVX DPTR,A MOV A,#32H MOVX DPTR,A MOV A,#0DFH MOVX DPTR,AHA7S1 MOVX A,DPTR JB ACC.7,HA7S1 MOV DPTR,#0B000H MOV A,#0C8H MOVX DPTR,A INC DPTR MOV A,#80H MOVX DPTR,AHA7S2: MOV 42H,#80H MOV 43H,#40HHA7S3: MOV DPTR,#0B001H MOVX A,DPTR ANL A,#07H CJNE A,#00H,HA7S4 AJMP HA7S3HA7S4: MOV DPTR,#0B000HMOVX A,DPTR MOV B,A MOV R1,#00H MOV DPTR,#KEYTABHA7S5:MOV A,#00H MOVC A,A+DPTR CJNE A,B,HA7S6 AJMP HA7SAHA7S6:INC DPTR INC R1 MOV A,R1 JNB ACC.2,HA7S5 AJMP HA7S2HA7SA: CJNE A,#0C1H,L1 MOV A,42H MOV DPTR,#0B001H MOVX DPTR,A MOV A,R1 MOV R0,43H MOV R0,A INC 43H MOV DPTR,#CDATA MOVC A,A+DPTR MOV DPTR,#0B000H MOVX DPTR,A LJMP LOOP0 L1: CJNE A,#0C8H,L2 MOV A,42H MOV DPTR,#0B001H MOVX DPTR,A MOV A,R1 MOV R0,43H MOV R0,A INC 43H MOV DPTR,#CDATA MOVC A,A+DPTR MOV DPTR,#0B000H MOVX DPTR,A LJMP LOOP1L2: CJNE A,#0C9H,L3 MOV A,42H MOV DPTR,#0B001H MOVX DPTR,A MOV A,R1 MOV R0,43H MOV R0,A INC 43H MOV DPTR,#CDATA MOVC A,A+DPTR MOV DPTR,#0B000H MOVX DPTR,A LJMP LOOP2L3: CJNE A,#0D0H,L4 MOV A,42H MOV DPTR,#0B001H MOVX DPTR,A MOV A,R1 MOV R0,43H MOV R0,A INC 43H MOV DPTR,#CDATA MOVC A,A+DPTR MOV DPTR,#0B000H MOVX DPTR,A LJMP LOOP3L4: CJNE A,#0D8H,L5 MOV A,42H MOV DPTR,#0B001H MOVX DPTR,A MOV A,R1 MOV R0,43H MOV R0,A INC 43H MOV DPTR,#CDATA MOVC A,A+DPTR MOV DPTR,#0B000H MOVX DPTR,A LJMP LOOP4L5: LJMP HA7SKEYTAB: DB 0C1H,0C8H,0C9H,0D0H,0D8H,0E0H,0C2H,0CAH,0D1H,0D9H DB 0DAH,0C3H,0CBH,0D2H,0D3H,0DBHCDATA:DB 0CH,9FH,4AH,0BH,99H,29H,28H,8FH,08H,09H,88H,38H DB 6CH,1AH,68H,0E8HLOOP0:MOV A,#00H MOV DPTR,#9000H ;A/D通道Y1 MOVX DPTR,A MOV R7,#0FFHH55S: DJNZ R7,H55S MOVX A,DPTR MOV 51H,A LCALL COMP LCALL DMUL LCALL CONT2 LCALL MAIN MOV R5,#0CHPP0: MOV R4,#12H LCALL DDMUL LCALL CONT0 LJMP MAIN ;显示 LJMP XIAN1LOOP1:MOV A,#00H MOV DPTR,#9000H ;A/D通道Y1 MOVX DPTR,A MOV R7,#0FFHH55S1: DJNZ R7,H55S1 MOVX A,DPTR MOV 51H,A LCALL COMP LCALL DMUL LCALL CONT2 LCALL MAIN MOV R5,#9FHPP1: MOV R4,#0FH LCALL DDMUL LCALL CONT0 LJMP MAIN LJMP XIAN1LOOP2: MOV A,#00H MOV DPTR,#9000H ;A/D通道Y1 MOVX DPTR,A MOV R7,#0FFHH55S2: DJNZ R7,H55S2 MOVX A,DPTR MOV 51H,A LCALL COMP LCALL DMUL LCALL CONT2 LCALL MAIN MOV R5,#4AHPP2: MOV R4,#0CH LCALL DDMUL LCALL CONT0 LJMP MAIN LJMP XIAN1LOOP3: MOV A,#00H MOV DPTR,#9000H ;A/D通道Y1 MOVX DPTR,A MOV R7,#0FFHH55S3: DJNZ R7,H55S3 MOVX A,DPTR MOV 51H,A LCALL COMP LCALL DMUL LCALL CONT2 LCALL MAIN MOV R5,#0BHPP3: MOV R4,#08H LCALL DDMUL LCALL CONT0 LJMP MAIN LJMP XIAN1LOOP4: MOV A,#00H MOV DPTR,#9000H ;A/D通道Y1 MOVX DPTR,A MOV R7,#0FFHH55S4: DJNZ R7,H55S4 MOVX A,DPTR MOV 51H,A LCALL COMP LCALL DMUL LCALL CONT2 LCALL MAIN MOV R5,#99HPP4: MOV R4,#05H LCALL DDMUL LCALL CONT0 LJMP MAIN LJMP XIAN1XIAN1: MOV R6,#80HDISPC1: MOV A,r6 MOV DPTR,#0B001H MOVX DPTR,A MOV A,R5 MOV DPTR,#0B000H MOVX DPTR,A MOV R2,#20H LCALL DELAY4 MOV A,#0FFH MOVX DPTR,A ;关显示 INC R6 LJMP ha7s2dELAY4:PUSH 02HDELAY5: PUSH 02HDELAY6: PUSH 02HDELAY7: DJNZ R2,DELAY7 POP 02H DJNZ R2,DELAY6 POP 02H DJNZ R2,DELAY5 POP 02H DJNZ R2,DELAY4 RET ;/128X64液晶显示程序/MAIN: MOV SP,#60H LCALL INT_LCD ;液晶初始化 MOV WORD_NUM,#00H ;实现字数清零 LCALL CLEAR ;清屏;-显示方式一;在第一区显示,128X64液晶显示模块可人为分为四个区,每个区大小为128X16;区一显示完毕;-显示方式二;在区二显示,以单个字循环方式显示“测控技术实验室”,16X16字体,一般用于汉字显示 MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#01H ;低位 MOV SEL_FONT,#16H ;采用16X16字体 MOV DPTR,#TAB0 ;danjia MOV R7,#02H ;显示字的个数ER: LCALL SHOW_A_WORD DJNZ R7,ER MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#06H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV DPTR,#TAB03 ;显示0SSS2: LCALL SHOW_A_WORD MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#07H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV DPTR,#TAB3SSS1: LCALL SHOW_A_WORD ;显示小数点 MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#08H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV A,4FH ;显示的字从4F中读取 ANL A,#0F0H ;取4F高位 SWAP A ACALL BIAOER2: LCALL SHOW_A_WORD ;显示千位 MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#09H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV A,4FH ;显示的字从4F中读取 ANL A,#0FH ;取4F低位 ACALL BIAOER1: LCALL SHOW_A_WORD MOV S_ADD_H,#01H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#0AH ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV DPTR,#TAB05 ;Y/G MOV R7,#03H ;显示字的个数ER3: LCALL SHOW_A_WORD DJNZ R7,ER3;-显示方式三;在区三显示,以单个字循环方式显示“GOOD”,8X16字体,一般用于数字和字母的显示 MOV S_ADD_H,#02H ;设置一个字的显示起始地址高位 MOV S_ADD_L,#01H ;低位 MOV SEL_FONT,#16H ;采用8X16字体 MOV DPTR,#TAB01 ;zhongliang MOV R7,#02H ;显示字的个数SAN: LCALL SHOW_A_WORD DJNZ R7,SAN MOV S_ADD_H,#02H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#0BH ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV DPTR,#TAB ;显示字的个数 : gSAN1: LCALL SHOW_A_WORD MOV S_ADD_H,#02H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#06H ;低位 MOV SEL_FONT,#08HMOV A,46H ;显示的字从46中读取 ANL A,#0FH ;取46低位 ;SWAP A ACALL BIAOSAN2: LCALL SHOW_A_WORD ;显示 MOV S_ADD_H,#02H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#07H ;低位 MOV SEL_FONT,#08H ;采用8X16字体MOV A,47 ;显示的字从47中读取 ANL A,#0F0H ;取47低位 SWAP A ACALL BIAOSAN3: LCALL SHOW_A_WORD ;显示 MOV S_ADD_H,#02H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#08H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV A,47H ;显示的字从47中读取 ANL A,#0FH ;取47高位 ACALL BIAOSAN5: LCALL SHOW_A_WORD ;显示;-显示方式四 MOV S_ADD_H,#03H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#01H ;低位 MOV SEL_FONT,#16H ;采用16X16字体 MOV DPTR,#TAB02 ;jiaqian MOV R7,#02H ;显示字的个数ER4: LCALL SHOW_A_WORD DJNZ R7,ER4MOV S_ADD_H,#03H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#06H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV A,4CH ;显示的字从4C中读取 ANL A,#0F0H ;取4C高位 SWAP A ACALL BIAOSAN7: LCALL SHOW_A_WORD ;显示千位MOV S_ADD_H,#03H MOV S_ADD_L,#07H MOV SEL_FONT,#08HMOV A,4CH ;显示的字从4C中读取 ANL A,#0FH ;取4C低位 ACALL BIAOSAN8: LCALL SHOW_A_WORD MOV S_ADD_H,#03H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#08H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV DPTR,#TAB3SSS: LCALL SHOW_A_WORD 显示小数点 MOV S_ADD_H,#03H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#09H ;低位 MOV SEL_FONT,#08H ;采用8X16字体 MOV A,4DH ;显示的字从4D中读取 ANL A,#0F0H ;取4D高位 SWAP A ACALL BIAOSAN6: LCALL SHOW_A_WORD MOV S_ADD_H,#03H ;设置第一个字的显示起始地址高位 MOV S_ADD_L,#0AH ;低位 MOV SEL_FONT,#16H ;采用16X16字体 MOV DPTR,#TAB04 ;元 MOV R7,#01H ;显示字的个数ER9: LCALL SHOW_A_WORD DJNZ R7,ER9LJMP HA7S;-延时子程序DELAY:MOV R7,#01HDY1:MOV R2,#0FHDY11:DJNZ R2,DY11 DJNZ R7,DY1 RET;-清屏子程序CLEAR: MOV DAT1,#00H ;GRAPHIC HOME ADDRESS MOV DAT2,#00H MOV COM,#24H LCALL PR1 ;设置起始地址指针 MOV COM,#0B0H ;设置自动写方式 LCALL PR12 MOV R0,#00H ;分四个区清屏,每个区256个字节 MOV R1,#04H ;有四个区CLEARG: CLR A MOV DPTR,#8000H MOVX DPTR,A DJNZ R0,CLEARG ;清256个字节 DJNZ R1,CLEARG MOV COM,#0B2H ;设置自动写结束指令 LCALL PR12 MOV DAT1,#00H ;TEXT HOME ADDRESS MOV DAT2,#10H MOV COM,#24H LCALL PR1 MOV COM,#0B0H ;设置自动写方式 LCALL PR12 MOV R0,#80H ;16COLUMNS*8LINES=128=80HCLEART: MOV A,#00H MOV DPTR,#8000H MOVX DPTR,A DJNZ R0,CLEART ;MOV COM,#0B2H ;设置自动写结束指令 LCALL PR12 RET;-显示一个16X16或8X16的字体子程序;要求-调用该程序前要将被显示的字的字码表地址送DPTR,显示指针;地址送S_ADD_H显示地址高位,S_ADD_L显示地址低位;SEL_FONT显示字体控制,#16H为16X16,#8H为8X16;S_ADD_HF显示地址高位备份,S_ADD_LF显示地址低位备份;WORD_NUM已经显示的字数SHOW_A_WORD: ;16x16或8x16显示程序 SETB 0D4H PUSH DPH ;开始循环的第一个字符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入职生产安全培训内容课件
- 你比我猜课件
- 智慧树知道网课《船舶与海洋工程专业导论(哈尔滨工程大学)》课后章节测试答案
- 非战备状态管理办法
- 企业环保安全培训文案课件
- 纪检巡察工作管理办法
- 纪检材料归档管理办法
- 发展新质生产力的主阵地
- (公职考试)2025时事政治考试题及答案
- 2025年中医执业医师考试重点讲解与模拟试题及答案
- 2024年医院肠胃内镜科带教计划
- 能源管理系统平台软件数据库设计说明书
- JCT908-2013 人造石的标准
- 住院病历质量考核评分表
- 充电桩工程施工组织设计施工组织
- 执业兽医机构聘用证明或服务协议
- 身体尺(课件)二年级上册数学人教版
- 欠款转为借款合同
- 公路隧道建设施工技术规范学习考试题库(400道)
- 严重创伤重症监护
- 人教版六年级语文上册生字表(带拼音词组)-2023修改整理
评论
0/150
提交评论