资源简介
89C51与电能计芯片CSD5463进行SPI通讯,并能通过12864液晶屏实时显示功率、电压、电流和功率因数等

代码片段和文件信息
//头文件
#include
#include
#include
#define uint unsigned int
#define uchar unsigned char
typedef bit bool;
typedef unsigned char uint8; /* defined for unsigned 8-bits integer variable 无符号8位整型变量 */
typedef signed char int8; /* defined for signed 8-bits integer variable 有符号8位整型变量 */
typedef unsigned int uint16; /* defined for unsigned 16-bits integer variable 无符号16位整型变量 */
typedef signed int int16; /* defined for signed 16-bits integer variable 有符号16位整型变量 */
typedef unsigned long uint32; /* defined for unsigned 32-bits integer variable 无符号32位整型变量 */
typedef signed long int32; /* defined for signed 32-bits integer variable 有符号32位整型变量 */
typedef float fp32; /* single precision floating point variable (32bits) 单精度浮点数(32位长度) */
uint16 MeasureData[20];
/*****************************************************************************/
sbit LCM_cs = P3^5; //RS
sbit LCM_std = P3^6; //SID
sbit LCM_sclk = P3^4; //SCLK
sbit LCM_psb = P3^7; //H=并口; L=串口;
sbit LCM_rst = P2^4; //Reset Signal 低电平有效 sbit LCM_rst = P2^0;
//sbit beep = P2^5;
//sbit p2_4 = P2^6; //定义背光控制口
char abc;
char aabbccddee;
char ffgghhiijj;
char iqT=125;
uchar code tab1[]={
“电压 “
“PF “
“电流 “
“功率 “
};
/****************************************************************************/
uchar r[3]={0x000x000x00};
/******************************************************************
接口定义
******************************************************************/
sbit SCLK=P1^1; //ck
sbit MOSI=P1^0; //DI
sbit MISO=P1^2; //DO //这个定义对吗?
sbit INT=P3^2;
sbit CS=P1^3;
sbit RST=P1^4; //RST
#define CS5463_VScale 525 //计算电压比例220V*250mv/110mv=500V
#define CS5463_IScale (250/10) //计算电流比例
static uint8 RX_Buff[4]; //CS5463读写缓冲区
uint8 sta; //芯片状态
#define READ_MASK 0xBF //读寄存器时的屏蔽码,与(写)地址相与
#define CMD_SYNC0 0XFE //结束串口重新初始化
#define CMD_SYNC1 0XFF //开始串口重新初始化
#define REG_CONFR 0x40 //配置
#define REG_CYCCONT 0x4A //一个计算周期的A/D转换数
#define REG_STATUSR 0x5E //状态
#define REG_MODER 0x64 //操作模式
#define REG_MASKR 0x74 //中断屏蔽
#define REG_CTRLR 0x78 //控制
#define CMD_STARTC 0XE8 //执行连续计算周期
#define REG_VRMSR 0X18 //VRMS
#define REG_IRMSR 0X16 //IRMS
#define REG_Pactive 0X14 //Pactive
/*************************************************************
** 函数名称:Delay
** 函数功能:延时
** 函数参数:j
** 返回值:无
** 创建时间:2009-4-23
** 第一次修改时间:无
**************************************************************/
void Delay(uint8 j)
{
uint8 i;
for(;j>0;j--)
{
for(i=0;i<255;i--);
}
}
/*******************************************
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-31 11:16 12864-CS5463-STC89S52源代码修改版2\
文件 28022 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463
文件 39734 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.LST
文件 35630 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.M51
文件 33072 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.OBJ
文件 21337 2018-05-05 17:07 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.c
文件 11203 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.hex
文件 72 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.lnp
文件 568 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.plg
文件 58758 2018-05-31 11:16 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.uvopt
文件 13432 2017-02-07 17:42 12864-CS5463-STC89S52源代码修改版2\12864-CS5463.uvproj
文件 58756 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\12864-CS5463_uvopt.bak
文件 13251 2017-02-07 15:13 12864-CS5463-STC89S52源代码修改版2\12864-CS5463_uvproj.bak
文件 6376 2009-05-07 14:37 12864-CS5463-STC89S52源代码修改版2\STARTUP.A51
文件 14051 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\STARTUP.LST
文件 749 2018-05-31 11:08 12864-CS5463-STC89S52源代码修改版2\STARTUP.OBJ
相关资源
- 51 单片机 红外避障小车 大集合136
- 最新的北京地铁shp文件75146
- 程序员专用字体YaHei.Consolas.1.11b42517
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- 清翔电子MCS51开发板资料_新版 01_开发
- MCS_51单片机与8255A的接口设计
- Rtx51_tiny_RTOS中文版.pdf
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- proteus仿真 AT89C51输出各种波形
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51模拟SPI读写SD卡(包括Fat和Fat32文件
- NRF24L01实现51与STM32双向通讯
- 基于c8051f020的AD转换程序及LCD显示程序
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 课程设计蔬菜大棚自动控制系统,包
- 基于AT89C51的数据采集系统设计新方法
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
- 基于89c51的数字钟
- 8251 全双工异步通信
- 8051F040SMBUS多机通信
评论
共有 条评论