版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程名称大作业微控制系统原理课程设计 设计课题: 基于S08的简易频率计设计 学院名称:电气工程学院专业班级: 指导教师意见:成绩: 签名: 年 月 日目录基于S08的简易频率计设计I前言2一 频率计的简介21.1频率计概述21.2频率计发展与应用21.3频率计设计内容21.4测频的原理3二 S08的介绍42.1 S08AW简介42.2 S08资源介绍42.3 S08AW结构62.4 系统功能引脚72.5 输入输出功能引脚72.6 电源电路8三 硬件设计93.1 系统组成及工作原理93.2 频率测量原理103.3 硬件组成103.4 单片机核心模块113.5 电压跟随和减法电路113.6 模拟
2、开关和电压比较电路123.7 显示和控制电路123.8电平转换电路13四 程序设计144.1 主程序设计144.2 子程序设计154.3调试及结果16参考目录:16附录:模拟电路仿真图17主程序181 前言频率测量是电子学测量中最为基本的测量之一。由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。一 频率计的简介1.1频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号、方
3、波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。本次采用单片机技术设计一种数字显示的频率计,测量准确度高,响应速度快,体积小等优点1。1.2频率计发展与应用在我国,单片机已不是一个陌生的名词,它的出现是近代计算机技术的里程碑事件。单片机作为最为典型的嵌入式系统,它的成功应用推动了嵌入式系统的发展。单片机已成为电子系统的中最普遍的应用。单片机作为微型计算机的一个
4、重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。其中以STC89C52为内核的单片机系列目前在世界上生产量最大,派生产品最多,基本可以满足大多数用户的需要。1.3频率计设计内容1被测信号为周期性信号(包括正弦波、方波、三角波等),频率范围为160KHz,峰峰值在110V范围内。2设置“开始/停止”和“工作模式”开关。工作模式分为测量外接信号和系统自测两种模式,在测量外接信号模式下,测量外接信号频率;在系统自测模式下,测量1KHz测试信号的频率。3系统处于工作状态时,数码
5、管实时显示测量信号频率值,每隔1秒向PC机发送频率数据,频率数据为ASCII码,单位为Hz。 通过开始/停止键控制系统。1.4测频的原理测频的原理归结成一句话,就是“在单位时间内对被测信号进行计数”。被测信号,通过输入通道的放大器放大后,进入整形器加以整形变为矩形波,并送入主门的输入端。通过单片机的定时器T2通道产生1秒的定时。将经过调理电路处理后的被测信号通过定时/计数器输入端T0送给,若在一定的时间间隔T内累计周期性的重复变化次数N,则频率的表达式为式: (1)图1说明了测频的原理及误差产生的原因。时基信号 待测信号 丢失(少计一个脉冲) 计到N个脉冲 多余(比实际多出了0.x个脉冲)图1
6、.1 测频原理在图1中,假设时基信号为1KHZ,则用此法测得的待测信号为1KHZ×5=5KHZ。但从图中可以看出,待测信号应该在5.5KHZ左右,误差约有0.5/5.59.1%。这个误差是比较大的,实际上,测量的脉冲个数的误差会在±1之间。假设所测得的脉冲个数为N,则所测频率的误差最大为=1(N-1)*100%。显然,减小误差的方法,就是增大N。本频率计要求测频误差在1以下,则N应大于1000。通过计算,对1KHZ以下的信号用测频法,反应的时间长于或等于10S,。由此可以得出一个初步结论:测频法适合于测高频信号。频率计数器严格地按照公式进行测频4。由于数字测量的离散性,被测
7、频率在计数器中所记进的脉冲数可有正一个或负一个脉冲的量化误差,在不计其他误差影响的情况下,测量精度将为: 应当指出,测量频率时所产生的误差是由N和T俩个参数所决定的,一方面是单位时间内计数脉冲个数越多时,精度越高,另一方面T越稳定时,精度越高。为了增加单位时间内计数脉冲的个数,一方面可在输入端将被测信号倍频,另一方面可增加T来满足,为了增加T的稳定度,只需提高晶体振荡器的稳定度和分频电路的可靠性就能达到。上述表明,在频率测量时,被测信号频率越高,测量精度越高。二 S08的介绍频率计是我们经常会用到的实验仪器之一,频率的测量实际上就是在单位时间内对信号进行计数,计数值就是信号频率。本文是一种基于
8、S08系列的一款AW60芯片设计的简易频率计。首先介绍一下有关S08的内容。2.1 S08AW简介S08AW系列是Freescale公司推出的新一代S08系列微控制器中的一款增强型8位微控制器,它不仅集成度高、片内资源丰富,接口模块包括SPI、SCI、IIC、A/D、PWM 等,还具有很宽的工作温度范围:-40+125,它在汽车电子、工业控制、中高档机电产品等领域具有广泛的用途。 S08AW 微控制器采用8位S08CPU,片内总线时钟最高可达20MHz;片内资源包括2K RAM、将近62K Flash、串行接口模块(SCI、SPI和IIC)、定时器模块(TPM)、可选择宽范围时钟频率,它还提供
9、一个8位/10位精度的A/D转换器,并支持后台调试模式BDM。本章以S08AW60为例,介绍S08AW系列的基本组成,包括S08AW的特性、结构、引脚、基本系统电路、系统时钟和运行模式等。2.2 S08资源介绍S08AW是Freescale首个基于高性能S08CPU内核并支持2.75.5V电源的微控制器。它包含众多有应用价值的特性:将近62K的flash存储器、高达2K的RAM、灵活而无需外部元件的内部时钟发生器、低电压检测、高性能模/数转换器(ADC)和串行通信模块等。S08AW系列具有极佳的电磁兼容性能(EMC)并提供了不同的引脚数(64, 48或44)、封装选项(QFP, LQFP或QF
10、N)及宽温度范围 (-40+125),可适应各类恶劣环境,因此该微控制器适用于高可靠的工业与汽车电子领域。S08AW系列有4种芯片:S08AW60/48/32/16,它们之间的区别主要是片上的程序存储器的容量不同且均有各种引脚及封装形式。S08AW60的内部资源参见表2-1。l 中央处理器为S08CPU。l 最高可达40-MHzCPU时钟频率和20-MHz 内部总线频率。 l 约62KB片上在线可编程FLASH存储器,具有模块保护与安全选项功能。l 2KB片上RAM。 l 时钟源选项:晶体振荡器、陶瓷谐振器、外部时钟或内部时钟(具有高精度调整功能)。 系统保护:l 可选的看门狗(COP)复位。
11、l 具有复位或中断功能的低压检测。 l 具有复位功能的非法操作码检测。l 具有复位功能的非法地址检测(仅部分器件有非法地址检测)。l 一种等待节省模式和两种停止节省模式。外设模块:l 具有自动比较功能的16通道、8位/10位精度的模数转换器ADC。 l 具有两个可选的串行通信接口模块SCI。 l 串行外设接口模块SPI。l 内部集成总线模块IIC,在最大总线负载情况下,其最高工作频率可达100 kbps,且负载越少,波特率越高。 l 2个定时器TPM模块:共有(2+6)通道的16位定时器/脉宽调制器,每个通道上都具有可选的输入采集、输出比较及PWM 功能。l 8个键盘中断模块KBI(可当作外部
12、中断)可通过软件选择边沿方向或边沿/电平模式。输入/输出: l 高达54个通用输入/输出(I/O)引脚l 引脚用作输入端时,可软件选择上拉电阻 l 引脚用作输出端时,可软件选择强/弱驱动能力和压摆率(slew rate)复位及其他:l 具有主复位引脚与上电复位(POR)功能 l 可选RESET、IRQ与BKGD/MS引脚处的内部上拉l 单线后台调试模块BDMl 可支持多达32个中断/复位源 表2-1 S08AW60系列的内部资源2.3 S08AW结构S08AW系统结构如图2-1所示,大致可分为MCU核心和MCU外设部分,对应于图中的左侧和右侧。1. MCU核心(HCS08CORE)部分S08A
13、W核心部分包括具有运行监视功能的增强型中央处理器S08CPU、后台调试控制(具有单线后台调试接口BDM)、系统控制(时钟监视、中断控制、低电压检测)等。S08MCU有2种存储器FLASH RAM;电压调整器,包括数字电路和模拟电路电源电压;程序存储器具有页面控制模式;具有内部时钟发生器(ICG)和低能耗晶体振荡器。2. MCU外设部分外设部分大致可分为六种外设:数字输入;数字输出;10位二进制精度的模拟量/数字量转换器A/D(ADC1P0P15);定时器/PWM(TPM1、TPM2);串行接口(SCI1、SCI2、SPI、IIC);许多微控制器中所没有的键盘中断输入(KBI1)。注意:引脚内部
14、集成有上拉电阻, 当引脚作为输入功能时,软件可为该引脚配置内部上拉电阻;引脚IRQ使能时,软件可配置该引脚上拉/下拉。IRQ引脚内部没有接到VDD的钳位二极管,所以IRQ的输入电平不能超过VDD;PTD2、PTD 3、PTD 7、PTG4可软件配置其上拉/下拉功能。 3. S08AW引脚介绍S08AW系列MCU有四个型号:S08AW60/48/32/16。有64-引脚、48-引脚、44-引脚三种,封装形式有LQFP、QFP或QFN三种。本书主要介绍64引脚的S08AW60.S08MCU的引脚大都采用功能复用技术,即“单引脚多功能”。某个引脚可能具有双重或三重功能,即通用I/O功能和特殊接口功能
15、,例如图2-2中第47引脚具有3种功能:通用I/O功能(PTD3)、键盘中断输入(KBI1P6)和模拟量/数字量转换输入A/D(AD1P11),其控制逻辑完全集成在MCU内部,可以用软件设定该引脚具有何种功能。由于S08MCU的许多引脚都具有2种或2种以上功能,使得它在体积、功耗、可靠性和应用的简单方便程度上与用户自行扩充的片外I/O口有着重要区别和显著的优势。2.4 系统功能引脚1. 振荡器引脚(EXTAL/XTAL)(External Reference Clock / Oscillator Input,EXTAL)和(Oscillator Output,XTAL)是晶振电路或者外部时钟引
16、脚。2. 外部复位引脚()该引脚低电平有效,为双向控制信号,输入低电平有效,将MCU复位,此时MCU被初始化成默认状态,当MCU内部功能引起复位时该引脚也可输出信号。3. 后台调试/模式选择引脚(BKGD /MS) BKGD /MS 引脚在后台调试模式(Background,BKGD)中作为单线通信引脚。在复位过程中作为MCU操作模式的选择(Mode Select,MS)引脚。在RESET信号的上升沿,将对这个引脚的状态进行检测和锁定(有关详细的描述请参见数据手册),如果外接有BDM模块,则MCU进入后台调试模式,此引脚有一个固定的上拉电阻,并且一直使能。4. 电源引脚(VDD,VSS,VDD
17、AD,VSSAD)VDD, VSS是MCU的主电源,供电范围为2.7V5.5V。VDDAD, VSSAD是MCU内部模拟电路的电源,给模数转换器(ADC)模块供电。2.5 输入输出功能引脚1. PTA(Port A)端口(PTA7PTA0)PTA7PTA0是8个单一功能引脚,具有可设定的通用输入或输出功能,第2633引脚。 2.PTB端口(PTB7/ AD1P7PTB0/ AD1P0)PTB7/ AD1P7PTB0/ AD1P0是8个双功能引脚,可定义为通用输入/输出引脚或模数转换器的模拟输入引脚。3. PTC端口(PTC6PTC0/SCL1) PTC6PTC0/SCL1是7个双功能/单一功能
18、引脚, 均可定义为通用输入或输出引脚;其中4个引脚(第60,6163,64引脚)也可作为串行通信引脚。4. PTD端口(PTD7/ AD1P15/KBI1P7PTD0/ AD1P8)PTD7/ AD1P15/KBI1P7PTD0/ AD1P8是8个三功能/双功能引脚 通用输入/输出引脚或模数转换器的模拟输入引脚外;其中5个引脚还可作为定时器引脚(例如TPM1CLK)或键盘中断输入引脚(例如KBI1P7)。5. PTE端口( PTE7/SPSCK1PTE0/ TXD1)PTE7/SPSCK1PTE0/TXD1是8个双功能引脚, 除均可定义为通用输入/输出引脚外;部分引脚还可作为串行通信引脚(例如
19、SPSCK1,TXD1),定时器引脚(例如TPM1CH0, TPM1CH1)。6. PTF端口( PTF7PTF0/ TPM1CH2) PTF7PTF0/ TPM1CH2是8个双功能/单一功能引脚, 均可定义为通用输入或输出引脚;其中6个引脚可作为定时器引脚(例如TPM1CH2, TPM1C3,TPM2CH0,TPM2CH1等)。7. PTG端口( PTG6/EXTALPTG0/ KBI1P0) PTG6/EXTALPTG0/ KBI1P0是7个双功能引脚, 均可定义为通用输入或输出引脚;其中5个引脚可作键盘中断输入引脚(例如KBI1P0, KBI1P4), 2个引脚可作外部晶体振荡器引脚(E
20、XTAL, XTAL),该组引脚分布比较分散,为第23、24、25、48、49、57和58引脚。2.6 电源电路1 通用I/O和外围设备接口电路S08AW60最多可提供56个引脚,这些引脚是通用I/O和片上外围设备(比如定时器、串行口和I/O系统)共享。在复位的瞬间,所有这些管脚被立即配置为高阻抗通用输入(内部上拉器件被禁用)。为了避免悬空输入管脚消耗额外的电流,用户应用程序中的复位初始化程序应该启用片内上拉器件或将未使用或未绑定的管脚的方向设置为输出以确保它们不会悬空。HCS08具有通过软件控制输出电压摆动率的特性(简称压摆率)。这个特性允许我们在两个参数不同的输出晶体管之间进行选择。当选择
21、了驱动能力小的晶体管输出时,输出电压的压摆率比较低可以降低噪声电磁干扰;当负载较重并且压摆率很重要的情况下,应该选择驱动能力大的晶体管输出。S08AW系列的引脚定义为输出引脚功能时,可具有高电流驱动能力,单引脚的高驱动电流为±10mA(拉电流或灌电流),但每片的总电流应小于120mA。2 系统时钟S08的系统时钟主要是指S08的内部时钟发生器(Internal Clock Generator,ICG)、系统时钟控制、总线时钟(Bus Clock,BUSCLK)等,参见图2-4。总线时钟(BUSCLK)是整个MCU外围系统的定时基准和工作同步脉冲,其频率固定为CPU工作频率ICGOUT
22、的1/2。当ICGOUT为12MHz时,总线时钟频率为6MHz。内部时钟发生器(ICG)模块为MCU 提供了几个时钟源选项。ICG 模块中包含锁频环(Frequency-Locked Loop,FLL)、时钟分频等模块,可以选择FLL锁频后的时钟作为MCU系统时钟,也可以选择内部或外部参考时钟作为MCU系统时钟。无论选择哪个时钟源,它都要通过系统时钟控制(降阶分频器),该分频器允许生成多种的输出时钟频率。详细描述参见第十章,这里仅作简单介绍。注意:ICGLCLK仅用于后台调试控制器模块(BDC)时钟。XCLK为系统固定频率时钟,主要为定时器提供时间基准脉冲。S08AW系列没有TMP3模块,仅S
23、08AC系列有。ICG 模块包括振荡器、内部参考时钟发生器、锁频环、和时钟选择4 个功能模块:3. 振荡器模块振荡器模块用于连接外部晶振或陶瓷振荡器。软件可选择两种频率范围。另外,该模块可以选择外部时钟作为系统时钟。振荡器模块可以配置为低功耗模式或高增益模式。4. 内部参考时钟发生器内部参考时钟发生器由两种可控时钟源组成。一个设计为大约8MHz,可选择用于后台调试控制器的局部时钟。另一个为243kHz,可以通过软件精细调整该时钟源频率。5. 锁频环FLL 锁频环FLL用于倍频内部或外部时钟源。状态位可以标识该电路是否达到锁定值或偏离锁定值。而且,该模块可以监测外部参考时钟和信号是否有效。FLL
24、 可产生8MHz40MHz的时钟频率。6. 时钟选择模块该模块用于选择将不同时钟源连接到系统时钟上。ICGERCLK是外部晶振或外部时钟源产生的参考时钟。XCLK为系统固定频率时钟,由固定时钟选择寄存器(FFE位)控制分频。ICGLCLK仅用于后台调试控制器模块(BDC)时钟。时钟源有多种选择:可外接32kHz100kHz 晶振或振荡器;外接1MHz16MHz 晶振或振荡器;外部时钟源;内部参考时钟发生器。当时钟源默认为内部时钟发生器时,可以使启动时间最小化。当无时钟源运行时,ICG模块将自动停止工作。三 硬件设计3.1 系统组成及工作原理图3-1上图即为整个系统的框图,二选一选择器用于选择测
25、量外接信号还是内测信号,这部分的电路由运算控制中心来控制,因为外接信号可能是三角波,正弦波,所以要加一级整形电路,对外接信号进行整形,整成方波。运算控制器便是单片机。模式选择按键用来选择系统所要求的模式,频率显示器一般选用数码管来显示。然后通过电平转换芯片将所测的频率值发送到PC机上,进行实时观察。3.2 频率测量原理AW60单片机的定时计数器自身带有输入捕捉功能单元, 为精测量频率提供了很好的基础。该功能可以精确捕捉一个外部事件的发生, 记录该事件发生的时间印记。假定上升沿触发输入捕捉事件, 当一个输入捕捉事件发生时, 即定时器通道引脚上的逻辑电平由低变高时,计数寄存器的计数值将被自动同步复
26、制写入通道数值寄存器中, 并置位输入捕获标志位,中断申请。即当每一次通道引脚的输入信号由低变高时, 计数寄存器中的计数值都会再次同步复制到通道数值寄存器中。若将连续2 次的计数寄存器数据记录下来, 那么时钟频率除以2 次数据的差值, 就是输入信号的频率。整个捕捉事件发生的时间印记是由硬件自动完成的, 因此所得到的频率值是非常准确的。如果测量值大于定时器的溢出周期,那么在两次输入捕捉中断之间就会发生定时器计数的溢出翻转,这时就需要考虑定时器的溢出次数。因此测量的频率f=f_clk/(T2-T1+65536*cnt)。3.3 硬件组成图3-2模拟开关用于选择外接信号还是内测信号,其硬件选择可有多种
27、,本系统采用继电器的方案,硬件简单,容易控制。由于外接信号要求为周期性信号并包括正弦波、方波、三角波等,且单片机只能对方波信号进行测量,所以要加一级整形电路,将外接信号整形成方波。要求不是很高,本系统采用单限比较器,容易调试和实理。单片机最小系统是整个系统的核心,控制所有的外围电路,并产生输入捕捉和对频率的测量。数码管主要用来显示当前测量的频率,按键用于控制系统工作的模式,SCI用于向PC机发送当前测量的频率值,各模块分工明确,共同完成系统的整体功能。3.4 单片机核心模块本设计采用AW60单片机,S08是2004年左右推出8位MCU,资源丰富,功耗低,性价比很高,是08系列MCU发展趋势,其
28、性能与许多16位MCU相当。MC9S08AW60是低成本、高性能8位微处理器S08家族中的成员,本次课程设计就是以该芯片为基础,来进行嵌入式的设计。该单片机的主要性能:(1)最高达40MHz的CPU工作频率和20Hz的内部总线工作频率表;时钟源选项包括晶振、谐振器、外部时钟或内部产生的时钟。(2)相比HC08 CPU指令集,S08 CPU增加了BGND指令。(3)单线后台调试模式接口;增强的断点能力,允许单一的断点设置在线调试(在片内调试的模块增加了多于两个的断点)。(4)内含32个中断/复位源;内含2KB的片内RAM;内含60KB的片内在线可编程Flash存储器,带有块保护和安全选项。(5)
29、可选的计算机正常操作(COP)复位;低电压检测和复位或中断;非法操作码检测与复位;非法地址检测与复位。(6)ADC:多达16个通道,10位A/D转换器与自动比较功能;两个串行通信接口SCI模块与可选的13位中断;一个串行外设接口SPI模块;集成电路互连总线I2C模块运作高达100kbps的最高总线负载;8引脚键盘中断KBI模块。(7)Timers:1个2通道和1个6通道16位定时器/脉冲宽度调制器模板。具有输入、捕捉、输出比较、脉宽调制功能。3.5 电压跟随和减法电路单片机产生的PWM波,只有正值没有负值,因此进入电压比较器之后,出来就成为了一条直线,原有的频率消失了,所以单片机无法测得内部信
30、号的频率,考虑到这种情况产生的原因,所以在内部信号出来后加了一级跟随器,避免它被外部电路影响,然后加了一级减法器,使得PWM波成为双极性波,再经过比较器,再进行测量,便成功得到了内部PWM波的频率。运放全部选用OP07,频带宽,失真小。 跟随电路 减法电路图3-43.6 模拟开关和电压比较电路模拟电路主要用于选择测量内测信号还是外接信号,经过比对,最终选择了继电器作为模拟开关,由于外接信号要求为周期性信号并包括正弦波、方波、三角波等,且单片机只能对方波信号进行测量,所以要加一级整形电路,将外接信号整形成方波。要求不是很高,本系统采用单限比较器,容易调试和实理。本部分的核心元件选择了高性能运放L
31、M318,精度高,运算速度快。 继电器电路 比较器电路图3-53.7 显示和控制电路本系统采用数码管显示测量频率的大小,钜阵键盘用于控制系统的工作。数码管显示原理简单,编程比较容易实现。矩阵键盘可以实现多种控制,便于扩展功能,同时又可节省大量的IO口,供单片机的其它功能应用。 数码管显示电路 键盘控制电路图3-63.8电平转换电路为了与主机进行通信,定时向PC机发送测量的频率值,实时监测测量数据,本系统加了一级电平转换电路,用于与PC机进行通信。采用最常用的RS232电平转换芯片。电平转换电路图3-7四 程序设计4.1 主程序设计图4-1程序开始后初始化芯片,模块,变量,然后进行主循环,开始执
32、行主程序,先栓测开始按键是否按下,如果开始按键按下,则开始测量频率,并用数码管进行显示,并定时发送到PC机上,执行过程中还可检测是否有模式选择按键按下,如果按下则要进行相应的调整,如果开始键没有按下,关掉输入捕捉中断,对显示变量进行清零,数码管显示零,不对信号进行测量。4.2 子程序设计图4-24.3调试及结果本系统调试共分四步:(1)确保各模块连接良好,打开供电电源。(2)按下系统启动按键,整个系统开始工作。(3)选择测量内接信号还是外接信号,默认采用测量外接信号。(4)选择测量大频率还是小频率。默认采用测量大频率。参考目录:1 张迎新单片微型计算机原理、应用及接口技术(第2版)M北京:国防
33、工业出版社,20042伟福LAB6000系列单片机仿真实验系统使用说明书3阎石数字电路技术基础(第五版)北京:高等教育出版社,20064单片机开发板的原理图及系统。5王威 嵌入式微控制器S08AW原理与实践 北京:航空航天出版社附录:模拟电路仿真图主程序Main.c程序#include "Includes.h"void main(void) /1 主程序使用的变量定义 uint16 mRuncount=0,k=0; /运行计数器 /2 关总中断 DisableInterrupt(); /禁止总中断 /3 芯片初始化 MCUInit(); LEDinit(); TPMChIn
34、it(TPM_NUM_2,TPM1_CH_0); KBInit(); SCIInit(1,SYSCLK,9600); /4 模块初始化 GPIO_Init(PORT_F,7,1,1); Light_Init(Light_Run_PORT,Light_Run,Light_OFF); PWM(TPM_NUM_1,TPM1_CH_0,0x7d0, 50); LedBuf0=0; LedBuf1=0; LedBuf2=0; LedBuf3=0; cnt=0;rest=0;flag=0; leddot=0; scibuf5 ='H' scibuf6 ='Z' scibuf
35、7 =' ' start=0; EnableTPM2ChInt(TPM1_CH_0); EnableKBint(); EnableInterrupt(); while (1) if(start=1) LEDshow(LedBuf); mRuncount+; if(mRuncount>=1500) mRuncount=0; EnableTPM2ChInt(TPM1_CH_0); if(keyval=0xde) TPM_CSTR(TPM_NUM_2) =0b00010000; if(keyval=0xee) TPM_CSTR(TPM_NUM_2) =0b00010101; i
36、f(keyval=0xeb) GPIO_Set(PORT_F,7,Light_OFF); if(keyval=0xdb) GPIO_Set(PORT_F,7,Light_ON); k+; if(k>=5000) k=0; SCISendN(1,8,scibuf); else leddot=0; LedBuf0=0; LedBuf1=0; LedBuf2=0; LedBuf3=0; LEDshow(LedBuf); DisableTPM2ChInt(TPM1_CH_0); isr.c 程序#include "isr.h"/此处为用户新定义中断处理函数的存放处interrupt void isrKeyBoard(void) uint8 value; uint16 i; for(i=0; i<1000; i+); DisableInterrupt(); /关总中断 DisableKBint(); /屏蔽键盘中断 value = KBScanN(10); /扫描键值,存于value中 if(value!=0xFF) SCISend1(1,value); if(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年企业知识产权保护与员工保密责任协议细则3篇
- 2024年度车辆租赁与赛事赞助合同样本3篇
- 招新宣传语幽默
- 高三语文摸底试题
- 春节安全通知范文集锦6篇
- 2024年智慧城市交通规划设计与施工劳务分包合同示范3篇
- 爆破销售课程设计
- 婚礼庆典父母讲话稿
- 幼儿园鸡蛋孵化课程设计
- 治愈早安感言(215句)
- 2022-2023学年广东省深圳市罗湖区八年级(上)期末历史试卷
- 智慧楼宇IBMS整体解决方案
- 老年人护理安全风险管理
- 国家开放大学电大专科《建筑工程项目管理》2024期末试题及答案
- (完整版)信息安全课件
- 2024年“七五”普法考试题库及答案(共100题)
- 风电、光伏技术标准清单
- 备用电源使用安全管理制度
- 试卷(完整版)python考试复习题库复习知识点试卷试题
- 鱼塘租赁合同模板8篇
- DB34∕T 4504-2023 中医治未病科设施配置指南
评论
0/150
提交评论