




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学 号: 0120810340631课 程 设 计题 目eeprom器件读写例程设计学 院计算机科学与技术学院专 业计算机科学与技术班 级姓 名指导教师2011年6月23日课程设计任务书学生姓名: 专业班级: 计算机0806班 指导教师: 工作单位:计算机科学与技术学院题 目: eeprom器件读写例程设计初始条件:1. 课程设计使用zg211硬件综合实验平台(8051单片机),使用at24c01接口芯片和辅助芯片以及器件;2. zg211有程序设计集成开发环境,程序设计语言为c语言;3. zg211硬件综合实验平台使用说明书;要求完成的主要任务: (包括课程设计工作量及其技术要求,撰写说明书
2、具体要求)1. 学习使用zg211硬件综合实验平台,程序设计集成开发环境;2. 根据课程设计题目,进行需求分析,搞清楚课程设计需要设计需求和需要解决的设计内容。3. 查阅和学习课程设计题目需要的接口芯片资料,掌握i2c接口芯片的使用方法和编程要领。查阅和学习课程设计题目需要的辅助芯片以及器件资料。4. 设计接口芯片和辅助芯片以及器件与8051单片机连接硬件电路原理图。5. 设计与硬件电路原理图对应的c语言程序(或8051汇编语言)。给出程序流程图。在集成开发环境中调试程序。给出程序的详细注释。能够解释使用程序模拟电路时序信号和数据。6. 撰写课程设计报告,1)详细陈述以上的设计过程;2)详细陈
3、述电路的调试过程。时间安排:第17周:1. 熟悉zg211硬件综合实验平台,keilc uvision2 集成开发环境;查阅接口芯片资料,熟悉接口芯片和它的使用方法。2. 设计硬件电路原理图,。第18周:1. 使用c语言或汇编语言设计和调试接口程序。2. 撰写计算机硬件综合设计报告。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日eeprom器件读写例程设计1.实验目的掌握 io 口操作;掌握显示及键盘芯片的运用;掌握 i2c 总线操作2.实验设备pc机一台,zg-211单片机系统实验板一块,实验连接线若干,芯片:ch451,89s52,cd4052并口编程线一根,串口通讯线1
4、根,配套电源1 个 zg-211 图片:3.实验要求1. 学习使用zg211硬件综合实验平台,程序设计集成开发环境;2. 根据课程设计题目,进行需求分析,搞清楚课程设计需要设计需求和需要解决的设计内容。3. 查阅和学习课程设计题目需要的接口芯片资料,掌握接口芯片的使用方法和编程要领。查阅和学习课程设计题目需要的辅助芯片以及器件资料。4. 设计接口芯片和辅助芯片以及器件与8051单片机连接硬件电路原理图。5. 设计与硬件电路原理图对应的c语言程序(或8051汇编语言)。给出程序流程图。在集成开发环境中调试程序。给出程序的详细注释。能够解释使用程序模拟电路时序信号和数据。6. 能正常操作 led
5、数码显示;能通过中断方式接收按键信息;能正确读写 eeprom 芯片4.实验原理 单片机系统常用 eeprom 芯片在掉电情况下保存一些重要数据。本实验板采用的芯片 是 at24c02,可存储 256 个字节,重复擦写 1,000,000 次,数据保存 100 年以上。该芯 片通过i2c 总线接口进行操作,i2c 协议原理请看 2.3.5 节。其原理图如下:5.实验步骤5.1硬件连接将并口线插在实验板与pc机的并口插座上; ch451 与 cpu 连接实验线路见图2-2 ;按图 2-28 连接实验线路仔细检查无误后,接通电源。 (图中箭头表示需要接线的地方)5.2 软件设计进入 keilc 开
6、发环境。首先根据 234 i2c 协议 内容,编写 i2c 函数,由于 at24c02 的 i2c 接口大频率是 400khz,所以在程序中对一个 io 口操作完后,请延时 2.5us(实验板 上 cpu 晶振为 11.0592mhz,一个指令周期为 1.08us)。写好 i2c 读写函数后,可以对 at24c02 进行操作。at24c02 的写从地址为 0xa0,写时 wp 要置 0(打开写保护),写完后置为 1; 读从地址为 0xa1。先将 cd4052 的通道选为 2,连接 cpu 与 at24c02。向 at24c02 中地 址为 0x00 到 0x07 的单元,写入数据 0x01,
7、0x02, 0x03, 0x04, 0x05, 0x06, 0x07 后,再从 at24c02 中读出,进行比较。如果一致则显示 1,错误则显示 0。5.3 编译下载程序编译成功后,打开联机下载软件,将hex文件下载到89s52中,观看程序运行结果。 如有问题则修改程序,再次下载。(请注意:at24c02的擦写次数有限,频繁擦写会影响其使用寿命。) 调试成功后,请将 i2c 读写程序、at24c02 读写程序,写成函数,以供其他模块调用。6.实验成功标志按下 1 号按键,显示“001”,同时向 at24c02 中指定位置写入数据;按下 2 号按键,从 at24c02 中指定位置读出数据并显示,
8、应与写入数据一致;7. 简要调试过程1. 利用在线编程这个软件读入程序expboard.hex2. 操作zg-211单片机电路板上面的按钮,观察实验现象是否符合说明书3. 如果不符合,进入程序文件夹进行修改程序,直至得到理想的显示结果8. 程序代码主函数#include #include reg52.h#include def.h#include sub.h#include beep.h#include func.h#include display.h#include eeprom.hunsigned char key_data = 0;main()unsigned char eep_temp
9、2;unsigned char temp = 0;/mcu初始化initmcu();set_8255();/开关蜂鸣器,表示开始工作speak_on();delay_1ms(50);speak_off();display_test();eep_temp0 = 0x55;/测试值while(1)if(key_data!=0)/若有键按下temp = key_data;key_data = 0;switch(temp)case 0x40:/1/将测试值写入eepromat24c02write(eep_temp, 0, 1);display_int(int)(eep_temp0);break;cas
10、e 0x49:/2at24c02read(eep_temp, 0, 1);display_int(int)(eep_temp0);break;default:break;具体函数#include reg52.h#include def.h#include display.h#include sub.h#include func.hextern unsigned char key_print;extern unsigned char key_data;/*|函数名send_disp_data|函数功能向ch451芯片发送命令|参数comm:命令体|_data:命令参数|返回值无|*/void s
11、end_disp_data(unsigned char comm, unsigned char _data)unsigned char i; /送8bit数据for(i=0;ii)&0x01;dclk = 1;dclk = 0;dclk = 1;/送4bit命令for(i=0;ii)&0x01;dclk = 1;dclk = 0;dclk = 1;load=1;load=0;load=1;/*|函数名send_comm|函数功能向ch451芯片发送命令|参数comm:命令体|返回值无|*/void send_comm(unsigned char comm)unsigned char i;/送4
12、bit命令for(i=0;ii)&0x01;dclk = 1;dclk = 0;dclk = 1;load=1;load=0;load=1;/*|函数名disp_initialize|函数功能向ch451芯片发送初始化命令|参数无|返回值无|*/void disp_initialize()chang_4052(1); din=0;din=1;dclk=1;load=1;dout=1;send_disp_data( ch451_setsys, 0x03);/设定系统参数send_disp_data( ch451_setdis, 0x80);/设定显示参数/*|函数名key|函数功能中断函数,获取
13、当前按键状态|参数无|返回值无|*/void key() interrupt 0 unsigned char i,temp;ex0 = 0;/关中断key_data = 0;temp = 0;send_comm(ch451_key);for(i=0; i7; i+) temp = dout;key_data = key_data|(temp(6-i);dclk=1;dclk=0;dclk=1;/*key_print = key_data;send_disp_data(ch451_load0, 0x10);send_disp_data(ch451_load1, 0x10);send_disp_d
14、ata(ch451_load2, key_data/10);send_disp_data(ch451_load3, key_data%10);*/ex0 = 1;/中断/*|函数名display_test|函数功能测试显示led数码管|参数无|返回值无|*/void display_test()/初始化显示芯片disp_initialize();/延时delay_1ms(100);/送显“12345678”send_disp_data( ch451_load0, 0x01);send_disp_data( ch451_load1, 0x02);send_disp_data( ch451_loa
15、d2, 0x03);send_disp_data( ch451_load3, 0x04);send_disp_data( ch451_load4, 0x05);send_disp_data( ch451_load5, 0x06);send_disp_data( ch451_load6, 0x07);send_disp_data( ch451_load7, 0x08);delay_1ms(200);/display_int(555);/延时delay_1ms(200);/开中断,接受按键信息ex0=1;/-send_disp_data( ch451_load0, 0x12);send_disp_
16、data( ch451_load1, 0x12);send_disp_data( ch451_load2, 0x12);send_disp_data( ch451_load3, 0x12);send_disp_data( ch451_load4, 0x12);send_disp_data( ch451_load5, 0x12);send_disp_data( ch451_load6, 0x12);send_disp_data( ch451_load7, 0x12);/*send_disp_data( ch451_load0, 0x08);send_disp_data( ch451_load1,
17、 0x08);send_disp_data( ch451_load2, 0x08);send_disp_data( ch451_load3, 0x08);send_disp_data( ch451_load4, 0x08);send_disp_data( ch451_load5, 0x08);send_disp_data( ch451_load6, 0x08);send_disp_data( ch451_load7, 0x08);*/*|函数名display_int|函数功能显示一个整数|参数无|返回值无|*/void display_int(unsigned int m)send_disp_
18、data( ch451_load0, 0x10);send_disp_data( ch451_load1, 0x10);send_disp_data( ch451_load2, 0x10);if (m/10000)send_disp_data( ch451_load3, m/10000);elsesend_disp_data( ch451_load3, 0x10);if (!(m/1000)%10)&(!(m/10000)send_disp_data( ch451_load4, 0x10);elsesend_disp_data( ch451_load4, (m/1000)%10);send_disp_data( ch451_load5, (m/100)%10);send_disp_data( ch451_load6, (m/10)%10);send_disp_data( ch451_load7, m%10);9.心得体会通过以前所学的计算机组成原理、微机原理与接口技术,以及单片机的知识,并在老师的指导和同学的合作下,终于顺利地完成了本次课程设计。我觉得本次试验重点在于动手操作,经过几次上机调试,终于得到理想的显示结果,同时也对zg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司组团采摘活动方案
- 公司故居活动方案
- 公司每天小礼物活动方案
- 公司旅游策划活动方案
- 公司新业务拓展策划方案
- 短视频制作师职业资格考试的测试题及答案
- 2025年信息系统项目管理师职业资格考试试卷及答案
- 2025年医院管理师考试试题及答案
- 2025年心理咨询与治疗理论基础考试试题及答案
- 2025年心理健康和社会支持服务考试试卷及答案
- 求职心理调适专家讲座
- GB/T 6344-2008软质泡沫聚合材料拉伸强度和断裂伸长率的测定
- GB/T 3532-1995日用瓷器
- 学术论文写作规范与技巧课件
- 生物高中-基于大数据分析的精准教学课件
- 工程结算审计实施方案(共8篇)
- 乐东221气田投产专家验收汇报
- 信任五环(用友营销技巧)课件
- 2022年广东省深圳市中考化学真题试卷
- 危险货物道路运输安全生产管理制度
- GB∕T 8110-2020 熔化极气体保护电弧焊用非合金钢及细晶粒钢实心焊丝
评论
0/150
提交评论