- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京交通大学单片机课设 歌词显示器
单片机原理与应用课程设计报告歌词显示器班级:姓名:学号:2017年6月17日课程设计总体目标功能目标蜂鸣器播放音乐:两只老虎在1602lcd上同步显示歌词随着音调的变化,不同的LED灯开始闪烁总体结构硬件设计硬件设计构思针对要实现的功能,采用SST89E58RD单片机进行设计,SST89E58RD单片机是一款低功耗,高性能CMOS8位单片机,器件采用高密度、非易失性存储技术制造。 SST89E58RDA既能够直接烧写程序也能与与keil连接进行在线实时连调,这是其他同款的单片机无法做到的,这样既减少了程序修改一次烧写一次的麻烦,节约了时间效率较高,也大大延长的单片机的使用寿命,做到了经济合理又能实现预期的功能。在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法以及单片I/O口的定义与用法,否则,编程无从下手,这是前期准备工作。第二部分是硬件部分:依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和1602lcd电路等。第三部分是软件部分:先学习理解汇编语言与c语言的编程方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是软件画图部分:设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是硬件实现部分:连接电路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。最后进行功能扩展。各模块工作原理存储空间单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。(1)程序存储空间:在逻辑上,内部程序存储程序存储空间可以分为内部程序存储器和外部程序存储器。(2)数据存储空间:1)片内数据存储器共有256B,它们被分为两部分:高128字节和低128字节。低128字节的内部数据存储器是真正的RAM区,可以被用来写入或读出数据。这一部分存储容量不是很大,但有很大的作用。它可以进一步被分为3部分,如图所示:在内部数据存储器低128字节中,地址从00H~1FH的最低32个字节组成4组工作寄存器,每组有8个工作寄存器(R0,R1,R2……R7)。在一个具体时刻,CPU只能使用其中的一组工作寄存器。当前正在使用的工作寄存器组由位于高128字节的程序状态字寄存器(PSW)中第3位(RS0)和第4位(RS1)的数据决定。程序状态字寄存器中的数据可以通过编程来改变,这种功能为保护工作寄存器的内容提供了很大的方便。如果用户程序中不需要全部使用4组工作寄存器,那么剩下的工作寄存器所对应的内部数据存储器也可以作为通用数据存储器使用。在工作寄存器区上面,内部数据存储器的地址从20H~2FH的16个字节范围内,既可以通过字节寻址的方式进入,也可以通过位寻址的方式进入,位地址范围从00H到7FH。内部数据存储器地址从30H~7FH部分仅可以用作通用数据存储器。内部数据存储器的高128字节被称为特殊功能寄存器(SFR)区。特殊功能寄存器被用作CPU和在片外围器件之间的接口,CPU通过向相应的特殊功能存储器写入数据实现控制对应的在片外围器件的工作,从相应的特殊功能存储器读出数据实现读取对应的在片外围器件的工作结果。2)片外数据存储空间可以被映射为数据存储器、扩展的输入/输出接口、模拟/数字转换器和数字/模拟转换器等。这些外围器件统一编址,所有外围器件的地址都占用数据存储空间的地址资源,因此CPU与片外外围器件进行数据交换时可以使用与访问外部数据存储器相同的指令。CPU通过向相应的外部数据存储器地址单元写入数据实现控制对应的片外外围器件的工作,从相应的外部数据存储器地址单元读出数据实现读取对应的片外外围器件的工作结果。I/O口(1)P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。(2) P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。(3) P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
文档评论(0)