美文网首页16级单片机实践经验分享
实验一 用单片机显示文字

实验一 用单片机显示文字

作者: 樊文静0215 | 来源:发表于2018-05-21 11:35 被阅读80次

一、实验目的

用单片机实现汉字的显示

二、实验器材 

装有keil的计算机、大板单片机

三、实验步骤

1.观看原理视频和PPT

2.了解原理之后,连接好单片机

实验一 用单片机显示文字

3.用K51编写代码(借鉴了百度和老师的代码)

实验一 用单片机显示文字

4.用普中科技烧录软件进行烧录(别忘了先调试之后再进行创建.hex文件)

5.最后在单片机上进行显示

四、实验代码

1 初始定义

#include<reg51.h> //定义单片机的一些特殊功能寄存器

#include<intrins.h> //包含移位函数的头文件sbit SRCLK=P3^6; //定义SRCLK位为P3.6sbit RCLK=P3^5; //PCLK位为P3.5sbit SER=P3^4; //定义SER位为P3.4#define COMMONPORTS  P0 //将P0端口定义为通用端口COMMONPORTSunsigned char code TAB[8]  = {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //8位段选信号2 赋值函数unsigned char code CHARCODE[6][8]={0x38,0x28,0x2b,0xFE,0x28,0x28,0x38,ox00,//中0x00,0xFE,0x82,0xD6,0xFE,0X00,//国 0x00,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,//I0x00,0x00,0x7E,0x02,0x02,0x02,0x02,0x00,//L0x00,0x00,0x7E,0x42,0x42,0x42,0x7E,0x00,//O 0x00,0xF8,0x04,0x02,0x02,0x04,0xF8,0x00,//V 0x00,0xFE,0x92,0x92,0x92,0x92,0x92,0x00,//E 0x00,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,//U}; //位选信号void delay(unsigned int time)//延时函数{ unsigned int i,j; for(i=0;i<time;i++)  for(j=0;j<121;j++);}void Hc595SendByte(unsigned char dat){      unsigned char a;      SRCLK=0;      RCLK=0;      for(a=0;a<8;a++)      {              SER=dat>>7;              dat<<=1;              SRCLK=1;              _nop_();              _nop_();              SRCLK=0;            }      RCLK=1;      _nop_();      _nop_();      RCLK=0;}3主函数void main() //主函数{          unsigned char tab, j; //tab限定位选次数      unsigned int  i; //执行i次使人眼可以看见      while(1) //循环显示      {                  for(i=0; i<50; i++ )  //执行50次显示一个字,考虑视觉暂留效应              { for(tab=0;tab<8;tab++) //每一个字8次位选                    {                                //Hc595SendByte(0x00);  //通过关闭位选进行消隐                                          COMMONPORTS  = TAB[tab];    // 进行段选                                                  Hc595SendByte(CHARCODE[j][tab]); //进行位选                            delay(2); //延时                          }              }              j++; //显示下一个字              if(j== 6) //从第一个字开始循环显示              {                    j= 0;              }      }    }//代码解释:首先需要在练习本上画出每个点阵应该在的位置,然后用十六进制格式写出来,亮则为一,不亮则为0

五、实验结果 

实验一 用单片机显示文字
实验一 用单片机显示文字
实验一 用单片机显示文字
实验一 用单片机显示文字
实验一 用单片机显示文字
实验一 用单片机显示文字

六、实验心得

1终于知道了C语言的重要性,说实话,一开始自己收到这个作业的时候很蒙,单片机怎么显示字,因为上课的时候一走神有的知识点就过去了,所以知识断断续续的在脑子中,有时候说下课学,下了课就忘了,作业越积越多,为了做这个作业把网盘中能借鉴的资源都借鉴了一遍,这应该是知识增长最快的时候把,聚精会神的坐在电脑前研究代码,多亏后面的解释,让工作轻松了许多,电脑百度手机百度同时使用,那时候才知道自己多么后悔,但我最欣慰的是,我在单片机上可以显示文字了,虽然有一部分的原理还没有搞懂,但是大部分内容我已经掌握了。这是我做此份作业的收获。

2,关于出现的问题,因为涉及的软件两三个,而且自己电脑上有很多下载下来的关于单片机的资源,所以最常出现的问题就是找不到.hex文件,所以有时候保存了好多次才找到,而且有时候保存了没有文件,应该是没有调试成功的事。还有就是代码我自己按照老师的写了一遍,然后错误百出,看着老师的代码一字不拉的抄了一遍还有错误,我内心也很崩溃,没有找到错误,就在word里面看两份文档哪里不同,终于才成功,主函数自己不会写就搬得别人的

3虽然这次任务自己完成的很痛苦,但自己确实学到了不少东西,无论从同学那还是度娘都教会了我不少东西,C 语言没学好真让自己很后悔啊,还有就是不知道为什么文字复制过来就会乱码,所以自己每次复制了都得改文字

相关文章

  • 实验一 用单片机显示文字

    一、实验目的 用单片机实现汉字的显示 二、实验器材 装有keil的计算机、大板单片机 三、实验步骤 1.观看原理视...

  • 实验一-沈正浩-0214

    8*8LED点阵实验——显示SDNU 一、单片机使用过程 使用单片机的LED点阵,将单片机和电脑连接好,且用kei...

  • 实验一 崔提提0128

    实验目的:为了进一步掌握单片机(大板的使用),理解单片机的工作原理,实现在单片机上实现显示 实验器材:keil、单...

  • 实验一:LED点阵显示汉字实验+邓宏0103

    实验目的:为了进一步掌握单片机(大板的使用),理解单片机的工作原理,实现在单片机上实现显示字母“SUN” 实验器材...

  • 实验一 李小东0105

    实验目的:为了进一步掌握单片机中点阵的使用,理解单片机的工作原理,实现在单片机上实现显示 实验器材:keil、单片...

  • 实验一 王慧敏0235

    实验目的:为了进一步掌握单片机中点阵的使用,理解单片机的工作原理,实现在单片机上实现显示 实验器材:keil、单片...

  • 实验一关震0138

    一、实验目的:为了进一步掌握单片机中点阵的使用,理解单片机的工作原理,实现在单片机上实现显示 二、实验器材:kei...

  • 实验1-杨鑫鑫-0211

    实验目的: 为了进一步掌握单片机中点阵的使用 理解单片机的工作原理 实现在单片机上实现显示 I♥U 实验器材: k...

  • 实验1—李九玲—0106

    一.实验目的 在大板8*8 LED点阵上显示汉字 二.实验器材 keil软件,普中烧录软件,单片机 三.实验原理 ...

  • 实验一——孙博文0216

    一、实验目的 在keil中编写程序,生成hex文件,用烧录软件将程序下载到单片机上,使8×8点依次显示“米”“九”...

网友评论

    本文标题:实验一 用单片机显示文字

    本文链接:https://www.haomeiwen.com/subject/bqjfjftx.html