




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Tianjin University of Technology and Education毕 业 设 计专 业: 班级学号: 学生姓名: 指导教师: 二一年 六 月无线传输装置的设计与制作摘要 无线传输通信技术,通常工作于ISM(工业、科学、医疗)频段,因其功率小、开发简单快速而在工业、民用等领域应用广泛。本装置基于微功耗单片射频收发器nRF905设计,nRf905采用VLSI ShockBurst 技术,ShockBurst工作模式的特点是自动产生前导码和CRC(循环冗余校验),降低在应用中的平均电流消耗;采用Atmel公司的高性能、低功耗8位处理器ATmega16完成数据的处理和控制,ATmega16与nRF905之间的双向数据传输使用SPI接口。输出显示采用微功耗、体积小、显示内容丰富、超薄轻巧3V供电的液晶MC1602。输入键盘采用44中断式键盘, 减少键盘查询过程对MCU的占用时间。在完成硬件电路和系统软件调试后,实现了手持型的英文短信机,在100 m通信距离,该无线传输装置工作稳定,能实现数据的有效传输,具有低功耗、抗干扰能力强、易携带等优点。关键词 无线传输;英文短信机;ATmega16;nRF905;MC1602 Wireless transmission equipment design and fabricationAbstract Wireless communications technology, usually work in the ISM (industrial, scientific, medical) band, It was extensively applied to the industrial, civilian in fields because of their power of small, simple and rapid development. This device based on micro-power single-chip RF transceiver nRF905 design, nRf905 by VLSI ShockBurst technology, ShockBurst mode of operation is characterized by automatic precursor code and CRC (cyclical redundancy checking), reducing the application of the average current consumption,using Atmels high performance, low-power eight bit processor ATmega16 completed data process and control, ATmega16 and nRF905 two-way data transmission between the use of the SPI interface. Output using LCD MC1602 with micro-power, small size, show rich in content, ultra-thin lightweight 3 V power supply. The input keyboard uses 4 4-keyboard with interruption to reduce the keyboard for the process occupation MCUs time. after the debugging of hardware and system software implement a hand-held machine message in English, on the 100 m distance, the wireless devices work stability, message can transmissed effectively, with low power, anti-interference capability and easy Bring.Key words wireless transmission; English-SMS; ATmega16; nRF905; MC1602目录0 引言-11 无线传输装置的主要单元电路-21.1 Atmega16单片机-21.1.1 Atmega16的主要性能-21.1.2 Atmega16引脚说明-31.1.3 AVR CPU内核-41.1.4 ATmega16的存储器-51.2 无线收发芯片nRF905-61.2.1 nRF905内部结构与简单工作原理-61.2.2 nRF905的性能及特点-7 1.3 液晶MC1602-7 1.3.1 引脚说明-71.3.2 基本操作-7 1.4 中断式矩阵键盘-72 无线传输装置的原理与设计-9 2.1 无线传输装置结构框图-92.2 无线传输装置原理图-92.3 无线传输装置程序主要流程图-92.4 无线传输装置的模块电路-162.4.1 无线收发部分-162.4.2 输出显示部分-18 2.4.3 输入按键部分-22 3 无线传输装置的调试-243.1 显示部分调试-243.2 键盘部分调试-263.3 无线收发部分调试-283.4 总体调试-283.4.1 调试步骤-283.4.2 调试结果-31结论-32致谢语-33参考文献-34附录1 main.c-35附录2 main0.c-38附录3 int_01.c-44附录4 PCB图-48附录5 英文原文-49附录5 英文译文-56张丽杰:微电子学专业毕业设计0 引言随着网络及通信技术的飞速发展,无线传输以其成本低廉、扩展性好、受地理条件限制较少、安装施工简便灵活等特点,在许多领域都有着广阔的应用前景。伴随着短距离、低功率无线传输技术的成熟,无线传输被越来越多地应用到新的领域。与有线传输方式相比,无线传输以其不需铺设明线、使用便捷等一系列优点。以往的无线产品存在范围和方向上的局限。例如,一些无线产品在使用时,无法将信息反馈给控制者;还有一些无线产品,如果能配备廉价的无线技术并在系统中增加数码显示,产品不仅能向用户显示其状态或状态的改变,而且可以大大降低成本。正如人们所发现的,只要建立双向无线通信-双工通信并且选择成本低的收发芯片,就会出现许多新应用。本系统采用统一的3V电源供电,无需外加电源电压转换电路。44键盘采用只需外加四个二极管和一个内部上拉电阻就实现了外部中断的设计,Atmega16芯片在内部集成EEPROM掉电存储,通过nrf905无线模块进行数据传输,采用工作频段为433MHz的点对点无线传输;显示部分采用3V供电的MC1602显示信息,中小尺寸的液晶显示在人机交互上具有比数码管明显的的优势:通过简洁的接口电路,可以在屏上实现比较丰富细腻的的各种界面效果,大大增强了器件与使用者之间的“亲和力” 。综上所述液晶显示、AVR单片机与nrf905芯片均为低功耗、低电压即可工作的器件,因此硬件电路实现简易,具有电路简单稳定、抗干扰能力强、功耗小,易携带等优点。1 无线传输装置的主要单元电路1.1 Atmega16单片机控制电路主要组成部分为单片机ATmega161,ATmega16是基于增强的AVR RISC 结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1 MIPS/MHz ,从而可以缓减系统在功耗和处理速度之间的矛盾。AVR 内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算数逻辑单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的 CISC 微控制器最高至 10 倍的数据吞吐率。1.1.1 Atmega16的主要性能1)高性能、低功耗的8位AVR微控制器,先进的RISC精简指令集结构,131指令,大多数指令执行时间为单时钟周期指令,32个8位通用工作寄存器,工作在16MHz时,具有16MIPS的性能,片内集成硬件乘法器(执行速度为2个时钟周期)。2)片内集成了较大容量的非易失性程序和数据存储器,16KB的可编程Flash存储器,擦写次数:10000次,具有独立锁定位的可选BOOT代码区,可通过片上BOOT程序实现系统内编程序,真正的的同时读写操作。512个字节的EEPROM,擦写寿命:100000次;1K字节片内SRAM;可以对锁定位进行编程以实现用户程序的加密。3)丰富强大的外部接口(Peripheral)性能,两个具有独立预分频器和比较器功能的 8位定时器/计数器,一个具有预分频器、比较功能和捕获功能的16位定时计数器,具有独立振荡器的实时计数器RTC,四个PWM通道;8路10位ADC,8个单端通道,TQFP封装的7个差分通道,2个具有可编程增益(1,10或200)的差分通道,两个可编程的串行USART接口,可工作于主机/从机模式的SPI串行接口,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器。4)特殊的微控制器性能:可上电复位以及可编程的掉电检测,片内经过标定的RC振荡器,片内/片外中断源;6种睡眠模式:空闲模式、ADC噪声抑制模式、省电模式、掉电模式、待命模式(Standby)以及扩展的Standby模式。 5)I/O口和封装:32个可编程I/O口,可任意定义I/O的输入/输出方向;输出时为推挽输出,驱动能力强,可直接驱动LED等大电流负载:输入口可定义为三态输入,可以设定带内部上拉电阻,省去外接上拉电阻,40脚PDIP封装,44脚TQFP封装和 44脚MLF封装。6)宽工作电压:2.7V-5.5V(ATmega16L),4.5V-5.5V(ATmega16)。7)高运行速度,O-8MHz(ATmega16L),0-16MHz( ATmega16)。8)低功耗:正常模式( Active):1.1mA;空闲模式( Idle Mode):0.35 mA; 掉电模式( Powerdown Mode):1uA。1.1.2 Atmega16引脚说明Atmega16引脚如图1.1。 图1.1 ATmega16引脚图1)端口 A(PA7.PA0)端口 A:作为 A/D转换器的模拟输入端。为8位双向 I/O口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 A处于高阻状态。2)端口B(PB7PB0):端口B为8位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口B处于高阻状态。3)端口 C(PC7.PC0):端口 C为 8位双向 I/O口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 C处于高阻状态。如果JTAG接口使能,即使复位出现引脚 PC5(TDI)、PC3(TMS)与 PC2(TCK)的上拉电阻被激活。4)端口D(PD7.PD0)端口:D为8位双向I/O口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D处于高阻状态。5)RESET:复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复位。持续时间小于门限间的脉冲不能保证可靠复位。6)AVCC:是端口A与A/D转换器的电源。不使用ADC时,该引脚应直接与VCC连接。使用ADC时应通过一个低通滤波器与VCC连接。7)AREF:A/D 的模拟基准输入引脚。8)XTAL1:反向振荡放大器与片内时钟操作电路的输入端。9)XTAL2:反向振荡放大器的输出端。1.1.3 AVR CPU内核1)AVR ALU与32个通用工作寄存器直接相连。寄存器与寄存器之间、寄存器与立即数之间的 ALU 运算只需要一个时钟周期。ALU 操作分为 3 类:算术、逻辑和位操作。2)复位与中断处理AVR有不同的中断源。每个中断和复位在程序空间都有独立的中断向量。所有的中断事件都有自己的使能位。当使能位置1位,且状态寄存器的全局中断使能位也置1位时,中断可以发生。根据程序计数器PC的不同,在引导锁定位BLB02或BLB12被编程的情况下,中断可能被自动禁止。这个特性提高了软件的安全性。程序存储区的最低地址缺省为复位向量和中断向量。向量所在的地址越低,优先级越高。RESET 具有最高的优先级,第二个为INT0外部中断请求。通过置位MCU 控制寄存器 (MCUCR)的IVSEL,中断向量可以移至引导Flash的起始处。编程熔丝位BOOTRST也可以将复位向量移至引导 Flash 的起始处。任一中断发生时全局中断使能位I被清零,从而禁止了所有其他的中断。软件可以在中断程序里置位I来实现中断嵌套。此时所有的中断都可以中断当前的中断服务程序。执行RETI指令后I自动置位。从根本上说有两种类型的中断。第一种由事件触发并置位中断标志。对于这些中断,程序计数器跳转到实际的中断向量以执行中断处理程序,同时硬件将清除相应的中断标志。中断标志也可以通过对其写 “1” 的方式来清除。当中断发生后,如果相应的中断使能位为“0”,则中断标志位置位,并一直保持到中断执行,或者被软件清除。类似的,如果全局中断标志被清零,则所有已发生的中断都不会被执行,直到 I 置位。然后挂起的各个中断按中断优先级依次执行。第二种类型的中断则是只要中断条件满足,就会一直触发。这些中断不需要中断标志。若中断条件在中断使能之前就消失了,中断不会被触发。要注意的是,进入中断服务程序时状态寄存器不会自动保存,中断返回时也不会自动恢复。这些工作必须由用户通过软件来完成。3)状态寄存器状态寄存器状态寄存器包含了最近执行的算术指令的结果信息。这些信息可以用来改变程序流程以实现条件操作。如指令集所述,所有ALU运算都将影响状态寄存器的内容。这样,在许多情况下就不需要专门的比较指令了,从而使系统运行更快速,代码效率更高。在进入中断服务程序时状态寄存器不会自动保存,中断返回时也不会自动恢复。这些工作需要软件来处理。1.1.4 ATmega16的存储器1)系统内可编程的Flash 程序存储器ATmega16具有16K字节的在线编程 Flash,用于存放程序指令代码。因为所有的 AVR指令为16位或 32位,故而 Flash组织成 8K x 16位的形式。用户程序的安全性要根据 Flash程序存储器的两个区:引导 (Boot)程序区和应用程序区,分开来考虑。 Flash存储器至少可以擦写 10,000次。ATmega16的程序计数器 (PC)为13位,因此可以寻址8K字的程序存储器空间。2)SRAM 数据存储器数据存储器的寻址方式分为 5 种:直接寻址、带偏移量的间接寻址、间接寻址、带预减量的间接寻址和带后增量的间接寻址。寄存器文件中的寄存器 R26 到 R31 为间接寻址的指针寄存器。直接寻址范围可达整个数据区。带偏移量的间接寻址模式能够寻址到由寄存器 Y和Z给定的基址附近的63个地址。在自动预减和后加的间接寻址模式中,寄存器 X、 Y和 Z 自动增加或减少。3)I/O存储器ATmega16所有的I/O及外设都被放置于I/O空间。所有的I/O位置都可以通过IN 与OUT指令来访问,在32个通用工作寄存器和I/O之间传输数据。地址为0x00 - 0x1F的I/O寄存器还可用SBI和CBI指令直接进行位寻址,而SBIS和SBIC则用来检查一位的值。1.2 无线收发芯片nRF905nRF905是一种理想的超高频单片收发器芯片。主要用于ISM(工业、科研及医疗)频带和在433/868/915MHz频带的SRD(Short Range Device近距离设备)中。1.2.1 nRF905内部结构与简单工作原理1) 主要引脚功能nRF905引脚如图1.2。图1.2 nRF905引脚图(1)TRX_CE:使能芯片接收和发送。(2)TRX_EN:收发状态选择,TRX_EN=1发射状态;TRX_EN=0接收状态。(3)MISO:SPI输出,MCU由此口从RF芯片读入数据。(4)MISI:SPI输入,MCU由此口从RF芯片写入数据。2)内部结构与简单工作原理nRF905是挪威Nordic VLSI公司推出的单片射频收发器,工作于433/868/915MHZ的ISM频段。由一个完全集成的频率调制器,一个带解调器的接收器,一个功率放大器,一个晶体振荡器和一个调节器组成。ShockBurst工作模式的特点是自动产生前导码和CRC(循环冗余校验)。可以很容易通过SPI接口进行编程配置。电流消耗很低,在发射功率位-10dBm时,发射电流位11mA。工作于接收模式时电流为12.5mA,进入POWERDOWN模式可以很容易实现节电,从而易于实现功率管理。nRF905一共有四种工作方式,其中有两种活动RX/TX模式和两种节电模式。活动模式:ShockBurst RX、ShockBurst TX。掉电模式:掉电和SPI编程、Standby和SPI编程。nRF905工作模式由TRX_CE、TRX_EN、PWR_UP的设置来设定,见表1.1。表1.1 nRF905工作模式的设定PWR_UPTRX_CETRX_EN工作模式0111X011XX01掉电和SPI编程Standby和SPI编程ShockBurst RXShockBurst TXnRf905采用Nordic公司的VLSI ShockBurst 技术。ShockBurst技术使nRf905能够提供高速的数据传输而不需要昂贵的高速MCU来进行数据处理/时钟覆盖。通过将与RF协议有关的高速信号处理放在芯片内,nRf 905提供给应用的微控制器一个SPI接口,速率由微控制器自己设定的接口速度决定。nRf905通过ShockBurst工作模式在RF以最大速率进行连接时降低数字应用部分的速度来降低在应用中的平均电流消耗。在ShockBurst RX模式中,地址匹配(AM)和数据准备就绪(DR)信号通知MCU一个有效的地址和数据包已经各自接收完成。在ShockBurst TX模式中,nRF905自动产生前导码和CRC校验码,数据准备就绪(DR)信号通知MCU数据传输已经完成。1.2.2 nRF905的性能及特点nRF905是真正的单片;低功耗ShockBurst工作模式;工作电源电压范围1.93.6V;多通道工作ETSI/FCC兼容;通道切换时间650us;极少的材料耗材;无需外部SAM滤波器;输出功率可调至10dBm;“传输前监听”的载波监测协议;当正确的数据包被接受或发送时,有数据准备就绪信号输出;侦测接收的数据包,当正确输出地址匹配信号;数据包自动重发功能;自动产生CRC和前导码;低工作电流(TX),在输出功率位-10dBm时典型值为11mA。该型号单片机体积小、性能高,能够快速存取数据,也易于系统开发以及扩展,很适合本设计的需要。1.3 液晶MC1602液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。1.3.1 引脚说明从该模块的正面看,引脚排列从右向左为116脚。第1脚:VSS为地电源。第2脚:VDD接3V正电源。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时,对比度 最高,对比度过高时会产生“鬼影”使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW 共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时 可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。 第1516脚:背光电源。1.3.2 基本操作1)读状态.输入:RS=L,RW=H,E=H,输出:D0D7=状态字。 2)写指令.输入:RS=L,RW=L,D0D7=指令码,E=高脉冲,输出:无。 3)读数据.输入:RS=H,RW=H,E=H,输出:D0D7=数据。 4)写数据.输入:RS=H,RW=H,D0D7=数据,E=高脉冲,输出:无。1.4 44中断式矩阵键盘采用矩阵键盘,在按键数量多的场合,矩阵键盘与独立式按键键盘相比,可以节省很多I/O口线。另外,44矩阵键盘的PCB2布线也相对其它形式键盘容易。2 无线传输装置的原理与设计 2.1 无线传输装置结构框图无线传输装置3结构如图2.1所示。无线传输模块基于微功耗单片射频收发器nRF905设计,采用Atmel公司的高性能、低功耗8位处理器ATmega16为主处理芯片,完成信息的处理和控制。信息通过LCD(MC1602)显示,44中断式键盘输入信息。LCDLEDLCDLED单片机单片机键盘键盘nRF905nRF905无线传输 图2.1 无线传输装置结构框图2.2 无线传输装置原理图见图2.2所示,PCB图见附录4。2.3 无线传输装置程序主要流程图 程序开始首先要进行硬件和软件的初始化,硬件初始化主要是端口初始化、计数器初始化、液晶初始化和nRF905初始化,软件初始化主要是EEPROM的初始化;然后是判断显示菜单,由外部中断0控制4;每个菜单的相应操作调用菜单子函数来实现;其中新短信数是由外部中断1统计。主要流程图如下所示:主程序流程图见图2.3所示;中断0程序流程图见2.4所示;中断1程序流程图见2.10所示;菜单0程序流程图见2.5所示;菜单3程序流程图见2.6所示;菜单1程序流程图见2.7所示;菜单2程序流程图见2.8所示;菜单7程序流程图见2.9所示;菜单8程序流程图见2.11所示。 图2.2 无线传输装置原理图 图2.3 主程序流程图 图2.4 中断0程序流程图 图2.5 菜单0程序流程图 图2.6 菜单3程序流程图 图2.7 菜单1程序流程图图2.8 菜单2程序流程图 图2.9 菜单7程序流程图图2.10 中断1程序流程图图2.11 菜单8程序流程图2.4 无线传输装置的模块电路2.4.1 无线收发部分无线收发部分是基于微功耗单片射频收发器nRF905设计,采用Atmel公司的高性能、低功耗8位处理器ATmega16为主处理芯片,完成数据的处理和控制。1)无线收发部分电路框图 见图2.12所示。无线传输无线收发部分无线收发部分图2.12 无线收发部分电路框图2)ATmega16与nRF905接口电路ATmega16与nRF905的接口电路很最要。nRF905内部有5个寄存器:状态寄存器、配置寄存器、发射地址寄存器、发射数据寄存器和接收数据寄存器。除了对寄存器读写外,还需对nRF905工作模式的切换进行控制。ATmega16与nRF905的信号连接见图2.13。 PB4PD0PD1PD3PC0PC1PC2PC3SCKCSNMOSIDRMISOTR_CETX_ENPWR_UPATmega16nRF905 图2.13 Atmega16与nRF905接口电路ATmega16与nRF905之间的双向数据传输使用SPI接口,单片机的PB4、PD0、PD1、PC0连接nRF905的SPI接口,PD3、PC1-PC3连接nRF905的控制信号和检测信号,用于nRF905的模式切换以及通信过程中必须的信号指示接口。3)数据传输过程单片机将需发送的数据(这里包括目标设备地址和所要发送的数据)通过SPI接口发送给nRF905,nRF905将数据加前导码和CRC码,将数据包发送。当nRF905接收到有效数据后,DR置高,单片机检测到DR为高电平后,复位TRX_CE引脚,使nRF905进入空闲模式,通过SPI接口从nRF905中读出接收数据。软件功能模块由CPU寄存器初始化、SPI初始化、SPI收发送程序、IO口初始化、nRF905配置寄存器操作、nRF905接收程序、发送程序、主程序模块组成。ATmega16通过将nRF905的CSN引脚置低实现与其同步。SPI操作时序和控制由软件实现。4)nRF905配置及收发流程对nRF905寄存器的操作是一个很关键的问题,nRF905的所有配置都是通过SPI接口进行的。nRF905的SPI接口只有在掉电模式和standby模式是激活的。当CSN为低时,SPI接口开始等待一条指令,任何一条新指令均由CSN由高到低的转换开始。nRF905发送模式工作过程如下:(1)当ATmega16发送数据时,将接收设备地址和所要发送的数据通过SPI接口写入nRF905。(2)置位TRX_CE、TX_EN,激活nRF905发送模式。(3)nRF905自动完成数据打包(加入前导码和CRC),当传输完毕DR置位。(4)如果将AUTO_RETRAN位置高,nRF905将连续发送数据包,直至将TRX_CE引脚复位。(5)当TRX_CE引脚被设置为低时,nRF905结束发送模式,并进入standby模式。nRF905接收模式工作过程如下:(1)将TRX_CE置位,TX_EN复位后650s,nRF005进入接收模式等待数据到来。(2)nRF905将接收到的有效数据包去掉前导码、地址,CRC正确后,将DR(data ready)引脚置位。(3)CPU复位TRX_CE引脚,使nRF905进入空闲模式,然后通过SPI接口读取数据。(4)数据接收完毕后,nRF905 DR引脚复位并准备进入下一个工作模式。应该注意的是,在数据发送过程中无论将TRX_CE、TX_EN怎样设置,nRF905都会完成此次发送而不受影响,此后,进八所设置的工作模式。而在接收数据包的过程中TRX_CE或TX_EN状态改变,则nRF905会立即改变工作模式,丢失数据。2.4.2 输出显示部分单片机控制液晶5显示。1)主要指令本模块提供了11 条指令,大致可以分为四大类:模块功能设置,诸如:显示格式、数据长度等;设置内部RAM地址;完成内部RAM数据传送;完成其他功能。一般情况下,内部RAM 的数据传送的功能使用最为频繁,因此,RAM 中的地址指针所具备的自动加一或减一功能,在一定程度上减轻了MPU编程负担。此外,由于数据移位指令与写显示数据可同时进行,这样就能以最少系统开发时间,达到最高的编程效率。(1)Clear display 清显示指令码:清显示指令将空位字符码20H 送入全部DDRAM地址中,使DDRAM 中的内容全部清除,显示消失;地址计数器AC=0,自动增1 模式;显示归位,光标或者闪烁回到原点(显示屏左上角);但并不改变移位设置模式。(2)Return home 归位指令码:归位指令置地址计数器AC=0;将光标及光标所在位的字符回原点;但DDRAM 中的内容并不改变。(3)Entry mode set 设置输入模式指令码:I/D:字符码写入或者读出DDRAM 后DDRAM地址指针AC变化方向标志:I/D=1,完成一个字符码传送后,光标右移,AC自动加1;I/D=0,完成一个字符码传送后,光标左移,AC自动减1;S:显示移位标志:S=1,将全部显示向右(I/D=0)或者向左(I/D=1)移位;S=0,显示不发生移位;S=1 时,显示移位时,光标似乎并不移位;此外,读DDRAM 操作以及对CGRAM 的访问,不发生显示移位。(4) Display on/off control 显示开/关控制指令码:D:显示开/关控制标志:D=1,开显示;D=0,关显示;关显示后,显示数据仍保持在DDRAM中,立即开显示可以再现;C:光标显示控制标志:C=1,光标显示;C=0,光标不显示;不显示光标并不影响模块其它显示功能;显示5X8 点阵字符时,光标在第八行显示,显示5X10点阵字符时,光标在第十一行显示;B:闪烁显示控制标志:B=1,光标所指位置上,交替显示全黑点阵和显示字符,产生闪烁效果,Fosc=250kHz时,闪烁频率为0.4ms左右;通过设置,光标可以与其所指位置的字符一起闪烁。(5)Cursor or display shift 光标或显示移位指令码:光标或显示移位指令可使光标或显示在没有读写显示数据的情况下,向左或向右移动;运用此指令可以实现显示的查找或替换;在双行显示方式下,第一行和第二行会同时移位;当移位越过第一行第四十位时,光标会从第一行跳到第二行,但显示数据只在本行内水平移位,第二行的显示决不会移进第一行;倘若仅执行移位操作,地址计数器AC的内容不会发生改变。见表2.1。表2.1 光标或显示移位指令说明S/CR/L说明00110101光标向左移动,AC自动减1光标向左移动,AC自动加1光标和显示一起向左移动,AC的值不变光标和显示一起向右移动,AC的值不变 (6)Function set 功能设置指令码:功能设置指令设置模块数据接口宽度和LCD 显示屏显示方式,即MPU与模块接口数据总线为4位或者是8位、LCD 显示行数和显示字符点阵规格;所以建议用户最好在执行其它指令设置(读忙标志指令除外)之前,在程序的开始,进行功能设置指令的执行;DL:数据接口宽度标志:DL=1,8位数据总线DB7DB0;DL=0,4 位数据总线DB7DB4,DB3DB0不用,使用此方式传送数据,需分两次进行;N:显示行数标志:N=1,两行显示模式;N=0,单行显示模式;F:显示字符点阵字体标志:F=1:5X10 点阵光标显示模式;F=0:5X7点阵光标显示模式。(7)Set CGRAM address CGRAM地址设置指令码:CGRAM 地址设置指令设置CGRAM 地址指针,它将CGRAM 存储用户自定义显示字符的字模数据的首地址ACG5ACG0送入AC中,于是自定义字符字模就可以写入CGRAM 中或者从CGRAM中读出。(8)Set DDRAM address DDRAM地址设置指令码:DDRAM地址设置指令设置DDRAM地址指针,它将DDRAM存储显示字符的字符码的首地址ADD6ADD0送入AC中,于是显示字符的字符码就可以写入DDRAM 中或者从DDRAM中读出;值得一提的是:在LCD 显示屏一行显示方式下,DDRAM 的地址范围为:00H4FH;两行显示方式下,DDRAM的地址范围为:第一行00H27H,第二行40H67H。(9)Read busy flag and address 读忙标志BF和AC指令码:当RS=0和R/W=1 时,在E信号高电平的作用下,BF和AC6AC0 被读到数据总线DB7DB0的相应位;BF:内部操作忙标志,BF=1,表示模块正在进行内部操作,此时模块不接收任何外部指令和数据,直到BF=0为止;AC6AC0:地址计数器AC内的当前内容,由于地址计数器AC被CGROM、CGRAM 和DDRAM的 公用指针,因此当前AC 内容所指区域由前一条指令操作区域决定;同时, 只有BF=0 时,送到DB7DB0 的数据AC6AC0 才有效。 (10)Write data to CGRAM or DDRAM 写数据到CGRAM 或DDRAM指令码:写数据到CGRAM或DDRAM指令,是将用户自定义字符的字模数据写到已经设置好的CGRAM的地址中,或者是将欲显示字符的字符码写到DDRAM 中;欲写入的数据D7D0 首先暂存在DR 中,再由模块的内部操作自动写入地址指针所指定的CGRAM 单元或者DDRAM 单元中。(11)Read data from CGRAM or DDRAM 从CGRAM 或DDRAM中读数据指令码:从CGRAM 或DDRAM中读数据指令,是从地址计数器AC指定的CGRAM 或者DDRAM 单元中,读出数据D7D0;读出的数据D7D0暂存在DR中,再由模块的内部操作送到数据总线DB7DB0上;需要注意的是,在读数据之前,应先通过地址计数器AC正确指定读取单元的地址。2)ATmega16与液晶接口电路见图2.14所示。PA0PA7PC7PC6PC5PC4D0D7BLAE(6)R/W(5)RS(4)ATmega16MC1602:图2.14 Atmega16与液晶接口电路2.4.3 输入按键部分单片机调用键盘扫描程序对键盘进行扫描和处理有以下三种:1)程序控制扫描方式。在主控程序中的适当位置调用键盘扫描程序,对键盘进行读取和处理。2)定时扫描方式。在该方式中,要使用MCU的一个定时器,是极其产生一个10ms的定时中断,MCU响应定时中断,执行键盘扫描,当在连续两次中断中都读到相同的按键按下时(间隔10ms作为消抖处理),MCU才去执行相应的键处理程序。3)中断方式。使用中断方式时,键盘的硬件电路要做一定的改动,即增加一个按键产生中断信号的输入线,当键盘由按键按下时,键盘硬件电路产生一个外部的中断信号,MCU响应外部中断,进行键盘处理。在这里采用中断方式的键盘,为了尽量减少键盘查询过程对MCU的占用时间,单片机可以及时响应按键,硬件电路如图2.15所示。图2.15 中断式矩阵键盘其中X0X3依次接到单片机的PD4PD7,Y0Y3依次接单片机的PB0PB3,INT0接PD2(中断0)。单片机PD4PD7设置为输出口,初始为低电平,PB0PB3设置为输入口且加内部上拉电阻,中断0设置为下降沿触发。当有按键按下时,INT0由10出现下降沿,中断0被触发,在中断0程序中完成键盘的扫描。3 无线传输装置的调试 采用模块化思想,分步调试,从底层到顶层,软件与硬件相结合调试。首先确定除Atmega16芯片、MC1602、nRF905
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生鲜店经营合同范本
- 工勤等级考试题库及答案2025
- 背景墙合同范本
- 劳务合同范本香港签字
- 石材矿山开采合同范本
- 预售房按揭合同范本
- 水站合作合同范本
- 工程施工合同简易版5篇
- 教师教育孩子的心得体会怎么写(范文10篇)
- 知否知否题目及答案高清
- 第2课《中国人首次进入自己的空间站》课件+2025-2026学年统编版语文八年级上册
- 2024年中、小学《美术》教师资格招聘基础知识考试题与答案
- 统编版八年级上册道德与法治 8.3.2《营造清朗空间》课件
- 2025拖车租赁协议
- 甜品制作基础知识点
- 2025年广东省中考历史试卷(含解析)
- 人工智能赋能基础教育应用蓝皮书 2025
- 钳工(中级) 课件项目7-10 液压传动机构的装配与调试-机械设备保养与维修
- 食堂费用开支审计方案(3篇)
- 小岗位大作用班会课件
- 认证产品一致性管理办法
评论
0/150
提交评论