您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > ram嵌入式计算器报告..
[加减乘除计算器]设计说明书12205235栗晋鹏[二零一五年六月二十六日][项目名称]——课设报告1加减乘除计算器目录1.需求分析...................................................................................................................21.1编写目的..........................................................................................................21.2背景..................................................................................................................21.3要求..................................................................................................................31.4工作原理..........................................................................................................32.概要设计...................................................................................................................32.1功能模块图.....................................................................................................32.2计算器功能流程图.........................................................................................42.3设计效果图.....................................................................................................63.详细设计...................................................................................................................63.1界面布置及“清零”......................................................................................73.2捕获键值.........................................................................................................93.3数据获取和处理............................................................................................113.4运算符的获取和处理....................................................................................123.5结果运算.......................................................................................................134.调试总结.................................................................................................................184.1问题调试.......................................................................................................184.2心得体会.......................................................................................................205.系统实现.................................................................................................................20[项目名称]——课设报告21.需求分析1.1编写目的1)掌握ARM9嵌入式系统的程序设计方法;2)理论联系实际,进一步提高软件开发技术;3)培养自己分析问题解决问题的能力;4)提高实践论文撰写能力。1.2背景随着科技的飞速发展,人类已经进入信息化时代。信息技术发展日新月异,计算机已经进入人们生活的各个领域,在现代生活中不可或缺,大型复杂的计算是人脑所不能胜任的,而且较易出错.因此计算器得到了广泛发展和应用,包括以嵌入式系统设计的计算器,我们日常生活的开支,大额数字或是多倍小数的计算都需要计算器的帮助,处理数字的开方、正余弦都离不开计算器。虽然现在的计算器价格比较低廉,但是功能过于简单的不能满足个人需求,功能多的价格较贵,操作不便不说,很多功能根本用不到。所以,我们想到可不可以用自己的所学为自己设计开发一个属于自己的简单计算器来完成日常生活的需求。[项目名称]——课设报告31.3要求(1)数字和结果用数码管和LED显示屏显示。(2)数字、+-*/、=、C用4X4键盘实现。(3)有清零、退格、累加、累乘功能。1.4工作原理本设计利用LED显示屏和4*4矩阵式键盘实现了简易计算器的功能。程序运行后,LED显示屏显示计算器界面,计算时,通过键盘输入需要计算的数字,该数字在显示屏上会有按键提示,当键入等号时,计算结果显示在LED显示屏上。进行第二次运算时,按C键清除键盘结果。当计算出现错误时,无法准确计算。当计算结果超出数码管显示出现溢出时,报警电路也会报警。2.概要设计2.1功能模块图[项目名称]——课设报告42.2计算器功能流程图计算器系统键盘的输入LED显示屏的显示数据的输入运算符的输入数据的显示结果的显示[项目名称]——课设报告50=键值=13键值=14键值=15存储数据计算结果显示数据开始结束[项目名称]——课设报告62.3设计效果图3.详细设计[项目名称]——课设报告73.1界面布置及“清零”case15:Set_Color(GUI_GREEN);Fill_Rect(0,0,639,479);Set_Color(GUI_WHITE);Fill_Rect(0,0,639,2);Fill_Rect(0,0,2,479);Fill_Rect(0,477,639,479);Fill_Rect(637,0,639,479);Set_Color(GUI_BLUE);Fill_Rect(100,80,430,400);Set_Color(GUI_WHITE);Fill_Rect(120,100,410,130);for(y=0;y4;y++){for(j=0;j4;j++){Set_Color(GUI_YELLOW);Fill_Rect((150+60*y),(150+60*j),(200+60*y),(180+60*j));}}Set_Color(GUI_RED);Set_Font(&GUI_Font8x16);Disp_String(1,170,160);Disp_String(2,230,160);Disp_String(3,290,160);Disp_String(+,350,160);Disp_String(4,170,220);Disp_String(5,230,220);Disp_String(6,290,220);Disp_String(-,350,220);Disp_String(7,170,280);[项目名称]——课设报告8Disp_String(8,230,280);Disp_String(9,290,280);Disp_String(*,350,280);Disp_String(0,170,340);Disp_String(C,230,340);Disp_String(=,290,340);Disp_String(/,350,340);L=120;z=110;Loop=FALSE;number=0;send_byte(cmd_reset);send_byte(cmd_reset);t=0;d=0;m=0;n=0;p=0;s=0;break;case16:if(p!='\0'&&L==120){Set_Color(GUI_WHITE);Fill_Rect(120,100,410,130);L=120;}//选择0按键Set_Color(GUI_WHITE);Fill_Rect(150,270,200,300);Set_Color(GUI_RED);Set_Font(&GUI_Font8x16);Disp_String(0,170,280);[项目名称]——课设报告9Disp_String(0,L,110);L=L+10;a[t]=0+'0';t++;s++;do{send_byte(0xA1);send_byte(0xC8);send_byte(0);break;}while(s=8);Loop=TRUE;number=0;break;3.2捕获键值voidTask_1(void*pdata){INT8Uerr;INT8U*Key_P;INT8UKey_Val;Timer1_Init();//打开时钟节拍,让操作系统跑起来OSTaskCreate(Task_2,(void*)0,(OS_STK*)&Stack_Task_2[(STACKSIZE)-1],9);//在任务里创建另一个任务OSTaskCreate(Task_3,(void*)0,(OS_STK*)&Stack_Task_3[(STACKSIZE)-1],10);//在任务里创建另一个任务OSTaskCreate(Task_4,(void*)0,(OS_STK*)&Stack_Task_4[(STACKSIZE*3)-1],56);//在任务里创建另一个任务for(;;){Key_P=OSMboxPend(Key_Mbox,0,&err);Key_Val=*Key_P;[项目名称]——课设报告10switch(Key_Val){case0x01:GUI_StoreKey(1);break;case0x02:GUI_StoreKey(2);break;case0x03:GUI_StoreKey(3);break;case0x04:GUI_StoreKey(4);break;case0x05:GUI_StoreKey(5);break;case0x06:GUI_StoreKey(6);break;case0x07:GUI_StoreKey(7);break;case0x08:GUI_StoreKey(8);break;case0x09:GUI_StoreKey(9);break;case0x0A://+
本文标题:ram嵌入式计算器报告..
链接地址:https://www.777doc.com/doc-6202262 .html