项目7任务7:汽车里程表设计与制作ppt课件.pptx

上传人:春哥&#****71; 文档编号:87385494 上传时间:2023-04-16 格式:PPTX 页数:21 大小:2.56MB
返回 下载 相关 举报
项目7任务7:汽车里程表设计与制作ppt课件.pptx_第1页
第1页 / 共21页
项目7任务7:汽车里程表设计与制作ppt课件.pptx_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《项目7任务7:汽车里程表设计与制作ppt课件.pptx》由会员分享,可在线阅读,更多相关《项目7任务7:汽车里程表设计与制作ppt课件.pptx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、项目7任务7:汽车里程表设计与制作电子课件玩转项目开发 任务七汽车里程表设计与制作一、目的与要求一、目的与要求通过单片机控制,检测相应的按钮按下的次数,并显示出来,要求在单片机断电后计数值不会丢失,以此来模拟汽车里程表控制系统。设计要求:S1按下时,计数器不操作,在S1松开时,计数器加1操作,单片机在任意时刻断电后再次上电时计数值保持原来数据,要求将计数器的值写入STC单片机内部EEPROM。通过数码管显示计数器值。玩转项目开发 任务七汽车里程表设计与制作二、电路设计二、电路设计玩转项目开发 任务七汽车里程表设计与制作三三.程序设计程序设计1.源程序源程序#include STC15F2K60

2、S2.hsbit key=P60;/模拟速度传感器输入unsigned char table=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;unsigned int L_C;/里程计数器unsigned char ad_p4;/千、百、十、个位存放位置/1ms延时函数/void delay(unsigned int i)unsigned int j,k,z;for(j=0;ji;j+)for(z=0;z8;z+)for(k=0;k 8;/设置IAP高地址IAP_TRIG=0 x5a;/写触发命令(0 x5a)IAP_TR

3、IG=0 xa5;/写触发命令(0 xa5)dat=IAP_DATA;/读ISP/IAP/EEPROM数据IapIdle();/关闭IAP功能return dat;/返回/写一字节数据到ISP/IAP/EEPROM区域void Write(unsigned int addr,unsigned char dat)IAP_CONTR=0X82;/使能IAPIAP_CMD=2;/设置IAP命令IAP_ADDRL=addr;/设置IAP低地址IAP_ADDRH=addr 8;/设置IAP高地址玩转项目开发 任务七汽车里程表设计与制作三三.程序设计程序设计1.源程序源程序IAP_DATA=dat;/写I

4、SP/IAP/EEPROM数据IAP_TRIG=0 x5a;/写触发命令(0 x5a)IAP_TRIG=0 xa5;/写触发命令(0 xa5)IapIdle();/关闭IAP功能/扇区擦除void Erase(unsigned int addr)IAP_CONTR=0X82;/使能IAPIAP_CMD=3;/设置IAP命令IAP_ADDRL=addr;/设置IAP低地址IAP_ADDRH=addr 8;/设置IAP高地址IAP_TRIG=0 x5a;/写触发命令(0 x5a)IAP_TRIG=0 xa5;/写触发命令(0 xa5)玩转项目开发 任务七汽车里程表设计与制作三三.程序设计程序设计1

5、.源程序源程序IapIdle();/关闭IAP功能/void display()unsigned char i,ds;ds=0 x01;for(i=0;i4;i+)P2=tablead_pi;P0=ds;/发送数字“i”段码到数码管显示delay(2);P0=0 x00;P2=0 xFF;delay(2);/关闭显示器,消除鬼影ds=ds9999)/里程计数最大值9999L_C=0;/里程超过9999后清零Erase(0 x0000);/擦除0 x0000扇区所有内容Write(0 x0000,L_C/256);/取出里程数据的高8位存入0 x0000地址Write(0 x0001,L_C%2

6、56);/取出里程数据的低8位存入0 x0001地址玩转项目开发 任务七汽车里程表设计与制作三三.程序设计程序设计1.源程序源程序while(1)if(key=0)/检测按键是否按下while(key=0)display();/等待按键松开if(L_C9999)L_C+;/里程小于9999时,里程加1else L_C=0;/里程超过9999时,里程清零Erase(0 x0000);/擦除0 x0000扇区所有内容Write(0 x0000,L_C/256);/取出里程数据的高8位存入0 x0000地址Write(0 x0001,L_C%256);/取出里程数据的低8位存入0 x0001地址ad

