毕业设计日志8篇doc.docx

上传人:b****5 文档编号:7462930 上传时间:2023-01-24 格式:DOCX 页数:28 大小:28.13KB
下载 相关 举报
毕业设计日志8篇doc.docx_第1页
第1页 / 共28页
毕业设计日志8篇doc.docx_第2页
第2页 / 共28页
毕业设计日志8篇doc.docx_第3页
第3页 / 共28页
毕业设计日志8篇doc.docx_第4页
第4页 / 共28页
毕业设计日志8篇doc.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

毕业设计日志8篇doc.docx

《毕业设计日志8篇doc.docx》由会员分享,可在线阅读,更多相关《毕业设计日志8篇doc.docx(28页珍藏版)》请在冰豆网上搜索。

毕业设计日志8篇doc.docx

毕业设计日志8篇doc

知识不仅是指课本的内容,还包括社会经验、文明文化、时代精神等整体要素,才有竞争力,知识是新时代的资本,五六十年代人靠勤劳可以成事;今天的香港要抢知识,要以知识取胜

广州大学松田学院

毕业论文日志薄

 

题目(中)基于单片机的公交站点显示系统的设计

      (英)BasedonSCMtransitsitedisplaysystemdesign

 

        姓名***

        年级07级大四

        班级07信工

(1)班

        指导教师(签名)

 

二○一一年三月

 

广州大学松田学院

2011届本科生毕业论文日志

 

2011年2月28日第1周星期一

  今天是做毕业设计的第一天

我做的题目是"基于单片机的公交站点显示系统的设计"

乍一看

题目很简单

因为"公交站点"和"显示"都是我们熟悉的字眼

可是真要动手去做

我还真是一头雾水...

  首先

做毕业设计不光要把原理弄懂、吃透

还要理论结合实际

做出具有相应功能的实物来

其次

要把理论知识按毕业设计的格式和各种要求整理成Word文档

千头万绪

枝枝节节的很多东西要做

幸好

在毕业实习阶段我搜集了很多相关的资料

这为我下一步的行动奠定了良好的基础

  我决定分步去实现我的计划

我以一篇类似的资料作为底稿

经过大体修改和增减确定了大体框架

明确了下一步我要做的事情

同时在这个过程中

我对毕业设计的一些格式要求和模块有了初步的了解

这使我想起了我国在大连改造的"瓦良格"号航母

此时此刻

我觉得自己也在改造一艘"航母"

并且要在这个基础上发明创造

开拓视野

立足新意

设计出一些新的东西来

融入新的思维和技巧

之后

我就大刀阔斧地开始了我的毕业设计历程

  做毕业设计的前期

我专门学习了如何使用Word系统撰写和排版毕业论文

因为论文的质量包含着两个方面的内容

一方面是论文的构思、结构、内容及观点;另一方面就是论文的排版质量

其实论文的撰写和编辑是个比较麻烦的过程

因为在撰写过程中

我们需要不断地修改

还可能有论文排版格式的修改

往往由于某一部分的变动

使其他部分进行相应的变动

因而常因调整格式而烦恼

但是如果对MicrosoftWord编辑系统有充分的了解

就会得心应手地进行编辑

撰写和排版出有较高质量的论文

  基于上面的想法

我系统地学习了用Word设置论文版面、使用样式功能、尾注的标识、分节、设定页码和页眉以及自动生成目录等功能的操作方法并且尝试着去编辑使用这些功能

功夫不负有心人

我终于成功地设定了三级标题和分节符等以前总让我头疼的环节

感觉这样让自己少了很多编辑过程中的烦恼

同时把学校要求的各种格式都涵盖进去了

  现在

可以开始编辑论文了

  毕业论文表面看起来烦琐

其实还是一目了然的

大体上分为标题、中文摘要、英文摘要、目录、正文、致谢和参考文献以及附录等部分

标题又分为论文总标题、各部分的标题以及正文的三级结构标题

