1. 程式人生 > 實用技巧 >293【畢設課設】基於51微控制器的交流電流檢測系統設計(電流互感器)

293【畢設課設】基於51微控制器的交流電流檢測系統設計(電流互感器)

【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

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;
點選並拖拽以移動