Holtek指令集说明 注:由于资源大小问题,其中以下几款MCU 只有62 条指令,其余均为63 条指令。HT48CA0/HT48RA0A 无RETI 指令HT48R05A-1 无TABRDL 指令
上传时间: 2013-10-16
上传用户:txfyddz
Smith控制算法仿真与控制:了解计算机控制过程,及用不同种高级语言编写实验程序的方法与特点。了解Smith算法和程序设计。掌握阶跃信号、自定义信号下,Smith算法的参数整定及被控对象的仿真与控制。了解组态软件在工业自动化方面的应用和基本使用方法。 单回路温度控制箱A/D、DA转换板温度检测元件XMZ数字显示仪万用表 1 Smith控制算法的参数整定仿真,绘制仿真曲线。2 Smith控制算法实时控制的参数整定,绘制实时控制曲线。
上传时间: 2013-11-25
上传用户:europa_lin
C51基本结构程序设计1. 掌握if语句来实现选择结构,能利用if语句编写相应的分枝结构的程序。在嵌套if语句中,一定要搞清楚else与哪个if结合的问题。2.掌握switch语句来实现多向分枝选择结构,能利用switch语句编写相应的分枝结构的程序。 3. 掌握循环语句的即初始化、循环体、循环控制及结束四个部分,并能进行循环语句的程序设计。分别掌握for 语句、while语句以及do-while语句的使用语法及方法,能利用这三种循环结构进行循环程序设计,理解这三种语句的异同。4.理解并掌握continue、break语句在循环结构和选择结构中的作用。对于goto语句,理解该语句优缺点。C51语言是结构化编程语言。结构化语言的基本元素是模块,它是程序的一部分.只有一个出口和一个入口.不允许有偶然的中途插入或以模块的其它路径退出。结构化编程语言在没有妥善保护或恢复堆栈和其它相关的寄存器之前,不应随便跳入或跳出一个模块。因此使用这种结构化语言进行编程,当要退出中断时,堆栈不会因为程序使用了任何可以接受的命令而崩溃。 结构化程序由若干模块组成,每个模块中包含着若干个基本结构,而每个基本结构中可以有若干条语句。归纳起来,C51程序有顺序结构、选择结构、循环结构共三种结构。
上传时间: 2013-11-01
上传用户:四只眼
多路电压采集系统一、实验目的1.熟悉可编程芯片ADC0809,8253的工作过程,掌握它们的编程方法。2.加深对所学知识的理解并学会应用所学的知识,达到在应用中掌握知识的目的。 二、实验内容与要求1.基本要求通过一个A/D转换器循环采样4路模拟电压,每隔一定时间去采样一次,一次按顺序采样4路信号。A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示包括电压路数和数据值。2. 提高要求 (1) 可以实现循环采集和选择采集2种方式。(2)在CRT上绘制电压变化曲线。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、总体设计设计思路如下:1) 4路模拟电压信号通过4个电位器提供0-5V的电压信号。2) 选择ADC0809芯片作为A/D转换器,4路输入信号分别接到ADC0809的IN0—IN4通道,每隔一定的时间采样一次,采完一路采集下一路,4路电压循环采集。3) 利用3个LED数码管显示数据,1个数码管用来显示输入电压路数,3个数码管用来显示电压采样值。4) 延时由8253定时/计数器来实现。 五、硬件电路设计根据设计思路,硬件主要利用了微机实验平台上的ADC0809模数转换器、8253定时/计数器以及LED显示输出等模块。电路原理图如下:1.基本接口实验板部分1) 电位计模块,4个电位计输出4路1-5V的电压信号。2) ADC0809模数转换器,将4路电压信号接到IN0-IN3,ADD_A、ADD_B、ADD_C分别接A0、A1、A2,CS_AD接CS0时,4个采样通道对应的地址分别为280H—283H。3) 延时模块,8253和8255组成延时电路。8255的PA0接到8253的OUT0,程序中查询计数是否结束。硬件电路图如图1所示。 图1 基本实验板上的电路图实验板上的LED显示部分实验板上主要用到了LED数码管显示电路,插孔CS1用于数码管段码的输出选通,插孔CS2用于数码管位选信号的输出选通。电路图如图2所示。
上传时间: 2013-11-06
上传用户:sunchao524
本设计采用TMS320F2808 DSP 芯片,制作了一台音频频率数字扫频仪,能够测量未知网络音频范围内的幅频特性。该系统具有良好的可扩展性,关键系统参数软件可调,并可通过算法设计实现相频特性的测量,同时小巧灵活,具有实时性强,精度高的特点。用户可以通过PC 机上友好的用户界面方便灵活地控制整个系统的工作,查看数据及观察测试曲线。
上传时间: 2013-10-08
上传用户:shawvi
另一条通讯。
上传时间: 2014-12-29
上传用户:ssj927211
分析ADSL传输线路,对双绞线的线路特性、噪声特性进行了建模和仿真。参考5种典型的载波环路,讨论了近端串音、远端串音、HDSL线路、T1线路、ISDN线路以及高斯白噪声对传输线路的影响,得到ADSL线路的信道容量与功率的关系曲线。
上传时间: 2013-11-21
上传用户:asdgfsdfht
介绍一款基于SOPC的TFT-LCD触控屏控制器IP核的设计与实现。采用Verilog HDL作控制器的模块设计,并用ModelSim仿真测试,验证其正确性;利用嵌入式SOPC开发工具,在开发板上完成触控屏显示驱动及其控制模块的系统设计,给出系统硬、软件设计,实现TFT-LCD触控屏彩条显示。这款触控屏控制器IP核具备较强的通用性和兼容性,具有一定的使用范围和应用价值。
上传时间: 2013-12-24
上传用户:sdq_123
LPC1700系列Cortex-M3微控制器用于处理要求高度集成和低功耗的嵌入式应用。ARM Cortex-M3是下一代新生内核,它可提供系统增强型特性,例如现代化调试特性和支持更高级别的块集成。LPC1700系列Cortex-M3微控制器的操作频率可达100MHz。ARM Cortex-M3 CPU具有3级流水线和哈佛结构,带独立的本地指令和数据总线以及用于外设的稍微低性能的第三条总线。ARM Cortex-M3 CPU还包含一个支持随机跳转的内部预取指单元。LPC1700系列Cortex-M3微控制器的外设组件包含高达512KB的Flash存储器、64KB的数据存储器、以太网MAC、USB主机/从机/OTG接口、8通道的通用DMA控制器、4个UART、2条CAN通道、2个SSP控制器、SPI接口、3个I2C接口、2-输入和2-输出的I2S接口、8通道的12位ADC、10位DAC、电机控制PWM、正交编码器接口、4个通用定时器、6-输出的通用PWM、带独立电池供电的超低功耗RTC和多达70个的通用I/O管脚
上传时间: 2013-10-16
上传用户:icarus
用途:测量地磁方向,测量物体静止时候的方向,测量传感器周围磁力线的方向。注意,测量地磁时候容易受到周围磁场影响,主芯片HMC5883 三轴磁阻传感器特点(抄自网上): 1,数字量输出:I2C 数字量输出接口,设计使用非常方便。 2,尺寸小: 3x3x0.9mm LCC 封装,适合大规模量产使用。 3,精度高:1-2 度,内置12 位A/D,OFFSET, SET/RESET 电路,不会出现磁饱和现象,不会有累加误差。 4,支持自动校准程序,简化使用步骤,终端产品使用非常方便。 5,内置自测试电路,方便量产测试,无需增加额外昂贵的测试设备。 6,功耗低:供电电压1.8V, 功耗睡眠模式-2.5uA 测量模式-0.6mA 连接方法: 只要连接VCC,GND,SDA,SDL 四条线。 Arduino GND -> HMC5883L GND Arduino 3.3V -> HMC5883L VCC Arduino A4 (SDA) -> HMC5883L SDA Arduino A5 (SCL) -> HMC5883L SCL (注意,接线是A4,A5,不是D4,D5) 源程序: #include <Wire.h> #include <HMC5883L.h> HMC5883Lcompass; voidsetup() { Serial.begin(9600); Wire.begin(); compass = HMC5883L(); compass.SetScale(1.3); compass.SetMeasurementMode(Measurement_Continuous); } voidloop() { MagnetometerRaw raw = compass.ReadRawAxis(); MagnetometerScaled scaled = compass.ReadScaledAxis(); float xHeading = atan2(scaled.YAxis, scaled.XAxis); float yHeading = atan2(scaled.ZAxis, scaled.XAxis); float zHeading = atan2(scaled.ZAxis, scaled.YAxis); if(xHeading < 0) xHeading += 2*PI; if(xHeading > 2*PI) xHeading -= 2*PI; if(yHeading < 0) yHeading += 2*PI; if(yHeading > 2*PI) yHeading -= 2*PI; if(zHeading < 0) zHeading += 2*PI; if(zHeading > 2*PI) zHeading -= 2*PI; float xDegrees = xHeading * 180/M_PI; float yDegrees = yHeading * 180/M_PI; float zDegrees = zHeading * 180/M_PI; Serial.print(xDegrees); Serial.print(","); Serial.print(yDegrees); Serial.print(","); Serial.print(zDegrees); Serial.println(";"); delay(100); }
上传时间: 2013-12-16
上传用户:stella2015