基于51单片机的交流电流检测系统设计(电流互感器)
51交流电流检测系统设计-数码管-电流互感器
本设计由51单片机电路+数码管显示电路+交流电压检测电路+交流电流检测电路+电源电路组成。
1、数码管实时显示交流电流值和交流电压值。
点击并拖拽以移动 #include "intrins.h" #include "delay.h" #include "display_seg.h" #include<timer.h> sfr P1M1 = 0x91; //PxM1.n,PxM0.n =00--->Standard, 01--->push-pull sfr P1M0 = 0x92; // =10--->pure input, 11--->open drain sfr P0M1 = 0x93; sfr P0M0 = 0x94; sfr P2M1 = 0x95; sfr P2M0 = 0x96; sfr P3M1 = 0xB1; sfr P3M0 = 0xB2; sfr P4M1 = 0xB3; sfr P4M0 = 0xB4; sfr P5M1 = 0xC9; sfr P5M0 = 0xCA; sfr P6M1 = 0xCB; sfr P6M0 = 0xCC; sfr P7M1 = 0xE1; sfr P7M0 = 0xE2; sfr ADC_CONTR = 0xBC; //ADC控制寄存器 sfr ADC_RES = 0xBD; //ADC高8位结果 sfr ADC_LOW2 = 0xBE; //ADC低2位结果 sfr P1ASF = 0x9D; //P1口第2功能控制寄存器 #define ADC_POWER 0x80 //ADC电源控制位 #define ADC_FLAG 0x10 //ADC完成标志 #define ADC_START 0x08 //ADC起始控制位 #define ADC_SPEEDLL 0x00 //540个时钟 #define ADC_SPEEDL 0x20 //360个时钟 #define ADC_SPEEDH 0x40 //180个时钟 #define ADC_SPEEDHH 0x60 //90个时钟 void InitADC(); unsigned char adVtab[5]; unsigned char adAtab[5]; unsigned char count = 0; 点击并拖拽以移动