各个部分标题都有不同的格式与字体要求

在正文中

三级标题下面需要分开的

我采用了

(1)、

(2)、(3)和①、②、③两种格式

  编辑的方法已经准备就绪了

下一步要进行的就是论文的内容了

这并不能急着动手编辑

因为编辑倒是个简单的问题

关键是要学习并掌握各种知识和原理

并在这个基础上设计出具有实际功能的实物来

而编辑

只是对这个过程进行具体记录、表达与总结

可见

下一步并不是动手写

而是疏通整个论文的各个知识要点

掌握其大概原理

真是"汝果欲学诗

功夫在诗外"啊

  但是

在学习具体的内容之前

我确定了各个章的大体分配

第一章是绪论

第二章是软件开发、编程语言与主要元器件介绍

第三章是系统硬件设计

第四章是系统软件设计

第五章是程序编译、烧录与系统调试

最后一章是结束语

  在我看来

难点在第四章

因为程序设计难度相对比较大

也是我的薄弱点

但是我相信

在我的努力之下

一定能够战胜困难的

我们拭目以待

  

 

教师评语:

 

广州大学松田学院

2011届本科生毕业论文日志

 

2011年3月7日第2周星期一

  现在

伴随着我的思绪

让我们进入这个论文题目的内部

去具体学习它的一些内容

其中有很多困难

也会有很多快乐

  首先

我们来分解这个题目

基于单片机、公交站点、显示系统

也就是说

大体上应该分为三个部分

当然事实也是如此

要显示公交站点

必须要有控制它执行的按键

相比之下

我选择了STC89C52作为主控制芯片

用矩阵键盘作为输入控制端

用HJ12864M-1作为显示模块

现在

可以具体从这三个部分发展开去

进入论文的各个细节角落

  整个系统就是由矩阵键盘、STC89C52单片机和HJ12864M-1显示器三个部分构成

功能要求很简单

就是每按一个键

在显示屏上要显示相应的公交站点的名称或其他提示内容

目标已经明确了

下一步就要具体掌握各个部分的内容

比如说矩阵键盘是如何实现的;为什么16个按键却只分配了8个I/O口;矩阵键盘的各个端口是连在单片机的哪些I/O口上;STC89C52单片机的各个管脚是怎样分布的;单片机怎样和矩阵键盘、HJ12864M-1显示器相连

它的接口原理图是怎样的;STC89C52单片机有什么功能特性;HJ12864M-1显示器里面的驱动器是什么;驱动器的功能与特性以及怎样按自己的想法设计驱动器的功能;系统框图以及整个系统的程序怎么写等等

很多问题需要一个一个解决

这样

才能一步一步把设计做出来

完成任务

  想到这里

我明白了自己要做的事情还有许多

决不是从题目看起来那么简单的

  说到这里

有必要明确一下

我使用的编程语言是单片机C语言

同时这也是学校要求的;整个程序的编译是在Keil的环境下完成的

同时也用到了Protel99SE作为画电路图的工具

所以

我又复习了画电路图以及Keil的相关知识

这对完成整个毕业设计来说

是必须的基本步骤

但是

怎样画流程图和时序图成了我一时的难题

许久没有解决

  在很多难题面前

我开始通过各种途径继续搜集相关的资料

特别是通过中国知网()、google以及XX来解决各种问题

但是仍然有很多问题没有解决

比如HJ12864M-1带中文字库的液晶显示模块方面的资料比较缺乏

  对于按键控制部分

我最初的设想是用家庭常用的电视遥控

在单片机用个红外接受的模块

接受按键信息并解码

但后来考虑用红外遥控对设备安装不方便

而且红外对人体也有辐射

于是选择用矩阵键盘进行控制

  在液晶屏的选择问题上

我也尝试过很多想法

因为液晶屏有很多种

最常用的就有1602字符型液晶显示模块和我最终选用的12864带字库图形液晶模块

1602型只能显示2行共16个汉字

