版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字式电参数测试仪的设计报告数字式电参数测试仪的设计报告摘要机内部自带的12AD模/数转化器读取外部输入1V,因此需35872MHz,所以经过比较器后的输入信号可以被P=U*U/R关键词:STM32f103RBT6,12AD模拟开关,目录一.系统方案STM32方案一:STM32STM32ARMCortex-M3内核STM32f103RBT6有DMA,2个12为ADC16通道4个1651个可用IO口。STM323.3VSTM32f103RBT61832方案二:STC12C5A60S2单片机STC511016/IO5V8CPU,并且价格低廉。2SADSTC12ADCSTM32方案一:串联分压原理VRx R01RxR0电压。由公式Rx=V*R0/UxR0方案二:利用直流电桥平衡原理的方案图2 电桥(其中为可变电位器R3为已知电阻,R4为被测电阻)电表指针指向正中间。由R1*R4=R3*R4.在通过R4方案三:利用555构成单稳态的方案图3 555定时器构成单稳态555[(R1+2R2)*C*In2]得到公式:R2=1/2*[1/(f*c*Ln2)-R1]12ADC方案一:霍尔传感器测电流法霍尔传感器由于通电螺线管内部存在磁场,传感器测量出磁场,从而确定导线中电流的大传感器测量出磁场,从而确定导线中电流的大小。利用这一原理可以设计制成霍尔电流传感小。利用这一原理可以设计制成霍尔电流传感器。方案二:转换电压测电流法器。量。再由欧姆定理进行转换。量。再由欧姆定理进行转换。单,容易实现,且成本相对于方案一大大减小。设计选用了方案二。12A/D设计选用了方案二。测量电压值的方案本设计采用了分压法测电压。分压法具有电路简单,操作方便的特点。信号放大方案的选择与比较莫斯管搭建放大电路。方案二:采用集成放大芯片对信号进行放大。ad620需要±5V二.理论分析与设计频率测量的精确度分析STM32f103RBT68MHz72MHz50MV4V3.3VSTM32电压值的测量分析AD3.3V,因此要3V3V10V电流的测量分析采样电阻选值为 86Ω,待测电流范围为100µA~10mA,即所采得电压理想值范围8.6mv~860mv,实际电压值略有偏差。由于所用A/D为12位A/D,基本可以满足8.6mv~860mvd的电压范围,所以把所采得的电压直接交由单片机测量处理。电阻的测量分析电阻的测量整体上采用串联分压原理进行100,1K,10K,100K。各个分压电阻之间用三个继电器进行控所测电阻值满足发挥部分的要求功率的测量分析以电流测量模式和电压测量模式同时工作,将所测得的电压和电流值,利用P=U*I,间接的到所测器件在实际工作电路中的功率。三.电路与程序设计各模块电路电源模块3.3V5V的驱动电源,-5V+5V3.7V7.4V78055Vlm1117-3.33.3V-5V7660s价格低,功耗低,电路简单的特点。+5V电压+3.3V电压+5V电压+3.3V电压-5V电压电流检测电路-5V电压电压检测电路电阻检测模块频率检测模块显示模块主控模块主要程序#include<stm32f10x_lib.h>#include"delay.h"#include"sys.h"#include"N5110.h"#include"ADC1.h"#include"Frequency.h"u16g_Wave_Count=0;doubler=0;voidJiDian_RCC_Configuration(void);voidJiDian_GPIO_Configuration(void);voidMeasure_R(void);voidMeasure_V(void);#definePC13PCout(13)#definePC1PCout(1)#definePC3PCout(3)#definePC0_VPCout(0) //电压换挡#defineLED0PCout(9)#defineLED1PCout(7)#defineLED2PBout(15)#defineLED3PBout(13)intVa=0,Va1=0;intmain(){doublea=0.0;Stm32_Clock_Init(9);delay_init(72);N5110_RCC_Configuration();N5110_Init();//测频初始化RCC_Configuration();//时钟初始化GPIO_Configuration//NVIC_Configuration//中断配置初始化TIM1ERT_Configuration();//TIM1TIM2_Configuration//TIM2初始化//ADC初始化:ADC1_RCC_Configuration();ADC1_GPIO_Configuration();ADC1_Configuration();DMA_RCC_Configuration();DMA_ADC1_Configuration();//继电器初始化JiDian_RCC_Configuration();JiDian_GPIO_Configuration();PC130; //100PC1=0;PC3=0;PC0_V=0;while(1){N5110_Write_Litter_Str("Fre:",0,0,1);N5110_Print_Int(g_Wave_Count*2,"Hz",0,0,0);//测电流a=Get_Volatge(3)/(86.0*4.5*(1+0.0507315));N5110_Write_Litter_Str("A :",1,0,1); //显示Volatge:N5110_Print_Double(a,"mA",0,0,0);//测电压Measure_V();//测电阻Measure_R();//测功率N5110_Write_Litter_Str("P:",4,0,1); //Volatge:N5110_Print_DoublemW",0,0,0); //显示采集电压}}//**********************************************************************//函数名称:voidTIM1_CC_IRQHandler(void)//功能:定时器1比较匹配中断//参数:无//返回值:无//***********************************************************************voidTIM1_CC_IRQHandler(void){if(TIM_GetITStatus(TIM1,TIM_IT_CC1)!=RESET) //判断是否为定时器1较匹配中断{TIM_ClearITPendingBit(TIM1,TIM_FLAG_CC1); //TIM1待处理位TIM_ClearFlag(TIM1,TIM_FLAG_CC1);//清除TIM1的待处理标志位}}//**********************************************************************//TIM2_IRQHandler(void)//功能:定时器2溢出中断,每1ms溢出一次//参数:无//返回值:无//***********************************************************************voidTIM2_IRQHandler(void){staticu16Count=0;if(TIM_GetITStatus(TIM2,TIM_IT_Update)!=RESET) //2{Count++;if(Count>=500){Count=0;//1sg_Wave_CountTIM_GetCounter(TIM1);TIM_SetCounter(TIM1,0);}TIM_ClearITPendingBit(TIM2,TIM_IT_Update);//清除TIM2的待处理位TIM_ClearFlag(TIM2,TIM_FLAG_Update);//清中断标记}}voidJiDian_RCC_Configuration(void){RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOB,ENABLE);//GPIOA,ADC1}voidJiDian_GPIO_Configuration(void){GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin =GPIO_Pin_13|GPIO_Pin_3|GPIO_Pin_1|GPIO_Pin_0|GPIO_Pin_9|GPIO_Pin_7;//0,2,3,4管脚GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP; //状态为模拟输入GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin =GPIO_Pin_15|GPIO_Pin_13;//0,2,3,4脚GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP; //状态为模拟输入GPIO_Init(GPIOB,&GPIO_InitStructure);}voidMeasure_R(void) //测电阻换挡{if((PC13==0)&&(PC1==0)&&(PC30)) //100{r=3.3*101.15*1000/Get_Volatge(1)-101.15;N5110_Write_Litter_Str("R:",3,0,1); //Volatge:N5110_Print_Double(r,"",0,0,0);//显示采集电压if((r>=800)&&(r<8000))//转到1k{PC13=0;delay_ms(100);PC1=1;delay_ms(100);delay_us(100);PC3=0;delay_ms(100);}if((r>=8000) &&(r<80000))//转到10k{PC13=1;delay_ms(100);PC3=0;delay_ms(100);PC1=0;delay_ms(100);}if(r>=80000)//转到100k{PC13=1;delay_ms(100);PC3=1;delay_ms(100);PC1=0;delay_ms(100);}LED0=1; LED1=0;LED2=0; LED3=0;}if((PC13==0)&&(PC1==1)&&(PC30)) //1k{r=3.3*998.3*1000/Get_Volatge(1)-998.3;N5110_Write_Litter_Str("R:",3,0,1); //Volatge:N5110_Print_Double(r," ",0,0,0);//显示采集电压if(r<800)//转到100{PC13=0;delay_ms(100);PC1=0;delay_ms(100);PC3=0;delay_ms(100);}if((r>=8000)&&(r<80000))//转到10k{PC13=1;delay_ms(100);PC3=0;delay_ms(100);PC1=0;delay_ms(100);}if(r>=80000)//转到100k{PC13=1;delay_ms(100);PC3=1;delay_ms(100);PC1=0;delay_ms(100);}LED0=0; LED1=1;LED2=0; LED3=0;}if((PC13==1)&&(PC3==0)&&(PC10)) //10k{r=3.3*9.893*1000*1000/Get_Volatge(1)-9.893*1000;N5110_Write_Litter_Str("R:",3,0,1); //Volatge:N5110_Print_Double(r,"",0,0,0);if(r<800)//转到100{PC13=0;delay_ms(100);PC3=0;delay_ms(100);PC1=0;delay_ms(100);}if((r>=800)&&(r<8000))//转到1k{PC13=0;delay_ms(100);PC1=1;delay_ms(100);PC3=0;delay_ms(100);}if(r>=80000)//转到100k{PC13=1;delay_ms(100);PC3=1;delay_ms(100);PC1=0;delay_ms(100);}LED0=0; LED1=0;LED2=1; LED3=0;}if((PC13==1)&&(PC3==1)&&(PC10)) //100k{r=3.3*101.20*1000*1000/Get_Volatge(1)-101.20*1000;N5110_Write_Litter_Str("R:",3,0,1); //Volatge:N5110_Print_Double(r,"",0,0,0);if(r<800)//转到100{PC13=0;delay_ms(100);PC3=0;delay_ms(100);PC1=0;delay_ms(100);}if((r>=800)&&(r<8000))//转到1k{PC13=0;delay_ms(100);PC1=1;delay_ms(100);PC3=0;delay_ms(100);}if((r>=8000)&&(r<80000))//转到10k{PC13=1;delay_ms(100);PC3=0;delay_ms(100);PC1=0;delay_ms(100);}LED0=0; LED1=0;LED2=0; LED3=1;}}voidMeasure_V(void) //电压换挡{Va=Get_Volatge(0);if((Va<300)){PC0_V=1;delay_ms(20);N5110_Write_Litter_Str("V:",2,0,1); //Volatge:Va1=Get_Volatge(0);N5110_Print_Int(Va1,"mV",0,0,0);//显示采集电压delay_ms(20);}else{if(PC0_V==1){delay_ms(20);N5110_Write_Litter_Str("V:",2,0,1); //Volatge:Va1=Get_Volatge(0);N5110_Print_Int(Va1,"mV",0,0,0); //delay_ms(20);if(Va1>=3000)PC0_V=0;elsePC0_V=1;}else{PC0_V=0;delay_ms(20);N5110_Write_Litter_Str("V:",2,0,1); //Volatge:Va1Get_Volatge(0)*10;N5110_Print_Int(Va1,"mV",0,0,0); //delay_ms(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海地区2024二手房产交易协议模板版A版
- 2024演出经纪合同协议范本
- 浙江东方职业技术学院《算法与数据结构综合实验》2023-2024学年第一学期期末试卷
- 长春信息技术职业学院《嵌入式系统设计及应用》2023-2024学年第一学期期末试卷
- 云南司法警官职业学院《酒文化概论》2023-2024学年第一学期期末试卷
- 小学德育实践中的生命教育策略
- 小学德育与法教育的融合策略研究
- 小班数学活动:有趣的圆
- 如何预防校园诈骗
- 幼儿园厨房常规培训
- 腹膜透析并发腹膜炎临床路径
- (完整版)市政工程施工工期定额(定稿).docx
- 商业发票INVOICE模板
- 2006年工资标准及套改对应表(共7页)
- 超声波焊接作业指导书(共8页)
- 《你的生命有什么可能》PPT
- 双梁桥式起重机设计
- 电机与电气控制技术PPT课件
- 废弃钻井泥浆和压裂返排液无害化处理研究报告
- 论文-基于单片机的抢答器.doc
- 食品安全监督抽检异议处理申请书格式
评论
0/150
提交评论