- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《微机接口技术》
大作业
作业要求:
设计一外部设备监控系统,采用CPU为51系列单片机,用C51或ASM51编写软件,给出SCH原理图和软件清单(要求有功能注释),系统要求如下:
①系统带有电子时钟,2路模拟量和8路数字量的检测;
②4个按键,分别为设置、+、-、-可以可以完成相应的设置过程(包括时间设置和外部监控值的上下限设置);
③采用I2C 8583时钟芯片(可以查相关资料);
④8个8段LED显示(可以采用SPI总线芯片7219)以辅助完成设置,显示内容:时-分-秒;
⑤8个按键分别可以模拟外部8个故障点;
⑥2路电位器可以模拟外部模拟信号;
⑦EEPROM(I2C总线芯片24c256)保存最近100个外部故障数据(包含故障点和故障时间);
⑧RS485上位机接口。
系统软件完成的功能:
①上电时电子钟方式显示当前时间;
②设置按键进入设置状态,可以重新设置新时间值和外部监控值的上下限,结果写入8583。设置完成后电子钟方式显示当前时间;
③实时监测外部8个数字故障点和模拟数字,一旦故障记录其故障数据、故障发生时间和恢复时间;
④上位机传来命令字0xaa向上位机发送所保存的外部故障数据,发送完成后清除保存数据。(自定义通讯协议)。
一、元器件选择
芯 片 名 称 型 号 接口类型 线数 其 它 AD转换芯片 TLC1549 SPI 3 2块 共阴极数码管显示驱动器 MAX7219 SPI 3 时钟芯片 PCF8583 I2C 2 EPROM 24WC256 I2C 2 串口RS485 MAX487E 3 二、MCS-51单片机引脚连接
单片机I/O
引 脚 外部器件连接及功用 器件名称 引脚代号 功 用 P0^0 SW1 按钮1,模拟外部故障点1 P0^1 SW2 按钮2,模拟外部故障点2 P0^2 SW3 按钮3,模拟外部故障点3 P0^3 SW4 按钮4,模拟外部故障点4 P0^4 SW5 按钮5,模拟外部故障点5 P0^5 SW6 按钮6,模拟外部故障点6 P0^6 SW7 按钮7,模拟外部故障点7 P0^7 SW8 按钮8,模拟外部故障点8 P1^0 MAX7219 DIN 数码管显示串行数据输入端 P1^1 MAX7219 LOAD 数码管显示数据锁存端 P1^2 MAX7219 CLK 数码管显示时钟输入端 P1^3 --- --- --- P1^4 SPI/TLC1549 CS 模拟SPI片选信号 P1^5 SP I/TLC1549 DATA OUT 模拟SPI数据传送位 P1^6 SP I/TLC1549 CLK 模拟SPI时钟控制位 P1^7 --- --- --- P2^0 --- --- --- P2^1 SW9 按钮9,系统参数“设置”键 P2^2 SW10 按钮10,系统参数增加“+”键 P2^3 SW11 按钮11,系统参数减小“-”键 P2^4 SW12 按钮12,系统参数项目选择“-”键 P2^5 --- --- --- P2^6 MAX487E DE 485串口通信 P2^7 MAX487E RE 485串口通信 P3^0/RXD MAX487E RXD 485串口通信 P3^1/TXD MAX487E TXD 485串口通信 P3^2/INT0 PCF8583 INT P3^3/INT1 --- --- --- P3^4/T0 --- --- --- P3^5/T1 --- --- --- P3^6/WR I2C总线 SCL 模拟I2C时钟控制位 P3^7/RD I2C总线 SDA 模拟I2C数据传送位 三、SCH原理图
1.I2C器件接线图
2.功能按键设置接线图
3.AD转换器件接线图
4.数码管显示驱动接线图
5.485串口接线电路
6.单片机复位与外部时钟电路
四、软件程序清单
1. 延时程序:void delay(void);
2. 启动I2C总线:void I_start(void);
3. 停止I2C总线:void I_stop(void);
4. 初始化I2C总线:void I_int(void);
5. 提供时钟信号,并返回时钟为高电平时SDA的状态:bit I_clock(void);
6. 向SDA发送一个字节,并检验应答信号:bit I_send(uchar I_data);
7. 从SDA上读取8位数据信号,并作为一个数据信号返回:byte I_receive(void);
8
您可能关注的文档
最近下载
- 高血压合并冠心病患者血压管理中国专家共识.pdf
- (2024年新教材)部编版一年级道德与法治上册《课余生活真丰富》教案.docx VIP
- 玻璃纤维增强水泥外墙板 JC/T 1057-2007.pdf VIP
- 机器人教育未来发展趋势研究.docx VIP
- 《疯狂动物城》全本台词中英文对照.docx VIP
- 安川GA500小型高功能型变频器产品技术手册.pdf
- 某大型建筑集团企业财务一体化平台解决方案V2.0.pptx
- 动漫游戏IP衍生品开发策划书.pptx VIP
- 2024年福建省普通高中会考物理学科考试大纲.docx
- 2016年下半年软件水平考试(高级)系统架构师下午(论文)真题试卷.doc VIP
文档评论(0)