- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
。等待下次
。
等待下
次脉冲
系统上电
配置MCU、配置TDC、配置LCD
扫描按键,等待按键按下
由P1口产生占空比为50%、周期为10ms的脉冲段
开启TDC的start口TDC进入测量状态
完成测量测量溢出
**
判断中断
读寄存器状态看测量是正常还是溢出
正常溢出
读数据
等待下一次脉冲到来
完成100次脉冲发射
判断数据存储器是否全为零
是否
LCD显示MUC数据处理LCD显示距离
errorornotoscale
#include<reg51.h>
#include<stdio>
#include<intrins.h>
#defineucharunsignedchar
#defineuintunsignedint
#definelucharunsignedlongchar
#defineluintunsignedlongint
端口设置程序===============/
SbitSPISSN=P1.3;
SbitSPISCK=P1.4;
SbitSPI_SI=P1.5;
SbitSPI_SO=P1.6;
SbitSbitSbitSbit
INT=P1.7;
RS=P0.5;
RW=P0.6;
E=P0.7;
//========----SPI通信函数声明===----=------=//
VoidSPI_enable(Void);
VoidSPI_close(Void);
VoidSPI_sendone(Void);VoidSPI_sendzero(Void);VoidSPI_write8(uchar);
VoidSPI_write32(uchar);LucharSPI_read16(void);LucharSPI_read32(void);VoidGP2_peizhi(Void);
//SPI片选,使能开
//SPI使能关
//发送一位数据1
//发送一位数据0
//写8位数据
//写32位数据
//读16位数据
//读32位数据
//TDC-gp2配置
//========--==LCD通信函数声明=
VoidLCD_wdate(uchar);//写数据
VoidLCD_wcommand(uchar);//写指令
VoidLCD_delay(uint);//延时程序
VoidLCD_peizhi(Void);//LCD配置
//====---=---=脉冲产生函数声明==----------=--=//
Voidfire_gene(void);//脉冲产生
//========-===数据处理函数声明==--=---=--===//
Doublefloataver(Ucharsample[],Uchari)//时间数据转化为距离//========--==数据显示函数===-----=====-=//
VoidLCD_xianshi(uchardate[],uchari)//显示程序
//======-=--==主函数入口=====-==-===--==//
Voidmain()
Doublefloatlength:
Ucharss[6]://5为有效距离数据ASCALL码
UintR=100;//采样频率
ucharStat;//TDC数据状态字
Ucharsample[100];//采样数据
Ucharerror[]="notoscale";//显示超出量程
Uinti=0;
GP2_peizhi();//上电配置TDC_GP2
LCD_peizhi();//上电配置LDC
TOMD=0x11;//设置TO、T1工作在模式2
TH1=0xFC;
TL1=0x78;//定时器1产生5ms定时
While(p1.0);//扫描键盘,等待按下
Whlie(R--)
TR1=1;//启动定时器1
fire_gene(void);//产生5ms脉冲
While(!p1.7);//扫描中断口,等待测量完成
SPI_write32(0xb4);//写入读状态寄存器指令
Stat=SPI_read16(0;/
文档评论(0)