- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二维高精度电子指南针设计-----毕也涉及答辩
引言 前端信号采集 系统Proteus仿真图 * * 二维高精度电子指南针设计 作者姓名: 毕业院校: 导 师: 提交日期:2008年6月10日 指南针的发明是我国劳动人民在长期的实践中对物体磁性认识的结果。早期的指南针有较多的缺陷,如在加工时容易因打击、受热而失磁、灵敏度不高、寿命短、携带不方便。 由于国内外电子技术的飞速发展,特别是在磁传感器和专用芯片(ASIC)上的发展使能指南针的基本实现机理有了质的改变,不再是机械结构而采用了磁场传感器和专用处理器对磁场进行测量和处理后指示方向,这就是当前应用较为广泛的电子式指南针。 系统框图 系统主要组成部分: 前端检测电路 系统控制核心 系统扩展电路 前端信号处理流程: 磁场传感器原理: 传感器驱动ASIC的连接: 指南针模块电路原理图: 模块接口电路 模块CPU 传感器及驱动ASIC CPU晶振及复位电路 系统控制器 系统控制器电路原理图: LCD 接口 指南针模块 Keypad I2C UART 系统时钟 系统控制器 系统控制器 系统扩展电路: 通信电路: 实时时钟电路: LCM模块电路: 系统总电路: 通信电路 输入键盘 实时时钟 时钟复位 通信逻辑 指南针模块 系统控制电路 扩展接口 系统PCB图: 系统软件 系统监控程序流程: void main(void) { unsigned int Angle; InitScreen(); /* 初始化LCM */ DisMain(); /* 初始化系统部件 */ while(1) { Angle = GetDirction(); /* 获得指南针方位 */ DisCurDirc(Angle); /* 显示系统角度 */ DisCurTime(11, 15); /* 显示系统时间 */ DisCurDate(); /* 显示系统日期 */ RollScreen(); /* 显示系统广告 */ ScanKey(); /* 扫描键盘并判定发送 */ } } 系统软件 实时时钟驱动: void DisCurDate(unsigned char x, unsigned char y) { unsigned char Date[2]; unsigned char DisBuf[11]; ReadPCF8583(0x05, 2, Date); /* 获取PCF8583的日期 */ DisBuf[4] = (Date[0] 0x0f) + ‘0’; /* 提取日个位 */ DisBuf[3] = ((Date[0] 4) 0x03) + ‘0’; /* 十位 */ DisBuf[2] = /; DisBuf[1] = (Date[1] 0x0f) + ‘0’; /* 提取月个位 */ DisBuf[0] = ((Date[1] 4) 0x01) + ‘0’; /* 十位 */ DisBuf[5] = /; DisBuf[6] = 2; DisBuf[7] = 0; DisBuf[8] = 0; DisBuf[9] = 8; DisBuf[10]= \0; /* 在数组最后单元放入标识符结束 */ DispStr(y*20+x, DisBuf); } 系统软件 LCM驱动程序: void ClearScreen(); void InitScreen(); void Picture(); void WriteCG(); void WriteEN(); void WriteCH(); void EasyCH(); void DispStr(); void BitSet(); void BitReset(); void Point(); void Line(); void LineClr(); void Rectangle(); void Circle(); void Triangle(); void WCIntData(); void WCCharData(); void WCNoData(); void WDCharData(); void LCMReset(); vo
文档评论(0)