基于ADuC848开发板的单片机实验和课程设计指导书资料.doc

上传人:1595****071 文档编号:52276241 上传时间:2022-10-22 格式:DOC 页数:290 大小:2.29MB
返回 下载 相关 举报
基于ADuC848开发板的单片机实验和课程设计指导书资料.doc_第1页
第1页 / 共290页
基于ADuC848开发板的单片机实验和课程设计指导书资料.doc_第2页
第2页 / 共290页
点击查看更多>>
资源描述

《基于ADuC848开发板的单片机实验和课程设计指导书资料.doc》由会员分享,可在线阅读,更多相关《基于ADuC848开发板的单片机实验和课程设计指导书资料.doc(290页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Good is good, but better carries it.精益求精,善益求善。基于ADuC848开发板的单片机实验和课程设计指导书-基于ADuC848嵌入式系统的实验和课程设计指导书(内部使用)二一二年四月目录第一章硬件系统介绍51.1板上资源分布51.2单片机ADuC84861.2.1ADuC848的简要介绍(针对本设计所选择的型号)61.2.2单片机引脚分布61.3电源模块81.4模数/数模转换91.4.1模数转换91.4.2数模转换91.5RS232串口101.6PS/2接口和红外接收111.7显示模块111.7.1LCD显示111.7.2数码管121.7.38路LED13

2、1.8蜂鸣器和红外发送141.9SPI接口、步进电机控制151.10按键输入151.11IIC总线(RTC时钟和EEPROM)161.12复位与下载17第二章基础实验18汇编实验18实验一I/O口控制实验18实验二定时器、中断实验20实验三数码显示实验24实验四蜂鸣器驱动实验29实验五12864点阵型液晶显示实验32实验六1602字符显示实验44实验七矩阵键盘实验53实验八D/A转换实验56实验九步进电机控制实验60C语言实验63实验一端口输出操作63实验二定时器及定时器中断66实验三数码管显示69实验四矩阵式键盘识别73实验五蜂鸣器驱动实验77实验六1602字符显示实验82实验七12864点

3、阵型液晶显示实验85实验八A/D转换实验95实验九步进电机控制实验102第三章系统设计方法及设计课题10831单片机应用系统的设计过程108311方案论证和硬件系统设计108312系统软件设计109313系统仿真调试设计10932设计课题110321多功能定时装置110322程控多波形信号发生器111323LCD汉字计时报讯屏111324简易多功能计数器112325LCD字符显示屏112326抢答器113327秒表113328数字密码锁113329简易电子琴1143210LCD显示的交通信号灯1143211步进电机控制器1143212A/D,D/A转换板1153213电子计算器1153214可

4、编程微波炉控制系统1153215简易超市收银机1163216全自动洗衣机控制器1173217多功能走马灯1173218仿手机键盘1183219仿电梯控制1183220仿汽车自动报站器1183221电机调速器1193222电压监视仪1193223自定义课题11933评分标准和注意事项120331选择课题120332评分标准120333实验室设备使用及安全和赔偿条例120第四章KeiluVision4的使用1224.1前言1224.2新建工程1224.3工程设置1254.4编译连接、下载和调试程序1284.4.1编译程序1284.4.2在线下载程序1284.4.3在线调试程序1304.4.4软件仿

5、真调试程序133第五章PROTEUS的使用1345.1前言13452操作步骤134521进入系统134522界面简介134523操作步骤13753Proteus与KeiI的结合141附录一课程设计报告参考模板142附录二开发板硬件图144第一章硬件系统介绍本单片机学习板集成多个基础硬件资源模块,各个资源模块可以相互组合使该板实现不同的功能。因此,本学习板既可用于51单片机的教学实验,又可用于做功能比较强的单片机课程设计,是51单片机初学者的好帮手。1.1板上资源分布如图1.1所示。图1.1板上资源分布1、2、3:单片机P0、P2、P3口引出接口(有限流保护电阻);4:上排图形点阵LCD1286

6、4的接口、下排LCD1602的接口;5、6:两路16位ADC输入、可作差分输入;7、8:12位DAC输出、对DAC输出进行比例放大或者跟随的运放;9:单片机AduC848;10:无源蜂鸣器、由单片机PWM模块输出信号控制;11:8位数码管;12:SPI接口;13:RS232串口(通过串口在线下载、单步、断点、运行到某一行等方式调试程序);14:步进电机(5V、70欧姆、6线4相)接口;15:8路LED,从左至右为LED70,分别被P0.7P0.0控制;16:复位按键和下载按键;17、18:IIC总线上的EEPROMAT24C08和RTCDS1307;19:IIC接口;20:PS/2接口;21:

7、红外接收头;22:功能选择和配置插针;23:4X4矩阵式键盘或4个独立按键;24:直流电源输入;此外还有红外二极管(由单片机PWM模块输出信号控制)、USB电源输入接口。1.2单片机ADuC8481.2.1ADuC848的简要介绍(针对本设计所选择的型号)详细情况请参考芯片手册。1、8051-basedcore、5V供电电压;2、可以通过串口在线下载程序和单步、断点、运行到某一行等方式调试程序;3、16位8通道-ADC,片内有1.25V参考电压、buffer和PGA;4、12位电压输出DAC、Dual16-BIT-DAC;5、32kbyte程序存储器、4kbyte用户信息Flash存储器、25

8、6RAM+2048XRAM(byte);6、PLL(12.58MHzmax)(片外只需接32.768kHz晶振);7、316位定时/计数器、看门狗定时器;8、11中断源(2优先级)、11位堆栈指针;9、24I/O+8模拟或数字输入;10、UART、SPI和I2C、高速115200波特率发生;11、Powersupplymonitor、上电复位、Dual200A激励电流源。1.2.2单片机引脚分布详见原理图。Pin14:(P1.0P1.3)作为矩阵式键盘或独立按键的输入,P1口只能用于输入,默认用于模拟输入,作为数字输入使用时应先往P1口相应引脚写0,这里可以用P0&=0xf0。若P2、P3、P

9、0口要作为输入,则应往相应引脚写1。Pin5、6:AVDD、AGND,模拟电源输入。Pin7、8:外部参考电压接入,Pin7接AGND。片内DAC有2.5V内部参考,ADC有1.25V内部参考。Pin9、10:(P1.4、P1.5)两路AD输入,可做差分输入,需要设置ADC的寄存器。Pin11、12:(P1.6、P1.7)各200uA激励电流源,可配合RTD等做应用。Pin13:两路AD输入做普通输入时的电压参考端,AD输入电压不能低于此引脚电压。Pin14:片内DAC输出。Pin15:复位引脚。Pin16、17:单片机RS232接口的RXD(P3.0)TXD(P3.1)。Pin18:(P3.

10、2)外部中断0,用于红外接收和PS/2接口。Pin19:(P3.3)LCD1602,LCD12864A的EN引脚,控制第一位数码管。Pin20、21:DVDD、DGND数字电源输入。Pin22:(P3.4)PS/2接口的data信号。Pin23:(P3.5)LCD1602和LCD12864A的RW。Pin24:(P3.6)LCD1602和LCD12864A的RS。Pin25:LCD12864A的CS1。Pin26:IIC接口时钟信号。Pin27:IIC接口data信号。Pin28:(P2.0)SPI接口时钟信号。Pin29:(P2.1)SPI接口MOSI信号、控制第6位数码管的位码。Pin30

11、:(P2.2)SPI接口MISO信号、控制第7位数码管的位码。Pin31:(P2.3)SPI接口SS信号、控制第8位数码管的位码;P2.03也作为4X4矩阵式键盘的扫描输出信号、步进电机的控制信号、数码管第数码管第6、7、8位位码。但是SPI、4X4矩阵式键盘、步进电机、数码管第6、7、8位功能不能同时实现。Pin32、Pin33:接外部32.768KHz晶振。Pin34、Pin35:DVDD、DGND。Pin36:(P2.4)LCD12864A的CS2。Pin37:(P2.5)内部PWM模块输出,控制红外LED。Pin38:(P2.6)内部PWM模块输出,控制蜂鸣器。Pin39:(P2.7)

12、内部PWM模块的外部时钟输入(也可以用内部时钟)。Pin40:EA,低电平有效,正常使用时拉低。Pin41:PSEN,在此引脚电平为低时按复位键进入debug模式,可以下载和调试程序。Pin42:ALE。Pin47、Pin48:DGND、DVDD。Pin43、44、45、46、49、50、51、52:P0口、LCD1602和LCD12864的数据总线,数码管的段码。1.3电源模块电源模块原理图如图1.2所示。本学习板共有如下3种供电方式:(1)5V电源适配器供电(开关往上拨、插针1下面两脚接跳线帽)。将开关sw4第2、3脚接通(开关往上拨),电源网络DVDD连接到插针1第2脚的输出,将插针1的

13、第1、2脚(插针1下面两脚)接跳线帽,DVDD直接连接到电源适配器输入端,即为5V电源适配器供电模式。(2)712V电源适配器供电(开关往上拨、插针1上面两脚接跳线帽)将开关sw4第2、3脚接通(开关往上拨),电源网络DVDD连接到插针1第2脚的输出,将插针1的第2、3脚(插针1上面两脚)接跳线帽,DVDD连接到稳压芯片7805的输出,而7805的输入端连接到电源适配器输入端,即为712V的电源适配器经7805给学习板供电的模式。(3)USB供电(开关往下拨)。将开关sw4第1、2脚接通(开关往下拨),电源网络DVDD连接到USB电源输入端。对DVDD网络和AVDD网络设了测试点,方便调试。测

14、试点具体位置参见附图1。1.4模数/数模转换1.4.1模数转换ADuC848内部有16位ADC,模拟信号输入模块原理图如图1.3所示。图1.3模拟信号输入模块D15和D16为钳位保护二极管,R55为限流保护电阻。其中CONAIN1对应板上的接口5、CONAIN2对应板上的接口6。CONAIN1和CONAIN2的第1、2脚在板上的分布和在原理图上的类似,均为1脚朝上。模拟信号有两种输入方式:(1)两路单端输入。把输入信号电压高的一端接到第1脚,电压低的一端接到同一个接口的第2脚。(2)一路差分输入。把输入信号的两端分别接到CONAIN1和CONAIN2的第1脚。1.4.2数模转换ADuC848内

15、部有12位DAC,并有专门的DA输出引脚。DAC信号输出模块原理图如图1.4所示。图1.4DAC信号输出模块本设计对片内DA的输出配置了运放LM358(该运放在单电源情况下对较低电平仍具有很好跟随效果),以增强其驱动能力或对DA输出做适当放大,其中R56和R57的大小决定放大倍数(A=1+R90/R89)。1.5RS232串口串口连接原理图如图1.5所示。图1.5RS232串口模块该模块中采用maxin公司的max232作电平转换,为方便调试硬件,对RXD,TXD信号设测试点和LED。测试点和LED具体位置参见附图1。1.6PS/2接口和红外接收该模块原理图如图1.6所示。图1.6PS/2接口

16、和红外接收模块本设计中外部中断0(P3.2)连接到PS/2接口的时钟信号或者红外接收头SM0038的输出。可以通过插针进行选择。外部中断1作普通IO口使用。该模块原理图如图2.6所示。关键网络名解释:(1)PS2_CLK:PS/2接口时钟信号(2)PS2_DATA:PS/2接口数据信号(3)INT0:外部中断0(4)INF_IN:红外一体化接收头SM0038的输出。插针配置:(1)J13第1、2脚(板上为插针11左边两脚)接跳线帽,INT0接PS/2的clock信号。(2)J13第2、3脚(板上为插针11右边两脚)接跳线帽,INT0接红外信号。1.7显示模块本系统共有四种显示模式可供选择,这四

17、种模式分别是:LCD12864、LCD1602、数码管、8路LED。引脚复用:四种显示模式复用数据总线,控制总线,故用户只可选择其中一种使用。1.7.1LCD显示LCD显示信号连接图如图1.7所示。图1.7LCD信号连接关键网络名和引脚名解释:(1)DISCTRL04:显示控制信号。(2)D0D7、DB0DB7:数据总线。(3)E:LCD使能信号。(4)RS:数据、指令选择信号。(5)RW:读、写选择信号。(6)CS1、CS2:LCD12864由两部分组成,CS1和CS2为选择信号。板上接口4的上排位LCD12864的接口,下排位LCD1602的接口,排针和排母左对齐插入。切勿插错。1.7.2

18、数码管该模块原理如图1.8所示。图1.8数码管驱动电路关键网络名解释:(1)DS07:数码管段码。(2)BIT07:数码管位码。(3)MOTORAD:步进电机驱动信号。(4)DISCTRL04:显示控制信号,控制数码管低5位。(5)D08:单片机P0口。本设计采用共阴极数码管,段码由PNP三极管驱动,位码由NPN型三极管驱动。引脚复用:数码管低5位(板上为右边5位)的位码由DISCTRL04控制,可单独使用,高3位的位码控制信号与SPI信号,电机驱动信号,4X4矩阵式键盘复用,使用数码管高3位时参与复用的其他功能则不能使用。插针配置:(1)若要使用数码管第40位(板上为右边5位),可以接通插针

19、8,为减少功耗,不用请断开。(2)若要使用数码管第75位(板上为左边3位),可以分别接通插针57和9,为减少功耗,不用请断开。1.7.38路LED该模块原理如图1.9所示。图1.98路LED8个LED接P0口,低电平时LED亮,这样不会影响P0口逻辑电平。LED限流电阻取4.7K,通过LED电流约为0.8mA,在P0口驱动能力范围之内。该部分可以用于做跑马灯等实验、帮助用户更好的了解和熟练对端口的操作、还可以用于观测P0口的状态。插针配置:(1)若要使用该模块,可以接通插针2,为减少功耗,不用请断开。1.8蜂鸣器和红外发送该模块原理图如图1.10所示。图1.10蜂鸣器和红外发送本设计中采用无源

20、电磁式蜂鸣器,蜂鸣器由PWM1(P2.6)控制,红外二极管由PWM0(P2.5)控制。PWM1和PWM0均为片内PWM模块的输出。蜂鸣器和红外LED的驱动均采用普通NPN三极管。为方便调试,对该模块中的信号设了测试点,具体位置参见附图1。插针配置:(1)若要使用蜂鸣器,可以接通插针3,为减少功耗,不用请断开。(2)若要使用红外二极管,可以接通插针4,为减少功耗,不用请断开。1.9SPI接口、步进电机控制该模块原理图如图1.11所示。图1.11步进电机驱动电路本设计中步进电机为5V、70欧姆、4相步进电机。引脚复用:AduC848内部有SPI通信模块,所占用的引脚为P2.0P2.3。同时,P2.

21、0P2.3又复用作步进电机控制信号、4X4矩阵式键盘列扫描信号,P2.1P2.3还复用为数码管第5、6、7位位码控制信号。参与复用的一项功能使用时,其他参与复用的功能则不能使用。插针配置:(1)若要驱动步进电机,可以接通插针9,为减少功耗,不用请断开。1.10按键输入该模块原理如图1.12所示。图1.12按键模块由于P1口(用于行扫描)内部无上拉电阻,为使无键按下时行信号为高电平,故将行信号接上拉电阻,电阻大小10K即可。引脚复用:P2.0P2.3为4X4矩阵式键盘列扫描信号,又复用作步进电机控制信号,SPI信号、P2.1P2.3还复用为数码管第5、6、7位位码控制信号。参与复用的一项功能使用

22、时,其他参与复用的功能则不能使用。插针配置:(1)插针10上面两脚接跳线帽,4X4矩阵式键盘输入,行扫描信号为P1.0P1.3,列扫描信号为P2.02.3。(2)插针10下面两脚接跳线帽,独立按键输入,该模式有4个独立按键可用,按键扫描所用端口为P1.0P1.3。这4个按键为4X4矩阵键盘的左边4个按键。1.11IIC总线(RTC时钟和EEPROM)该模块原理图如图1.13所示。图1.13IIC总线连接AduC848片内有I2C模块,并有独立的引脚SCLOCK和SDATA。板上的RTC时钟芯片DS1307和EEPROM芯片AT24C08均使用了I2C总线。板上设置了I2C接口,方便MCU与板外

23、的I2C设备进行通信。对SCLOCK和SDATA设置了测试点。具体位置参见附图1。1.12复位与下载复位与下载电路如图1.14所示。图1.14复位与下载进入下载或调试模式的步骤为:(1)按住BTN1(downordebug按键)不要放开;(2)按下BTN2(reset按键),然后放开BTN2(reset按键);(3)放开BTN1(downordebug按键)。这样单片机就进入了调试模式,可以下载或调试程序。第二章基础实验汇编实验实验一I/O口控制实验一、实验目的1、学习P0、P1、P2、P3口的使用方法2、学习延时子程序的编写和使用3、学习KeiluVision4软件的使用二、实验内容及步骤用

24、P0口做输出口,接八位LED显示,程序功能使发光二极管从右到左轮流循环点亮。1、使用单片机最小应用系统。开关往下拨,使用5VUSB电源模式。若要使用其他电源,开关和插针1的设置请参考1.3节;2、插针2(LED)用短路帽接通,使能连接板上8路LED。其它插针如下图。3、在线下载和调试程序前请检查硬件配置、电源的连接、RS232通信线的连接、工程设置、通信端口的选择。4、打开KeiluVision4仿真软件,首先建立本实验的项目文件,接着添加源程序,进行编译,直到编译无误。进行软件设置,选择硬件仿真,选择串行口。5、打开电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。发光

25、二极管单只从右到左轮流循环点亮。三、流程图及源程序1流程图2源程序ORG0000HLJMPLOOPORG0100HLOOP:MOVR3,#0FEHMOVR2,#08HOUTPUT:MOVP0,R3MOVA,R3RLAMOVR3,AACALLDELAYDJNZR2,OUTPUTLJMPLOOPDELAY:MOVR6,#00HMOVR7,#00HDELAYLOOP:DJNZR6,DELAYLOOP;延时程序DJNZR7,DELAYLOOPRETEND四、思考题(1)修改程序,使发光二极管的现象发生变化。例如:全亮发光二极管一个一个的熄灭全灭,循环显示(2)对于本实验延时子程序Delay:MOVR6

26、,#00HMOVR7,#00HDelayLoop:DJNZR6,DelayLoopDJNZR7,DelayLoopRET假设使用12MHz晶振,粗略计算此程序的执行时间为多少?实验二定时器、中断实验一、实验目的1学习CPU内部计数器的使用和编程方法。2掌握中断处理程序的编程方法。3掌握Proteus软件的使用方法二、实验内容和原理1、实验内容模拟时序控制装置。观测发光二极管现象:L1、3L2、4L5、7L6、8L1、3、5、7L2、4、6、8全亮全灭2、时间常数的计算。CPU内部定时器,按方式工作,每秒钟溢出中断一次。(假设使用6.144MHz晶振)机器周期晶振频率()设初值为,则(),三、实

27、验步骤(略,同实验一)四、程序流程图及源程序:1、中断子程序流程图:中断入口关闭计数控制位计数值减1装入时间常数开放计数控制位返回2、主程序流程图入口置首显示代码(A),初始地址偏移量(R1),计数初值(R0)定时器1初始化,设计数初值开放EA,ET1,TR1R0=0装计数初值于R0指向下一个显示代码单元地址偏移=10装入初始偏移量从表中取显示代码显示NNY3、 程序清单:ORG0000HLJMPSTARTORG001BHJMPIT11ORG0030HSTART:MOVA,#0FAHMOVR1,#03HMOVR0,#0AHMOVTMOD,#10HMOVTL1,#00HMOVTH1,#38HOR

28、LIE,#88HSETBTR1LOOP1:CJNER0,#00,DISPMOVR0,#0AHINCR1CJNER1,#0BH,LOOP2MOVR1,#03LOOP2:MOVA,R1MOVCA,A+PCLJMPDISPDB0FAH,0F5H,0AFH,5FH,0AAH,55H,00H,0FFHDISP:MOVP0,AJMPLOOP1IT11:CLRTR1DECR0MOVTL1,#00HMOVTH1,#38HSETBTR1RETIEND五、思考题:1、改变发光二极管闪烁的间隔时间。2、P1口添加一个暂停按键,当该键按下时显示暂停,保持当前状态;再次按键,继续显示。3、去掉定时与中断,编写延时子程序

29、。4、P1口添加多个按键,分别对应实现不同的显示功能。(例如:暂停键、显示状态顺序执行和逆序执行键)实验三数码显示实验一、实验目的1进一步掌握定时器的使用和编程方法。2了解七段数码显示数字的原理。3熟练掌握KeiluVision4和Proteus联调的方法。二、实验内容做一个电子钟:利用定时器0定时中断,控制电子钟走时;利用单片机上的四位数码管显示分钟和秒钟。三、程序流程图和源程序初始化程序1、主程序流程图开始计数取显示单元值,转为段码送段数据口显示缓冲单元首址R0,扫描初值R2扫描值送位数据口显示单元地址加一扫描值带进位位(=0)右移一位N扫描值=0?Y取分、秒计数值,经变换放入相应显示单元

30、2、中断子程序流程图:中断入口定时器置初值Y计时单元=10?NY计时单元置0秒加一,十进制调整秒值=60?NY秒置0,分加一,十进制调整分值=60?NY分置0返回3、程序清单:ST_ADDREQU0000HBUFEQU23HSBFEQU22H;存放秒MBFEQU21H;存放分ORGST_ADDRLJMPMAINORGST_ADDR+0BH;定时器0中断入口LJMPCLOCKORGST_ADDR+200HMAIN:MOVR0,#40HMOVA,#00HMOVR0,AINCR0MOVR0,AINCR0MOVR0,AINCR0MOVR0,AINCR0MOVR0,AINCR0MOVR0,AANLTMO

31、D,#0F0HORLTMOD,#01HMOVTL0,#00HMOVTH0,#38HMOVBUF,#00H;清零MOVSBF,#00HMOVMBF,#00HSETBET0;开定时器0SETBEASETBTR0DS1:MOVR0,#45HMOVR2,#08HDS2:CLRP2.4MOVA,R2MOVP3,R2MOVA,R0LCALLTABLEMOVP0,ALCALLDELAY1;延时DECR0CLRCMOVA,R2RLCAMOVR2,ACJNER2,#10H,LLRLCAMOVR2,ALL:CJNER2,#00H,DS2MOVR0,#45HMOVA,SBFLCALLGETMOVA,MBFLCALL

32、GETSJMPDS1TABLE:INCAMOVCA,A+PCRETDB03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,19H,0BFHGET:MOVR1,AANLA,#0FHMOVR0,ADECR0MOVA,R1SWAPAANLA,#0FHMOVR0,ADECR0RETCLOCK:MOVTL0,#00H;定时器中断子程序MOVTH0,#38HPUSHPSWPUSHACCINCBUFMOVA,BUFCJNEA,#0AH,QUITMOVBUF,#00HMOVA,SBFINCADAAMOVSBF,ACJNEA,#60H,QUITMOVSBF,#00HMOVA,MBFADDA,

33、#1HDAAMOVMBF,ACJNEA,#60H,QUITMOVMBF,#00HQUIT:POPACCPOPPSWRETIDELAY1:MOVR4,#10;延时程序DEL11:MOVR5,#0AHDEL12:MOVR3,#18HDEL13:DJNZR3,DEL13DJNZR5,DEL12DJNZR4,DEL11RETEND四、实验板插针配置:使用数码管第30位(板上为右边4位),用短路子接通插针8。五、思考题1改变显示内容,使数码管显示小时和分钟。2在第一题的基础上,改写程序,使第二个数码管的小数点做为秒闪,按一秒的周期闪烁。3在原程序的基础上,改写程序,使数码管分时显示小时和分钟、分钟和秒钟

34、。4添加按键,可以调整时钟和分钟。实验四蜂鸣器驱动实验一、实验目的1了解输入/输出端口控制方法。2了解音频发声原理。二、实验原理音阶由不同频率的方波产生,音阶与频率的关系如表一所示。方波的频率由定时器控制。定时器计数溢出后,产生中断,将P2.6口取反即得周期方波。每个音阶相应的定时器初值可按下法计算:晶振为6.144MHZ时,音阶“1”相应的定时器初值为X,则1262*2=(216-X)*12(6.144*106)可得X=64559D=FC2FH,其它的可同样求得(见下表单位:HZ,X为16进制)音调45671234567123频率1751962202472622943303493924404

35、94523587659XFA49FAE6FB7EFC0CFC2FFC8FFCF8FD23FD73FDBAFDFAFE18FE4CFE94音的节拍由延时子程序实现。延时子程序实现基本延时时间,节拍值只能是它的整数倍。三、实验内容及步骤利用P2.6口输出不同频率的脉冲通过蜂鸣器发出不同频率音调。用短路帽接通插针三。四、程序流程图和源程序1、中断子程序流程图2、主程序流程图3、源程序清单ST_ADDREQU0000HORGST_ADDRLJMPMAINORGST_ADDR+1BHLJMPINT_0ORGST_ADDR+200HMAIN:ANLTMOD,#0FHORLTMOD,#10HSETBET1S

36、ETBEAMOVDPTR,#TONEMOVA,#00HLOP:MOVCA,A+DPTRJZMAINMOVR5,AMOVTH1,AINCDPTRMOVA,#00HMOVCA,A+DPTRMOVR6,AMOVTL1,R6SETBTR1INCDPTRMOVA,#00HMOVCA,A+DPTRMOVR2,ALOOP1:MOVR3,#80HLOOP2:MOVR4,#0FFHLOOP3:DJNZR4,LOOP3DJNZR3,LOOP2DJNZR2,LOOP1INCDPTRMOVA,#00HLJMPLOPINT_0:PUSHDPHPUSHDPLPUSHACCCPLP2.6MOVTH1,R5MOVTL1,R6

37、SETBTR1POPACCPOPDPLPOPDPHRETITONE:DB0FCH,2FH,04H,0FCH,99H,04H,0FCH,0F8H,04H,0FDH,22H,04HDB0FDH,073H,04H,0FDH,0BCH,04H,0FDH,0FAH,04H,0FEH,17H,04HDB0FEH,17H,04H,0FDH,0FAH,04H,0FDH,0BCH,04H,0FDH,73H,04H,0FDH,22H,04H,DB0FCH,0F8H,04H,0FCH,99H,04H,0FCH,2FH,04H,00H,00H,00HEND五、思考题1、改编一首完整的新的歌曲。实验五12864点阵型液

38、晶显示实验一、实验目的1、了解点阵型液晶显示器的工作原理。2、了解点阵型液晶显示器控制方式。二、实验原理1、SMG12864D3液晶显示模块的概述:SMG12864D3标准图形点阵型液晶显示模块(LCM),采用点阵型液晶显示器(LCD),可显示128X64点阵,点尺寸为0.39X0.55(WXH)mm,内置KS0108B接口型液晶显示控制器,可与MCU单片机直接连接,广泛应用于各类仪器仪表及电子设备。2、SMG12864D3液晶显示模块的主要技术参数:产品型号显示模式工作温度存储温度工作电压工作电流颜色电流SMG12864D3黄绿模宽温-20+60-30+704.85.2V5.0mA,5.0V

39、黄绿30mA3、SMG12864D3液晶显示模块的接口信号说明:编号符号引脚说明编号符号引脚说明1CS2片选IC2信号11DB2DataI/O2CS1片选IC1信号12DB3DataI/O3VSS电源地13DB4DataI/O4VDD电源正极(+5V)14DB5DataI/O5V0LCD偏压输入15DB6DataI/O6RS数据/命令选择端(H/L)16DB7DataI/O7RW读写控制信号(H/L)17/RESET复位端8E使能信号18VEE负压输出9DB0DataI/O19BLA背光源正极10DB1DataI/O20BLK背光源负极4、控制器接口说明(KS108B及兼容芯片)1)基本操作时