7、_p3=(L_C%10000)/1000;/取出里程的千位ad_p2=(L_C%1000)/100;/取出里程的百位ad_p1=(L_C%100)/10;/取出里程的十位ad_p0=L_C%10;/取出里程的个位display();/显示量程数据玩转项目开发 任务七汽车里程表设计与制作四、知识准备四、知识准备1.STC15系列单片机系列单片机EEPROM的应用的应用STC15系列单片机内部集成了大容量的EEPROM,其与程序空间是分开的。利用ISP/IAP技术可将内部Data Flash当EEPROM,擦写次数在10万次以上。EEPROM可分为若干个扇区,每个扇区包含512字节。使用时,建议同

8、一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同的扇区,不一定要用满。数据存储器的擦除操作是按扇区进行的。EEPROM可用于保存一些需要在应用过程中修改并且掉电不丢失的参数数据。在用户程序中,可以对EEPROM进行字节读/字节编程/扇区擦除操作。在工作电压Vcc偏低时,建议不要进行EEPROM/IAP操作。玩转项目开发 任务七汽车里程表设计与制作2.IAP及及EEPROM新增特殊功能寄存器介绍新增特殊功能寄存器介绍(1)ISP/IAP数据寄存器IAP_DATAIAP_DATA:ISP/IAP 操作时的数据寄存器。ISP/IAP 从Flash读出的数据放在此处,向Flash写的数据也需

9、放在此处。(2)ISP/IAP地址寄存器IAP_ADDRH和IAP_ADDRLIAP_ADDRH:ISP/IAP 操作时的地址寄存器高八位。IAP_ADDRL:ISP/IAP 操作时的地址寄存器低八位。(3)ISP/IAP命令寄存器IAP_CMD玩转项目开发 任务七汽车里程表设计与制作程序在用户应用程序区时,仅可以对数据Flash区(EEPROM)进行字节读/字节编程/扇区擦除。IAP15 系列除外,IAP15系列可在用户应用程序区修改用户应用程序区。玩转项目开发 任务七汽车里程表设计与制作(4)ISP/IAP命令触发寄存器IAP_TRIGIAP_TRIG:ISP/IAP操作时的命令触发寄存器

10、。在IAPEN(IAP_CONTR.7)=1 时,对IAP_TRIG先写入5Ah,再写入A5h,ISP/IAP命令才会生效。ISP/IAP 操作完成后,IAP地址高八位寄存器IAP_ADDRH、IAP地址低八位寄存器IAP_ADDRL和IAP命令寄存器IAP_CMD的内容不变。如果接下来要对下一个地址的数据进行ISP/IAP操作,需手动将该地址的高8位和低8位分别写入IAP_ADDRH和IAP_ADDRL寄存器。每次IAP操作时,都要对IAP_TRIG先写入5AH,再写入A5H,ISP/IAP命令才会生效。在每次触发前,需重新送字节读/字节编程/扇区擦除命令,在命令不改变时,不需重新送命令。玩

11、转项目开发 任务七汽车里程表设计与制作(5)ISP/IAP命令寄存器IAP_CONTRIAPEN:ISP/IAP功能允许位。0:禁止IAP读/写/擦除Data Flash/EEPROM1:允许IAP读/写/擦除Data Flash/EEPROM玩转项目开发 任务七汽车里程表设计与制作玩转项目开发 任务七汽车里程表设计与制作3.STC15W4K32S4系列单片机系列单片机EEPROM空间大小及地址空间大小及地址玩转项目开发 任务七汽车里程表设计与制作玩转项目开发 任务七汽车里程表设计与制作4.程序编程思路程序编程思路STC单片机在上电复位时,读取内部EEPROM数据中存入的里程数的高8位和低8位

12、(因里程数据大小255,需要两个字节才能存放),如果里程超过9999再清零,程序运行时一直循环检测P6.0接口上的按钮是否被按下,按下时程序一直等待按钮是否松开(可有效的去除按钮抖动问题),松开后再进行加1操作。数码管显示里程计数值。程序设计流程图如图所示。玩转项目开发 任务七汽车里程表设计与制作5.功能测试功能测试(1)检查电路连接是否正确:是 否(2)检查程序下载器是否连接正常:是 否(3)下载程序到目标板是否完成:是 否(4)按键时显示数据增加:是 否(5)重新上电后数据不变:是 否 6.注意事项注意事项下载程序,需要在STC-ISP软件中勾选“本次将EEPROM区域全部填充为FF”。THE END

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