而且用它来显示汉字效果并不理想

不符合公交车上公众对视觉的要求;而12864型可以显示4行共32个汉字

也可完成图形显示

低电压功耗是其显著的特点

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比

硬件电路显示程序都要简洁得多

且该模块的价格也略低于相同点阵的图形液晶模块

  对于单片机的型号

也是很多的

最常用的当然是AT89C51或AT89C52

同时也是我熟知的

但是我买来的单片机的型号却是STC89C52

这又让我疑惑了一阵子

于是我又开始学习关于单片机型号的知识

最后确定了STC89C52与AT89C52是完全兼容的

才长舒了一口气

心中暗暗庆幸

  经过这些小波折

我认识到了我的单片机知识还是比较匮乏的

需要继续努力;也认识到了要完成此次毕业设计

任重而道远

  

  

  

  

  

教师评语:

  

  

  

  

  

  

广州大学松田学院

2011届本科生毕业论文日志

 

2011年3月14日第3周星期一

  随着理论学习与实践的深入

我不断地遇到很多新的问题

都是我没有预料到的

比如在程序编译的时候

总是出现一种错误

诸如"missing;beforeU8"

但是在前面加个";"还是不对

或许根本就不是"在U8前缺少一个分号"的意思

这个问题让我无从着手

在网络上搜索也没得到答案

一时间

就卡在那儿了

  还有一个严重的问题

就是感觉在编写程序的时候力不从心

这让我深深地体会到自己的编程能力十分有限

有时后甚至读不懂或不是很懂某段程序

更别说自己去设计编写新的程序了

临时抱佛脚

我只好对照着许多C语言的资料艰难地进行阅读和理解

但是遗憾的是

收获并不多

有时候自己都不敢肯定程序的正确性

稍微有一些灵活变化的程序

我就要花很多时间去消化

  于是我开始系统地学习各种C语言的语法规则

结合实际的程序实例进行分析

并且化整为零

分别琢磨每一段程序的作用与功能以及它的具体含义

并且结合硬件系统的I/O口

各种功能管脚具体分析考虑

步步为营

力求突破重重难关

把程序写好

这其中最难理解的就是HJ12864M-1模块内嵌的STN7920驱动器

它涉及到很多指令

比如说复位指令、设置CGRAM指令、设置DDRAM地址指令、读"忙"标志、写显示数据到内部RAM指令和读显示数据指令以及许多扩展指令系统

纷繁复杂

一时不可尽数

  对我而言

理解起来比较费力

但是又必须去面对

在知识疏通的过程中

我的设计一度走进了弯道里

转了一圈才发现自己做的工作其实是多余的

比如一开始我在考虑把要显示的汉字的字模提取出来

建立一个小字库

然后进行显示

这本来没有错

但是我没有想到我买的HJ12864M-1液晶显示屏是带中文字库的

既然带中文字库了

就说明常用的汉字里面都有了

那么就不用建立小字库了

之所以犯了一个这样的错误

是因为自己对"带中文字库"和"小字库"这些词理解地不够深

只是从字面意思上去理解

并没有思考它的作用

以为带了中文字库还必须要建立小字库的

不过

俗话说"吃一堑

长一智"

或许可以拿来安慰以下自己吧......

  接下来是显示的问题

我虽然详细了解了STN7920的主要特点和功能

管脚功能以及读写时序

也系统地学习了STN7920的指令系统和扩展指令系统

但是怎么把"一串汉字"显示出来

我心里还是没主意

因为很少接触"液晶显示"的内容

而且也缺乏这方面的资料

没有具体的例子可供参考

所以这成了我的头号难题

我只好反反复复地去理解

去琢磨

同时也在网上寻找各种类似的资料

希望能解决我的疑惑

  怎样显示汉字串的问题疑惑了我很久

而实际上

这恰好也许是一个最简单的问题

因为汉字在计算机内部是以"内码"形式存储的

就相英文字母在计算机内部是以"ASCII"码形式存储的一样

