传感器是测控系统的重要组成部分,但有些传感器,如增量式或绝对式旋转编码器,因无配套的二次仪表,给使用带来不便。有些传感器虽然可以买到配套的仪表,但价格昂贵,功能单一且功能无法扩展。为此,本课题以设计一种通用性强,功能扩展方便的测量仪表为目的,将计算机技术与嵌入式微处理器技术用于测量仪表当中,设计一种基于ARM的嵌入式智能仪表。课题主要研究工作包括: 1.在分析比较各种二次仪表功能的基础上,提出了基于ARM的嵌入式智能仪表设计方案。搭建了仪表的硬件平台。 2.软件设计实现了μC/OS-Ⅱ嵌入式系统在ARM7微控制器上的移植。在此基础上,对嵌入式系统进行了一定的扩展,编写了LCD驱动程序,调用了串口通信,A/D转换等模块的API函数,建立了多任务环境,使仪表兼具PWM脉宽调制功能、数据采集、显示和传输功能。 3.通过增量式、绝对式旋转编码器实验、转矩转速传感器实验、输出模拟信号的角度传感器实验和PWM输出实验验证仪表的功能。 RTOS平台的构建,降低了软件设计的复杂度,提高了系统的实时性和灵活性,缩短了开发周期。经过实验验证,该仪表能够准确测定频率信号、模拟信号及数字信号。
上传时间: 2013-04-24
上传用户:1234567890qqq
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
开关在电路中起接通信号或断开信号的作用。最常见的可控开关是继电器,当给驱动继电器的驱动电路加高电平或低电平时,继电器就吸合或释放,其触点接通或断开电路。CMOS模拟开关是一种可控开关,它不象继电器那样可以用在大电流、高电压场合,只适于处理幅度不超过其工作电压、电流较小的模拟或数字信号。 一、常用CMOS模拟开关引脚功能和工作原理 1.四双向模拟开关CD4066 CD4066 的引脚功能如图1所示。每个封装内部有4个独立的模拟开关,每个模拟开关有输入、输出、控制三个端子,其中输入端和输出端可互换。当控制端加高电平时,开关导通;当控制端加低电平时开关截止。模拟开关导通时,导通电阻为几十欧姆;模拟开关截止时,呈现很高的阻抗,可以看成为开路。模拟开关可传输数字信号和模拟信号,可传输的模拟信号的上限频率为40MHz。各开关间的串扰很小,典型值为-50dB。
上传时间: 2013-10-27
上传用户:bibirnovis
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
角度传感器代码
上传时间: 2013-10-09
上传用户:15527161163
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230
#include<iom16v.h> #include<macros.h> #define uint unsigned int #define uchar unsigned char uint a,b,c,d=0; void delay(c) { for for(a=0;a<c;a++) for(b=0;b<12;b++); }; uchar tab[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
上传时间: 2013-10-21
上传用户:13788529953
以STC12C5A60S2单片机为控制核心,利用单片机控制风扇完成对帆板转角的控制。该系统主要模块有单片机控制模块,人机交互模块、角度检测模块、风扇控制调速模块、电源模块、声光报警模块。由角度传感器测得帆板角度并反馈给单片机风扇转速控制模块构成风速闭环控制系统,利用单片机产生的PWM控制风扇电机驱动模块,从而实现角度的精准控制。
上传时间: 2013-10-13
上传用户:a155166
a_bit equ 20h ;个位数存放处 b_bit equ 21h ;十位数存放处 temp equ 22h ;计数器寄存器 star: mov temp,#0 ;初始化计数器 stlop: acall display inc temp mov a,temp cjne a,#100,next ;=100重来 mov temp,#0 next: ljmp stlop ;显示子程序 display: mov a,temp ;将temp中的十六进制数转换成10进制 mov b,#10 ;10进制/10=10进制 div ab mov b_bit,a ;十位在a mov a_bit,b ;个位在b mov dptr,#numtab ;指定查表启始地址 mov r0,#4 dpl1: mov r1,#250 ;显示1000次 dplop: mov a,a_bit ;取个位数 MOVC A,@A+DPTR ;查个位数的7段代码 mov p0,a ;送出个位的7段代码
上传时间: 2013-11-06
上传用户:lx9076
生活中许多目标的高度和水平距离需要进行测量。目前主要的测量方法,仍以传统的皮尺丈量为主,测量效率不高,有时还很不方便,没有技术成熟的数字式测高测距产品。以基本的数学方法为理论依据,利用遥控小车做为载体,采用角度传感器测量角度、霍尔传感器测量水平距离等,通过单片机LM3S615进行数据计算,实现了对待测目标物体的高度、水平距离等数据的快速、精确和数字式的测量,高度测量精度可达99.06%,水平测量精度则可达98.06%。 Abstract: In our lives, the height and horizontal distance of some goals are needed to be measured. Because the currently used methods are still traditional tape-based measuring methods, and the measuring efficiency is low and inconvenient so some kinds of digital and portable measuring methods or instruments are needed. Based on the basic math theory, this paper designed and manufactured a portable, digital and remote controlled measuring mobile small vehicle, which assembled with angle measuring sensor for angle measurement and Hall sensor for horizontal distance measuring. MCU LM3S615 calculated the height and horizontal distance data gotten from these sensors. The measuring process is simple, the measuring results are more accurate and the measuring efficiency is higher than traditional measure instruments. The accuracy of height and distance measurement can reach 99.06% and 98.06%.
上传时间: 2013-10-30
上传用户:jackandlee