目录
1. 硬件设计任务
1.1设计题目……………………………………………………………………... 2 1.2设计背景及发展………………………………………………………………2 1.3设计内容………………………………………………………………………2 1.3.1设计内容………………………………………………………………...2 1.3.2设计目的………………………………………………………………...2 1.4 使用说明………………………………………………………………...…....2
2. 设计原理
2.1基本原理………………………………………………………………………3
3. 设计步骤
3.1 硬件设计……………………………………………………………………...3 3.1.1 确定所用的硬件………………………………………………………3 3.1.2 熟悉所用的硬件………………………………………………………3 (1) 8051单片机 (2) 74LS138 (3) ADC0809 (4) 8255A (5)1602LCD
3.1.3 硬件框图…………………………………………………………….....9 3.1.4 最小系统图…………………………………………………………....10 (1)连线说明 (2)配套地址
3.2 软件设计…………………………………………………………………......11 3.2.1 流程框图……………………………………………………………...12 3.2.2 程序清单……………………………………………………………...16 3.3 调试过程与结果……………………………………………………………..21 3.3.1 调试过程……………………………………………………………...21 3.3.2 调试结果……………………………………………………………...21
4. 设计心得
4.1 设计心得…………………………………………………………………...22 5. 参考文献
5.1 参考文献出处……………………………………………………………...22
第1页共22页
常州大学硬件实习报告
1.硬件设计任务
1.1设计题目
LCD显示设计(显示A/D转换值) 1.2设计背景
液晶显示器,简称LCD(Liquid Crystal Display)。世界上第一台液晶显示设备出现在20世纪70年代初,被称之为TN-LCD(扭曲向列)液晶显示器。尽管是单色显示,它仍被推广到了电子表、计算器等领域。80年代,STN-LCD(超扭曲向列)液晶显示器出现,同时TFT-LCD(薄膜晶体管)液晶显示器技术被研发出来,但液晶技术仍未成熟,难以普及。80年代末90年代初,日本掌握了STN-LCD及TFT-LCD生产技术,LCD工业开始高速发展。
LCD发展过程:1888~1968年为液晶材料性能和应用研究时期。1973~1985年为TN-LCD获得广泛应用时期。1985~1993年为STN-LCD推广应用时期。 1993~2000年是TFT-LCD大发展时期,这个时期TFT-LCD的性能已可以与CRT媲美。LCD发展大大扩展了显示器的应用范围,使个人使用移动型手持显示器成为可能,因此,2000年以后将进入LCD与CRT争夺显示器主流市场的时代。 LCD主要技术发展过程:彩色低功耗反射型LCD技术。低温多晶硅(P-Si)LCD大生产技术。大尺寸、宽视角、高分辨彩色TFT-LCD的发展。1993年以前主要生产的是10.4英寸以下,0×480像素的产品;1993~1997年主要生产的是10英寸~13英寸,1024×768像素的产品;1997~1999年主要生产15英寸~18英寸,1024×768和以上像素的产品;1999年以后开始生产20英寸~30英寸的产品。1998年以后开始大力开发高分辨率、大屏幕液晶投影电视。2008年 人们更重视液晶电视的美观和厚度,Sony品牌电视现在26寸以下的最薄可以做到22毫米了,世界最薄的哦!
1.3设计内容及目标 1.3.1设计内容
(1)编制程序,在点阵液晶显示器上显示自己的名字,并可移动;
(2)编制程序,用键A启动A/D转换,并在字符液晶显示器上显示A/D转换值。 (3)用数字键选择转换通道并显示通道号。 1.3.2设计目的
了解液晶显示图形的基本方法,从而对其他液晶屏的使用也能得心应手。 1.4 使用说明
实验一共有8个控制键,用于选择A/D转换通道口。 载入程序,LCD第一行滚动显示名字:TANG YUN TAO;
按键0~7按下后,LCD第二行显示对应的通道口转换后的数字量。
第2页共22页
常州大学硬件实习报告
2.设计原理
2.1 基本原理
使用汇编语言进行程序编写,确保程序正确后,打开实验箱上的电源,将程序下载到实验箱上,1602LCD上首先显示滚动的名字,滚动到中间即停止下来,接着按下键盘上的A键开始启动A/D转换,当按下键盘上0到7键中任意一键则要切换对应的A/D转换通道,通过不断改变旋钮改变模拟量值的大小并不断把转换好的值与此时转换通道号送到1602LCD并显示。整个系统以单片机为主题,通过软件控制将0809、8255、1602LCD这些芯片联系在一起,实现所要求的功能。
3. 设计步骤
3.1 硬件设计
3.1.1确定所用的硬件
设计中所用到的硬件主要有8051单片机,74LS138三八译码器,ADC0809A/D 转换器,可编程并行I/O扩展接口8255A,键盘以及1602LCD。 3.1.2熟悉所用的硬件
(1)8051单片机有四十个引脚,按照引脚功能可分为电源引脚VCC与VSS; 外接晶振引脚XTAL1与XTAL2;控制和复位引脚ALE,PSEN,EA,RST; 32个I/O引脚,其中P2与P0作为地址总线,P2作为地址线的高8位,P0 作为地址线的低八位,P0还作为数据总线负责传出或传入数据,P1为用户 自定义I/O引脚,P3主要作为控制总线,包括了串行输入与输出端,外部中 断0,1触发端,定时器0,1外部脉冲计数端,允许读写信号端。图(3—1) 为8051单片机的引脚图。
8051单片机内部有4KB的程序存储器,地址范围为0000H到0FFF
当EA引脚为高电平时,程序存储空间的0000H到0FFFH在单片机内部, 1000H到FFFFH在单片机外部;8051单片机内部有128B的数据存储器, 地址范围为00H到7FH。
8051单片机内部地址范围从80H到FFH为特殊功能寄存区,单片机的
输入输出端口,计数器/定时器,串行通信口,累加器以及一些控制寄存器等 都在这个地址空间。
8051单片机有5个中断源,分别为外部中断0,外部中断1,时钟中断0,
时钟中断1和串行通信中断,这些中断分为两个优先级,每个中断源的优先 级都是可编程的。
8051单片机有两个16位定时/计数器,通过编程可以实现4中工作方式
RAM开设了4个通用工作寄存区,共32个通用寄存器,以适应多种中断或子 程序嵌套的使用。
8051单片机有一个功能齐全的指令系统。包括加、减、乘、除等算术运算
第3页共22页
常州大学硬件实习报告
指令,逻辑运算指令,位操作指令,数据传送指令及多种程序转移指令。
图3—1 8051单片机引脚图
(2)74LS138主要是用作片选信号,其A,B,C,E1,E2,E3六个引脚可与单 片机P0.3,P0.4,P0.5,P0.6,P0.7,P2.7相连,E1,E2,E3为它的使能信号, 通过对A,B,C不同的赋值使其选中那八根线中一根线, A,B,C有000到 111不同的八种组合,也正好对应了那八根线。图(3—2)为74LS138引脚图。
图(3—2)74LS138引脚图 图3—2 74LS138引脚图
第4页共22页
常州大学硬件实习报告
(3)ADC0809A/D是8路8位逐次逼近式A/D,每一个通道转换时间需要66到 73个时钟脉冲,约100US。ADC0809是由多路模拟开关,通道地址锁存与译码 器,8位A/D转换器以及三态输出数据锁存器等组成。图(3—3)(3—4)为 ADC0809的引脚图和逻辑框图。
ADC0809转换过程一般为先将任意一数写入需要转换的通道的地址启动该 通道开始转换,当转换完成后EOC引脚会有一个信号传给单片机,如果EOC 此时连接的是单片机控制口P3.2即外部中断0的触发口,则程序中会自动跳入 外部中断0的中断程序,中断程序主要便是将所转换好的A/D值传给单片机, 这样完成了一次A/D转换。
图3—3 ADC0809引脚图
第5页共22页
常州大学硬件实习报告
图3—4 ADC0809逻辑框图
(4)8255A是INTEL公司的一种通用的可编程并行接口电路,在单片机应用系统 中被广泛用于可编程外部I/O扩展接口。它主要由四个逻辑结构组成,包括数据 总线驱动器,3个并行I/O口A,B,C,读写控制逻辑,A组B组控制块。图(3 —5)为8255A引脚图。
8255A在扫描键盘时必须先要往控制口写入控制方式字确定A,B,C是输入 方式还是输出方式。C口地两位作为输出扫描线,B口作为输入口,A口随意, 当没有键按下时,B口所输入的值为0FFH,当有键按下时B口就不等于0FFH, 通过这种方式确定有无键按下,在通过计算B口值哪位为0确定是哪个键按下。 图(3—6)为8255A与键盘连接图。
图3—5 8255A引脚图
第6页共22页
常州大学硬件实习报告
图3—6 8255A与键盘连接图
(5)1062LCD主要用来显示一些简单的字符,如字母与数字,当显示复杂的字符 如汉字效果则不那么好。1602LCD引脚主要有RW,RS,E以及8位数据口,图 (3—7)为1602LCD的引脚图。 图(3—8)(3—9)为LCD1602的四个时序图:当要读取LCD的状态时RW=1, RS=0,E=1;当要读取LCD的数据时RW=1,RS=1,E=1;当要向LCD中写入 指令时RW=0,RS=0,E=1,随后E跳变为0;当要向LCD中写入数据时RW=0,
RS=1,E=1,随后E跳变为0。1602LCD液晶本身自带字符发生器,所以要写入一个字符只需知道它在字符发生器中的编号,一般都为该字符的ASCII码,图(3
—10)为1602LCD字符对照表。此外1602LCD还有8个用户自定义字符区域,从00H到07H,00H对应范围是40H到47H,01H对应的是48H到55H,以此类推,07H对应的是78H到7FH,用户可往这些区域里写入字模,要用时直接调用00H到07H便可。
图3—7 1602LCD引脚图
第7页共22页
常州大学硬件实习报告
图3—8 1602LCD读数据与读状态时序
图3—9 1602LCD写数据与写指令时序
第8页共22页
常州大学硬件实习报告
图3—10 1602LCD字符对照表
3.1.3 硬件框图
A/D转换 模拟量 8051单片机 显示器 并口 键盘 图3—11 系统框图
说明:当程序载入进行仿真时,LCD显示器第一行就会滚动出现名字;名字移
动到中间后停止;当检测有键按下时,就会将所按下键的键值通过8255A的数 据线传给单片机,然后由单片机启动相应A/D转换通道,通过0809的作用,将 此通道通过的模拟量转化成数字量,A/D转换完成后将转换后的数字量通过数 据总线送回单片机,然后再由单片机将数字量送到LCD并显示。
第9页共22页
常州大学硬件实习报告
3.1.4 最小系统图
图3—12 硬件原理图
第10页共22页
常州大学硬件实习报告
(1)连线说明
数据总线 :由P0口直接提供8位数据总线,与LCD1602、8255A和0809的D0—D7 相连,进行单片机与外设之间的数据传递。
地址总线:P0口经8位地址锁存器后形成低8位地址总线A0—A7,高8位地址 P2口直接提供。A3、A4、A5、A6、A7接38译码器形成片选
信号,A15接E1。A0、A1同时接1602LCD的RS、RW,8255的A0、A1 进行LCD 读写控制和8255控制端口的选择。通过38译码器的Y0、Y1、 Y2分别接0809、8255和1062LCD的片选端。 控制总线:P3.2接0809的EOC端口。P3.6(写选通)、P3.7(读选通)分别同时 接0809的ALE、OE端和1602LCD的读、写端。
(2)配套地址
表a ADC0809转换通道地址 A/D通道 地址范围 最小地址 最大地址 IN0 8000H FF00H 8001H FF01H 8002H FF02H 8003H FF03H 8004H FF04H 8005H FF05H 8006H FF06H 8007H FF07H IN1 IN2 IN3 IN4 IN5 IN6 IN7
表b 8255A各口地址 8255A并口 地址范围 最小地址 最大地址 A口 8008H FF0CH 8009H FF0DH 800AH FF0EH 800BH FF0FH B口 C口 控制口
表c l602LCD操作地址 LCD操作 地址范围 最小地址 最大地址 读状态 8012H FF16H 8011H FF15H 8010H FF14H 写数据 写指令
3.2 软件设计 3.2.1流程框图
第11页共22页
常州大学硬件实习报告
开始
外部中断0中断设为 电平跳变方式 SETB IT0 初始化定时器0与1, 各自定时 50ms 使用定时器0与1 MOV TMOD,#11H
给R2变量赋值#79H 开总中断,允许定时器1中断,开启定时器1 N TR1是否为0 Y 给R3变量赋值#0
允许定时器0中断,开启定时器0 向8255A控制口地址写入#82H
向8255AC口地址写入#02H
读取8255AB口地址的值并赋值与A 第12页共22页 常州大学硬件实习报告
Y A是否为#0FFH N 延迟消抖 读取8255AB口地址的值并赋值与A A是否为#0FFH N 给R3变量赋值#0 RRC A R3加1 N C是否为0 Y 图3—13 主程序图
说明:主程序主要首先等待完成LCD第一行滚动显示,然后就是键盘扫描,当 有键按下,R3会记录有关信息,从而控制通道选择。
第13页共22页
Y 常州大学硬件实习报告
中断入口 N 是否满0.5S Y R2加1 Y R2是否为8EH N LCD清屏 R2的值赋给R3 R4变量赋值#0 DPTR赋TABLE的地址 选择LCD的R3地址 关闭定时器1 CLR TR1 将R4的值赋给A 查表 初始化定时器1 往LCD中写入A R3值减1 R4值加1 Y R3是否为#79H N R4是否为#12 Y N 返回 图3—14 定时器1的中端程序
说明:定时器1的中断入口地址为001BH,该中断程序就是为了实现在LCD 上滚动显示自己的名字 。
第14页共22页
常州大学硬件实习报告
中断入口 N 是个满200MS Y R3是否为0 Y N 将A/D转换通道0的地址赋给DPTR R3减1 DPTR加R3 N Y 清除IE0 CLR IE0 启动A/D转换
IE0是否为1 读取A/D转换值 在LCD第二行顺序显示IN与通道号以及冒号与A/D转换值 初始化定时器0 返回 图3—15 定时器0的中断程序
说明:定时器0的中断入口地址为000BH,该中断程序每200MS扫描R3的值, 启动相应的A/D转换通道,将值在LCD上显示。
第15页共22页
常州大学硬件实习报告
3.2.2 程序清单
ORG 0000H AJMP MAIN
ORG 000BH /定时器0的中断程序入口地址 LJMP ITOP1
ORG 001BH /定时器1的中断程序入口地址 AJMP ITOP2
MAIN: MOV TMOD,#11H /定时器0,1都选择方式1即16位计数方式 MOV TH0,#3CH /定时器0选择定时50ms MOV TL0,#0B0H
MOV TH1,#3CH /定时器1选择定时50ms MOV TL1,#0B0H
SETB IT0 /设置外部中断0的中断方式为电平跳变方式 MOV R0,#4
MOV R1,#40H /从这里到sjmp loop1是对1602LCD写入‘:’字模 MOV R2,#00H LOOP1:CJNE R1,#48H,LOOP2
SJMP LOOP3 LOOP2:MOV A,R1
LCALL LCDSELECT MOV A,R2
MOV DPTR,#TABLE1 MOVC A,@A+DPTR LCALL LCDWRITE INC R1 INC R2
SJMP LOOP1
LOOP3:MOV A,#38H /对LCD初始化操作,LCD使用之前必须先进行初始化
LCALL LCDSELECT MOV A,#0CH
LCALL LCDSELECT MOV A,#06H
LCALL LCDSELECT MOV A,#01H
LCALL LCDSELECT
MOV R1,#10 /延长定时时间为0.5s MOV R2,#79H
SETB EA /开总中断
SETB ET1 /允许定时器1中断 SETB TR1 /开启定时器1
LOOP21:MOV C,TR1 /判断定时器1是否还开启
JC LOOP21
MOV R3,#00H
MOV DPTR,#0F00BH /8255控制口地址
第16页共22页
常州大学硬件实习报告
MOV A,#82H
MOVX @DPTR,A /选择C口为输出口,B口为输入口 SETB ET0 /允许定时器0中断 SETB TR0 /开启定时器0 LOOP4:MOV DPTR,#0F00AH /8255C口的地址 MOV A,#02H
MOVX @DPTR,A /使8255C口的最低位为0 MOV DPTR,#0F009H /8255B口的地址 MOVX A,@DPTR /读取8255B口的值
CJNE A,#0FFH,LOOP5 /B口值不等于0FFH时转移 SJMP LOOP4 /继续扫描 LOOP5:LCALL DELAY /延迟消斗 MOV DPTR,#0F009H
MOVX A,@DPTR /再次读取B口值
CJNE A,#0FFH,LOOP6 /若还是不等则表明确实有键按下 SJMP LOOP4 /若不等则返回继续扫描 LOOP6:MOV R3,#00H /R3初始值为0 LCALL KEY SJMP LOOP4
KEY: /KEY函数是判断读取值第几位为0从而判断是哪个键按下 RRC A
INC R3 /存储在R3中 JNC LOOP7 SJMP KEY
LOOP7: RET /返回扫描程序
DELAY:MOV R5,#39H /延迟子程序 LOOP8:MOV R6,#00H LOOP9:DJNZ R6,LOOP9 DJNZ R5,LOOP8 RET
LCDBUSY: /1602LCD忙信号判断
PUSH ACC
MOV DPTR,#0F012H /读1602LCD地址 LOOP10: MOVX A,@DPTR
ANL A,#80H
CJNE A,#80H,LOOP11 /若读取值的最高位为1则表示LCD忙,等待直到
最高位为0则跳转
SJMP LOOP10
LOOP11: LCALL DELAY /延迟一会 POP ACC
RET /子程序返回
第17页共22页
常州大学硬件实习报告
LCDSELECT:
LCALL LCDBUSY /判断LCD是否忙,不忙继续执行 MOV DPTR,#0F010H /选择LCD所要写入数值的地址的地址 MOVX @DPTR,A /选择地址 RET /子程序返回 LCDWRITE:
LCALL LCDBUSY /判断LCD是否忙,不忙继续执行 MOV DPTR,#0F011H /往LCD中写入数值的地址 MOVX @DPTR,A /所要写入的数值 RET
ITOP1:
PUSH ACC /将A以及地址压入堆栈 PUSH DPH PUSH DPL
DJNZ R0,LOOP17 /等到200ms后执行 MOV R0,#4 /初始化R0
CJNE R3,#00H,LOOP12 /R3如为0则表示没有键按下,返回 SJMP LOOP17
LOOP12: MOV A,R3
DEC A /将A值减一方与键值对应
MOV DPTR,#0F000H /将ADC0809通道0的地址给DPTR,
ADD A,DPL /加上A的偏移量即是所要启动转换的通到地址 MOV DPL,A
MOVX @DPTR,A /启动相应通道的A/D转换
LOOP13: MOV C,IE0 /判断外部中断0的中断标志是否为1,不为1则
等待,表明还没有转换好
JNC LOOP13
CLR IE0 /清除外部中断标志位 MOVX A,@DPTR /读取A/D转换值
MOV R4,A /将转换好的值存于R4中 MOV A,#0C0H /LCD的第二行开始地址 LCALL LCDSELECT /选中这个开始地址 MOV A,#73 /字母I的ascii码
LCALL LCDWRITE /往LCD第二行首地址写入字母I MOV A,#78 /字母N的ascii码
LCALL LCDWRITE /往LCD第二行下一个地址写入字母N MOV A,R3 /R3减一即为A/D转换通道号 DEC A
ADD A,#48 /得到该数在机器中的ascii码
LCALL LCDWRITE /往LCD第二行下一个地址写入对应A/D转换
通道号
MOV A,#00H /00H即开始往LCD中写入的用户自定义字模:
第18页共22页
常州大学硬件实习报告
LCALL LCDWRITE /往LCD第二行下一个地址写入符号‘:‘ MOV A,R4 /将存储在R4中A/D转换值赋给A ANL A,#0F0H /取得这个A/D转换值的高四位 SWAP A /将A中高四位与低四位交换位置 CLR C
SUBB A,#10 /判断此时A中的数值是否大于10,因为0到9
与a到f转换成ascii码所需的偏移量不一样
JC LOOP14 /C为1时说明A中的数值比a小即数值在0到9之间 MOV A,R4 /没有跳转表明A中的数值在a到f之间,由于A中数
值已经变化所以要重新从R4中获得A/D转换值
ANL A,#0F0H
SWAP A /重新得到A/D转换值的高四位并与低四位交换位置 ADD A,#55 /A中的值是在a到f之间,转换成相应的ascii码需
要加上偏移量55
LCALL LCDWRITE /选中LCD第二行下一个地址写A/D转换值的高四位 SJMP LOOP15 /准备写入A/D转换值的低四位
LOOP14: CLR C /清零C,此时表明A中的数值是0到9之间的 MOV A,R4 /A中值被破坏,重新获得A/D转换值
ANL A,#0F0H
SWAP A /重新得到A/D转换值的高四位并与低四位交换位置 ADD A,#48 /由于A中的值是在0到9之间,所以转换成相应的
ascii码需要加上偏移量48
LCALL LCDWRITE /选中LCD第二行下一个地址写入A/D转换值的高
四位
LOOP15: MOV A,R4 /以下是写入A/D转换值的低四位,同理 ANL A,#0FH SUBB A,#10 JC LOOP16 MOV A,R4
ANL A,#0FH ADD A,#55
LCALL LCDWRITE SJMP LOOP17 LOOP16: CLR C MOV A,R4 ANL A,#0FH ADD A,#48
LCALL LCDWRITE LOOP17: POP DPL POP DPH
POP ACC /出堆栈
MOV TH0,#3CH /重新装入计数初值 MOV TL0,#0B0H RETI
第19页共22页
常州大学硬件实习报告
ITOP2: /此段代码即是实现名字在LCD上滚动的效果 DJNZ R1,LOOP19 /是否到1s时间 MOV R1,#10 /给R1重新赋初值 INC R2
MOV R4,#00H
CJNE R2,#8CH,LOOP18
CLR ET1 /关定时器1中断 CLR TR1 /关闭定时器1 SJMP LOOP20
LOOP18: MOV A,#01H /清屏 LCALL LCDSELECT MOV R3,R2 LOOP23:MOV A,R3
LCALL LCDSELECT MOV A,R4
MOV DPTR,#TABLE2 MOVC A,@A+DPTR LCALL LCDWRITE DEC R3 INC R4
CJNE R3,#79H,LOOP22 SJMP LOOP19
LOOP22:CJNE R4,#8,LOOP23 SJMP LOOP19 LOOP19:MOV TL1,#0B0H MOV TH1,#3CH
LOOP20:RETI
TABLE1:DB 00H,00H,10H,10H,00H,10H,10H,00H /即是符号‘:’的字模 TABLE2:DB 4FH,41H,54H,20H,4EH,55H,59H,20H,47H,4EH,41H,54H/OAT NUY
GNAT的ascii码(中间有空格)
END
第20页共22页
常州大学硬件实习报告
3.3 调试过程与结果
3.3.1 调试过程
每一个较大项目在实现其功能时不可能一次就会出现想要的结果,必须 过不断的调试和修改程序,才能够很好的实现其功能。 对于本次的设计,存在着两个难点:
(1)怎样让LCD的第一行滚动显示自己的名字?
(2)如何能够时时检测变换的模拟量并送到LCD第二行显示出来? 对于问题(1),解决问题的方法是(针对我的名字而言)在程序有名字 的14种状态即是o,ao,tao, tao,n tao……以此类推最后为tang yun tao每
到0.5S就让其切换到下一个状态,这样人眼看起来就好像是在滚动。 对于问题(2),解决问题的方法是通过一个定时器0计时解决。设定定时器 定时200ms,当键盘确实有键按下,则记下这键的信息给R3,R3的初始值为 0,每当200ms时间到了,中断程序就会判断R3是否为0,若为0则表明有 任何键按下就返回(即没有键按下),若不为0表明有键按下,在根据R3中 信息判断启动哪个A/D转换通道,这样就可以时时检测变换的模拟量。
3.3.2 调试结果
将线连接好,打开试验箱电源,选择通信口将程序下载进去,首先会看到 在LCD的第一行上滚动显示自己的名字,当滚动到中间就停止下来。然后开 始按键盘,当按下数字0到7时,会启动相应的A/D转换通道,转换好后会 将A/D转换值打在LCD的第二行,转动电位器,会发现A/D转换值变化。 图(3—16)为截取的部分结果图。
图3—16 通道0显示A/D转换值
第21页共22页
常州大学硬件实习报告
4. 设计心得 4.1设计心得
通过这次的单片机课程设计,我收获了很多。一开始认为课程设计很简单,
就是用了一个LCD1602和ADC0809两个比较重要的器件,再通过以前做实验做过的程序例子稍微改改就可以做出来。但真正自己上手去做的时候,发现各种问题。比如对单片机最基本的P0~P3不是了解,对ADC0809的进行AD转换过程不是很熟悉。通过这次实习,我对单片机硬件原理有了深刻的了解。严谨的科研作风,实事求是的工作态度,夜以继日的付出,才能做出优秀的作品。
在这次课程设计中,我不是完成程序的主要力量,但在完成程序和实现功能
的过程中,我认真参与了其中,弄清楚了整个程序的功能。态度决定一切,细节决定成败。做好一个项目,要有认真的态度和扎实的专业知识。
5. 参考文献 5.1 参考文献出处
(1) 赵德安等编著.单片机原理与应用(第二版):机械工业出版社 (2) 黄子强编著.液晶显示原理:国防工业出版社 (3)详见 http://www.51hei.com/bbs/
第22页共22页
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务