一个汉字的"内码"占两个字节

汉字串在计算机内部就是"内码"串

STN7920提供的字库就是以"内码"形式存储的国标字库

所以可以用汉字串来直接显示汉字

这就够简单了

  如果用《信息交换用汉字编码字符集(基本集)》GB2312-80

想要在STN7920上显示汉字

由于该字符集是按区位码排列的

因此要把区位码变成"内码"才能在程序中使用

显示汉字的问题似乎得到了解决

但是具体怎么编程

还有很多问题等着要解决啊

  让我们继续努力......

  

  

  

  

  

  教师评语:

  

  

  

  

  

  

广州大学松田学院

2011届本科生毕业论文日志

 

2011年3月21日第4周星期一

  毕业设计进入第四周

虽然大部分的工作已经做出了个大概的框架

但是要在这个基础上进行细化与具体化还有很多工作等着我去完成

汉字的显示原理就花了我很大的功夫去理解和琢磨

  我原来的想法是用1602显示器的

再建立一个小字库

但是在这种显示器上只能显示两行共16个汉字

不能完全满足需要

于是我选择了12864型的图形液晶显示屏

这种显示屏可以显示四行共32个汉字

可以满足公交车提示用语等需要

可喜的是

带中文字库的显示屏显示汉字的时候不需要再建立小字库

省去了很多麻烦

现在我把汉字显示的原理作一个详细的介绍

  无论是TurboC支持的各种显示器

还是单片机系统常用的LCD

它们的分辨率都是以像素为单位的

一个像素就是LCD屏上的一个可以显示的最小单位

也就是常说的点

因此

要在LCD屏上显示一个汉字或图形就必须将汉字或图形用点来表示

这些表示某种图形的点的集合就是所说的点阵

  如嵌入式控制系统中最常用的汉字是16*16点阵

它是由每行列各16个点

共256个点组成的点阵图案

每行的16个点在内存中占两个字节

一个16*16点阵汉字共16行

在内存中占32个字节

  根据这些字节在内存中存放的顺序

第一行的第一个字节称"0"号字节

第二个字节称"1"号字节;第二行的第一个字节称"2"号字节

第二个字节称"3"号字节

依此类推

最后一行的第一个字节称"30"号字节

第二个字节称"31"号字节

每个字节高位在前

低位在后

即D7在一个字节的最左侧

D0在最右侧

不同的汉字各字节数据不同

在点阵中

每一个小方格代表字节中的一位(也叫一个bit)

黑色的点bit值等于1

白色的点bit值等于0

这样

在计算机内部

每两个"字节"可组成一个16位的"字"

32个"字节"是以16个"字"的形式储存的

  如要在LCD屏的X行Y列位置显示一个字

则可以从点(X

Y)开始将0号字节和1号字节的内容输出到LCD屏上;然后行加1

列再回到Y

输出2号字节和3号字节

依此类推

16个循环即可完成一个汉字的显示

输出一个字节数据时

该字节中"位"(bit)为1时

在该"位"位置绘点

为0时该"位"位置打空白

  当然

不同类型点阵的字节排列方式是不同的

在本次设计中的汉字点阵都是16*16型的

另外有24*24型和12*16型等不同的几种类型

  每个汉字在字库中都是以点阵字模形式存储的

如一般采用的16*16点阵形式

每个点用一个二进制bit位表示

bit=1的点

当显示时

就可以在LCD屏显示一个亮点;bit=0的点

则在LCD屏不显示

这样把某个字的16*16点阵信息直接用来在显示器上按上述原则显示

则将出现对应的汉字

  

  

  

  

  

  

  

  

  教师评语:

  

  

  

  

  

  

  

  

广州大学松田学院

2011届本科生毕业论文日志

 

2011年3月28日第5周星期一

  毕业设计已经进行到关键的时候了

开始进入查漏补缺和难点攻关的阶段

战胜了这些困难

我将赢来毕业设计的最后胜利