40、序:1.1读状态:输入:RS=L,R/W=H,CS1或CS2=H,E=H输出:D0D7=状态字1.2写指令:输入:RS=L,R/W=L,D0D7=指令码,CS1或CS2=H,E=高脉冲输出:无1.3读数据:输入:RS=H,R/W=H,CS1或CS2=H,E=H输出:D0D7=数据1.4写数据:输入:RS=H,R/W=L,D0D7=数据,CS1或CS2=H,E=高脉冲输出:无2)状态字说明STA7STA6STA5STA4STA3STA2STA1STA0D7D6D5D4D3D2D1D0STA0-4未用STA5液晶显示状态1:关闭0:显示STA6未用STA7读写操作使能1:禁止0:允许注:对控制器每

41、次进行读写操作之前,都必须进行读写检测,确保STA7为03)RAM地址映射图LCD显示屏由两片控制器控制,每个内部带有8X64位(512字节)的RAM缓冲区,对应关系如图所示:4)指令说明4.1初始化设置4.1.1显示开/关设置指令码功能3EH关显示3FH开显示4.1.2显示初始行设置指令码功能0C0H设置显示初始行4.2数据控制控制器内部设有一个数据地址页指针和一个数据地址列指针,用户可通过它们来访问内部的全部512字节RAM。4.2.1数据指针设置指令码功能0B8H+页码(07)设置数据地址页指针40H+列码(063)设置数据地址列指针4.2.2读数据:见1.34.2.3写数据:见1.45

42、初始化过程5.1写指令0C0H:设置显示初始行。5.2写指令3FH:开显示。三、实验内容和步骤1、将LCD12864插入电路板的接口4的上排位置。(注意:板上接口4的上排位是LCD12864的接口,下排位是LCD1602的接口,排针和排母左对齐插入!切勿插错!)2、全速运行程序,显示内容:有限公司(四行二列)四、程序流程图和程序清单1、程序流程图2、程序清单XPOSEQU20H;列方向地址指针(用于LCDPOS子程序)YPOSEQU21H;行方向地址指针(用于LCDPOS子程序)RSPINEQUP3.6RWPINEQUP3.5;EPINEQUP3.3;CS1PINEQUP3.7;CS2PINEQUP2.4;ORG0000HJMPSTAR

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