资源简介
2014年参加TI电子设计竞赛所写的程序,请供参考。我做的题目用到了LDC1000这款传感器,用于检测1角硬币、一块硬币和圆环。
代码片段和文件信息
/**
******************************************************************************
2014 TI电子设计竞赛 LDC1000测试范例
fzl 20140809
本代码使用于常规的51MCU
需要注意:LDC1000需要外部提供一个时钟信号
本范例是用MCU的内部时钟输出提供给LDC1000
使用其他MCU时请自行设计一个时钟输出给LDC1000
该时钟应小于8M注意这是指MCU给LDC1000的DCLK引脚的信号频率应小于8M。
******************************************************************************
说明:采用软件模拟SPI
已经将LDC1000的读/写命令做成了函数直接调用即可。
测试电路是否正确采用读命令读取0号地址返回时0x80说明已经能读LDC1000的寄存器
主范例已经将读回的RP在0801上显示出来
LDC1000的DCLK引脚接到MCU的ALE引脚输出应4M
MCU型号:W78E58
MCU使用外部晶振24M
******************************************************************************
/* Includes ------------------------------------------------------------------*/
#include “reg52.h“
#include “1602.h“
#include
#include
//ldc1000寄存器定义
//sfr T2MOD= 0xC9;
#define NULL 0
#define TRUE 1
#define FALSE 0
//配置的参数定义
#define TEST_RPMAX_MAX 0x12 /**< maximum calibration value for RPMAX */
#define TEST_RPMAX_MIN 0x10 /**< minimum calibration value for RPMAX */
#define TEST_RPMAX_INIT TEST_RPMAX_MIN+1 /**< RPMAX initial value */
#define TEST_RPMIN_MAX 0x3E /**< maximum calibration value for RPMIN */
#define TEST_RPMIN_MIN 0x3A /**< minimum calibration value for RPMIN */
#define TEST_RPMIN_INIT TEST_RPMIN_MIN+1 /**< RPMIN initial value */
// Final Test Range
#define TEST_RP_MSB_MAX 0x12 /**< maximum value for proximity data */
#define TEST_RP_MSB_MIN 0x0A /**< minimum value for proximity data */
#define TEST_FC_MAX 0x0D5D /**< maximum value for frequency counter */
#define TEST_FC_MIN 0x0D39 /**< minimum value for frequency counter */
//LDC1000寄存器定义 详见芯片手册寄存器说明部分
// LDC COMMANDS
#define LDC1000_CMD_REVID 0x00
#define LDC1000_CMD_RPMAX 0x01
#define LDC1000_CMD_RPMIN 0x02
#define LDC1000_CMD_SENSORFREQ 0x03
#define LDC1000_CMD_LDCCONFIG 0x04
#define LDC1000_CMD_CLKCONFIG 0x05
#define LDC1000_CMD_THRESHILSB 0x06
#define LDC1000_CMD_THRESHIMSB 0x07
#define LDC1000_CMD_THRESLOLSB 0x08
#define LDC1000_CMD_THRESLOMSB 0x09
#define LDC1000_CMD_INTCONFIG 0x0A
#define LDC1000_CMD_PWRCONFIG 0x0B
#define LDC1000_CMD_STATUS 0x20
#define LDC1000_CMD_PROXLSB 0x21
#define LDC1000_CMD_PROXMSB 0x22
#define LDC1000_CMD_FREQCTRLSB 0x23
#define LDC1000_CMD_FREQCTRMID 0x24
#define LDC1000_CMD_FREQCTRMSB 0x25
#define uint8_t unsigned char
#define uint16_t unsigned int
#define uint32_t unsigned long
//引脚定义
//引脚定义
sbit SDO =P1^0; //ldc1000的SDO
sbit SDI =P1^1; //ldc1000的SDI
sbit SCLK =P1^2; //ldc1000的SCLK
sbit CS =P1^3; //ldc1000的CSldc1000的INTB未用ldc1000的dclk接MCU的ALE
sbit LED=P2^0;
sbit buzzer=P2^1;
sbit out1=P2^7; //P10与电机驱动IN1相连
sbit out2=P2^6; //P11与电机驱动IN2相连
sbit out3=P2^5; //P12与电机驱动IN3相连
sbit out4=P2^4; //P13与电机驱动IN4相连
sbit AX=P0^0;
sbit FAX=P0^1;
sbit BX=P0^2;
sbit FBX=P0^3;
sbit
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 29984 2014-08-16 13:29 LDC1000示例程序(51)\123
文件 14884 2014-08-16 13:29 LDC1000示例程序(51)\123.c
文件 5816 2014-08-16 13:29 LDC1000示例程序(51)\123.hex
文件 51 2016-10-08 11:32 LDC1000示例程序(51)\123.lnp
文件 26701 2014-08-16 13:29 LDC1000示例程序(51)\123.LST
文件 33786 2014-08-16 13:29 LDC1000示例程序(51)\123.M51
文件 28189 2014-08-16 13:29 LDC1000示例程序(51)\123.OBJ
文件 168 2016-10-08 11:32 LDC1000示例程序(51)\123.plg
文件 71277 2017-09-19 02:48 LDC1000示例程序(51)\123.uvgui.zorro
文件 5337 2017-02-15 15:30 LDC1000示例程序(51)\123.uvopt
文件 13929 2017-02-15 15:30 LDC1000示例程序(51)\123.uvproj
文件 57149 2014-08-16 15:17 LDC1000示例程序(51)\123_uvopt.bak
文件 13222 2014-08-13 04:46 LDC1000示例程序(51)\123_uvproj.bak
文件 3512 2014-08-13 04:46 LDC1000示例程序(51)\1602.c
文件 1655 2014-08-16 10:25 LDC1000示例程序(51)\1602.h
文件 6500 2014-08-16 13:29 LDC1000示例程序(51)\1602.LST
文件 7092 2014-08-16 13:29 LDC1000示例程序(51)\1602.OBJ
文件 145 2016-10-08 11:32 LDC1000示例程序(51)\1602.plg
文件 70086 2017-09-19 02:47 LDC1000示例程序(51)\1602.uvgui.zorro
文件 5371 2017-09-19 02:47 LDC1000示例程序(51)\1602.uvopt
文件 13959 2017-09-19 02:47 LDC1000示例程序(51)\1602.uvproj
文件 55273 2014-08-13 04:46 LDC1000示例程序(51)\1602_uvopt.bak
文件 0 2016-10-08 11:32 LDC1000示例程序(51)\1602_uvproj.bak
文件 4865 2014-08-13 04:46 LDC1000示例程序(51)\18.obj
文件 857 2014-08-13 04:46 LDC1000示例程序(51)\18b20.lst
文件 5027 2014-08-13 04:46 LDC1000示例程序(51)\18b20.obj
文件 1953 2014-08-13 04:46 LDC1000示例程序(51)\234.hex
文件 162 2016-10-08 11:32 LDC1000示例程序(51)\234.lnp
文件 239 2016-10-08 11:32 LDC1000示例程序(51)\234.plg
文件 10558 2014-08-13 04:46 LDC1000示例程序(51)\60
............此处省略65个文件信息
评论
共有 条评论