但是目前

还是有很多的问题摆在面前

一时难以解决

  比如程序的编译

这是一个让我感觉很棘手的问题

因为在程序的编译过程中难免会出现各种各样的错误

而由于缺少这方面的经验和知识

要找到这些错误出现的原因还是有很大的难度的

而且改正一个错误以后

有可能出现更多的错误

如果没有形成一种正确的思维和拥有足够的C语言方面的知识基础

这将是很难过的一大难关

  我在编译我写的程序的时候就出现了很多错误

刚开始的时候

我在头文件中同时写了〈at89c52.h>和〈reg52.h>

结果出现了几十个错误

经搜索才知道是因为头文件重复被包含导致的

后来我选择了〈reg52.h>

一编译

错误少了很多

但是仍然有一些最基本的诸如P0、P1等I/O口没有被定义的错误

这让我纳闷了很久

我原以为〈at89c52.h>或〈reg52.h>等头文件是可以通用的

但是事实让我意识到我犯了个常识性的错误

正是因为对头文件的知识知道得比较少

才到处碰壁

在改用〈at89c52.h>头文件以后

I/O口没有被定义的错误就完全解决了

  但是仍然有其他的错误

比如有一个missing";"before"COM"的错误让我无从下手

从字面意思理解

似乎是在COM前面少了个";"

但是加上一个";"以后又出现更多的错误

而且去XX搜索相关的问题

都没有得到相关的答案

很多人为这种错误而头疼

最后我发现还有一个警告

说是〈def.h〉头文件不能被打开

我想可能就是因为这个头文件出了问题吧

答案是肯定的

果然

在我把〈def.h〉定义的内容特别列出在程序中后不用〈def.h〉这个头文件

绕开了头文件不能被打开的问题

结果一箭双雕

把两个问题都解决了

欣喜之余

只是感觉有点纳闷

为什么头文件会打不开呢?

  还有就是在把汉字输入到程序中的时候遇到一个莫名其妙的问题

就是在程序编辑状态下一输入汉字就显示空格

不能把汉字显示出来

让我的心一下子凉了半截

如果不能输入汉字

那我的程序可就要报废了

得重头来过

一开始我想是不是因为Keil这个软件没有带中文字库呢

但是很快我就否定了这个想法

因为在输入注释文字的时候是可以输入中文汉字的

幸好后来解决以后

发现问题并不大

是因为在程序编辑状态下输入汉字的时候需要先把两个引号都写出来

然后把光标移到两个引号的中间

这样就能输入汉字了

问题不大

但是如果不知道这样做

你必定束手无策

无可奈何

不禁感叹

自己的C语言学得马马虎虎了

  现在的问题是一个关于显示函数的格式上的错误

因为缺少相关显示函数的实例

我一时间在这个问题上卡了壳

喊有就是一编译就说是显示函数被重新定义

我到处找错误

却一点突破都没有

我想这或许仍然是一个小问题

但是在没有解决之前

它仍然是一个大问题哦

  

  

  

  

  

  

  

  

  

  

  

  

  教师评语:

  

  

  

  

  

  

  

  

广州大学松田学院

2011届本科生毕业论文日志

 

2011年4月4日第6周星期一

  在程序编译这个问题上

还有很多的事情要做

虽说逐步解决问题是有效的方法

但是也不要就此认为

只要遵循这个步骤

每次都可以保证一下子就能得到正确的解决方案

验证是非常重要的

意味着解决问题的过程是不可小视的

也许第一次、第二次乃至第二十次的解决方法都是错误的

但是这至少说明这二十种解决办法是不可行的

  我想

或许优秀的编程者和失败的编程者之间的差别就在于优秀者不会被最初的失败击倒

他们会找出缺点

并逐步休整方案

最后把问题解决

而失败者在遇到问题后就放弃了

这让我想到了世界上最有创造力的发明家爱迪生积极对待数以千计的失败实验的故事

也就是说明了一个事实:

失败是某方面无效、行不通的证明和有用的数据

  现在把我在程序编译中遇到的其他几个问题总结如下:

  ①warningC206:

'displaystr':

missingfunction-prototype

  说明displaystr()函数未作宣告或未作外部宣告所以无法给其他函数调用

解决方法将叙述uintdisplaystr(uchark1)写在程序的最前端作宣告

如果是其他文件的函数则要写成externuintdisplaystr(uchark1)

即作外部宣告

  ②errorC141:

syntaxerrornear'else'

  说明语句else附近有错误

可以双击提示

便可知晓到底是源程序哪个else有误

当去掉了该else后面的';'后

再度编译错误就没了

  ③SHEJI.C(40):

errorC244:

'i':

can'tinitialize

badtypeorclass

  说明在变量'i'前面的某个函数申明之后没有分号

将对应的函数申明后加上分号就好了

  在程序的编译时

有2个编译符号需要分清楚

如果一个项目包含多个源程序文件

而仅对某一个文件进行了修改

而不用对所有文件进行编译

仅对修改过的文件进行编译

然后和已被编译过的文件连接处理

可选择Project/BuildTarget或者对所有源程序全部进行编译连接

选择Project/BuildallTargetFiles

一般来说

可以使用F7或单击快捷按钮(Project/BuildTarget对应的按钮)仅对修改过的文件进行编译连接的选择就可以满足了

  编译是通过单击快捷按钮来进行的

如果源文件没有语法错误

将生成OBJ文件

同时如果设置正确

OH51.EXE文件会被调用来生成.HEX代码

但是源文件没有语法错误并不能保证就是正确可行的

能不能实现需要的功能还需要进行调试

调试也是一项复杂的工作

  利用编程器将可执行的文件写入程序存贮区ROM

然后插入到目标硬件系统就可以执行该文件

编程器的种类是很多的

但是使用的方法大多是相同的

  

  

  

  

  

  

  

  

  

  

  教师评语:

  

  

  

  

  

  

  

  

广州大学松田学院

2011届本科生毕业论文日志

 

2011年4月11日第7周星期一

  我的毕业设计已经即将进入尾声

现在大部分的设计工作已经基本完成

目前主要面临的问题就是程序编译与硬件调试了

在实现了公交站点显示的功能之后

设计任务就完成了

  但是由于缺乏HJ12864M-1带中文字库的液晶显示模块方面的资料

如何把汉字串显示出来仍然是目前工作的重点

虽然从网上和图书馆收集的相关资料有一大堆

但是还是要经过认真的学习进行消化以后才能自己进行设计的

怎样修改程序

每一步都是需要十分谨慎的

特别是显示函数的参数和显示汉字子程序的设计以及汉字串数组的定义怎样处理我还没有吃透

所以导致了设计进度一度拖后

  另外就是STN7920的基本指令系统与扩展指令系统也是一个难点

需要理解的知识比较多

涉及STN7920的全部功能设置和状态处理

以及过程动态处理

STN7920的指令系统的主要指令总结如下

  ①清除显示指令

  功能是将DDRAM清0(填满"20H")

DDRAM地址计数器ACC清0

DB0=1是该命令的标志

  ②复位指令

  功能是设定DDRAM地址计数器的ACC为0

光标回到原点

DB1=1是该命令的标志

  ③功能设定指令

  功能是设定在读写数据时光标移动的方向和显示内容的移位情况

I/的

光标右移

DDRAM地址计数器ACC加1

I/D=0

光标左移

DDRAM地址计数器ACC减1

S=1

LCD屏显示内容移位

移位方向与光标移动方向相反;S=0

LCD屏显示内容不移动

  ④显示状态设定

  功能是D=1时

整体显示开;D=0时

整体显示关

C=1时

光标显示;C=0时

光标不显示

B=1

光标反白显示开;B=0时

光标反白显示关

  ⑤光标和显示移位控制

  S/C

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 专升本

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1