微机与单片机原理课程设计任务书和作品设计说明书world版dox可编辑版 全站导航最近更新

首页psd网页设计 → 微机与单片机原理课程设计任务书和作品设计说明书world版 dox可编辑版
微机与单片机原理课程设计任务书和作品设计说明书world版图标

微机与单片机原理课程设计任务书和作品设计说明书world版dox可编辑版

  • 大小:713KB
  • 时间:2020-11-02 16:09
  • 星级:
  • 语言:中文
  • 环境:WinAll
  • 版本:dox可编辑版
  • 类别:国产软件/ 免费软件
  • 官网:暂无
  • 厂商:

软件介绍 软件截图 相关下载 相关文章 评论(0)

精品下载精心为您推荐:

编辑点评:微机与单片机原理课程设计任务书和作品设计说明书world版

《微机与单片机原理》课程设计是毕业设计前的一次预演,也是该课程所学知识的一次综合运用,无论是单片机原理课程还是微机原理课程,都在自动化的相关课程中具有重要地位,小编为大家准备了可以编辑的相关资料供大家下载

章节目录介绍

第1章 微机基础知识去体验

1.1 计算机中负数的表示和运算

1.2 微机中的常用编码

1.3 微机概述

1.4 单片计算机概述

1.5 单片机应用的开发仿真工具

第2章 微型计算机的存储器去体验

导入

2.1 微型计算机存储器概述

2.2 只读存储器

2.3 随机存储器

2.4 Flash存储器

2.5 存储器的组成与扩展

第3章 80C51的结构和原理去体验

3.1 80C51系列概述

3.2 80C51典型产品资源配置与引脚

3.3 80C51系列单片机的结构

3.4 80C51内部数据存储器

3.5 80C51内部程序存储器

3.6 80C51单片机输入/输出/(I/O)口

3.7 单片机的工作方式

3.8 单片机执行指令的过程

第4章 80C51的指令系统去体验

导学

4.1 指令的基本格式及常用符号

4.2 80C51的寻址方式

4.3 数据传送类指令

4.4 算术运算类指令

4.5 逻辑运算类指令

4.6 控制移转类指令

4.7 布尔变量操作指令

第5章 80C51的汇编语言程序设计去体验

5.1 程序编制的方法和技巧

5.2 源程序是编辑和汇编

5.3 汇编语言程序设计和基本程序结构

5.4 常用程序举例

5.5 简单I/O设备的并口直接驱动示例

第6章 51单片机的C语言程序设计去体验

6.1 单片机C语言概述

6.2 C51的数据类型

6.3 C51的运算符和表达式

6.4 C51流程控制语句

6.5 C51的构造数据类型

6.6 C51的函数

6.7 C51中断编程实例

6.8 C51实例仿真介绍

第7章 80C51的中断系统及定时/计数器去体验

7.1 中断概述

7.2 中断处理过程

7.3 80C51的中断系统及其控制

7.4 80C51中断源的扩展

7.5 80C51的定时/计数器及其应用

第8章 80C51单片机的串行口及串行总线扩展去体验

8.1 串行通信基本知识

8.2 80C51单片机的串行口

8.3 80C51单片机的串行口应用

8.4 单片机的串行总线扩展

第9章 80C51单片机的系统扩展去体验

9.1 I/O接口电路概述

9.2 I/O传送方式

9.3 存储器扩展及时序

9.4 可编程I/O扩展芯片81C55及其应用

9.5 可编程并行接口芯片82C55及其应用

9.6 单片机显示、键盘系统

第10章 80C51单片机的模拟量接口去体验

10.1 并行D/A转换器与单片机的接口

10.2 并行A/D转换器与单片机的接口

10.3 串行A/D转换器与单片机的接口

第11章 80C51应用系统设计方法去体验

11.1 单片机应用设计过程

11.2 提高系统可靠性的一般方法

11.3 设计与制作实例

第12章 微处理器及微机系统去体验

12.1 微处理器概述

12.2 微处理器系统构成与扩展

12.3 总线技术

12.4 计算机发展现状

实验及课程设计去体验

实验预备知识

实验一 清零程序实验

实验二 P3.3输入P1口输出

实验三 INT0中断实验

实验四 定时计数器

实验五 164串并转接实验

实验六 8255 PA口控制PB口实验

实验七 8段数码管显示

实验八 AD转换实

《单片机原理》和《微机原理与接口技术》这两门课程有什么区别?

相同点:两门课程讲的都是计算机原理和接口技术。  区别:单片机讲的是“集成”微型计算机,即整个计算机是单片的;微机讲的是“散装”微型计算机,

非单片的。  具体地,单片机,又称微控制器(Micro control unit,MCU),讲的是一种将中央处理器、存储器、定时/计数器、中断控制器、输入/输出(I/O)接口等集成在单片半导体芯片上的计算机。

当前的单片机课程多数都是基于C语言编程,以Intel 公司8051为内核的8位单片机进行讲解,如AT系列、STC系列等。   单片机原理与应用及C51程序设计(第4版) 京东 ¥ 40.50 去购买  

而微机原理中的微型计算机,其微处理器、存储器、定时/计数器、中断控制器、I/O接口等各部分都是独立的一块芯片。  微处理器是Intel 8086,定时/计数器是Intel 8253,中断控制器是Intel 8259,

并行接口是Intel 8255,串行接口是Intel 8251,DMA控制器是Intel 8237。  微机原理是基于汇编语言进行编程。  在实际应用中,大多都使用单片机基于C语言进行开发,微机原理所讲的内容几乎不再使用了。

在单片机的接口中,UART、IIC、SPI是当前比较流行的、最重要的三大串口,强烈建议掌握。  汇编语言用的很少了,如果想学,推荐一本书——王爽的《汇编语言》,写的很好。

学好计算机专业需要哪些课程?

大一:
计算机文化基础
高等数学一
计算机文化基础实验
计算机操作强化训练
大学英语一
离散数学
思想道德修养与法律基础
专业导论

高级语言程序设计
高级语言程序设计实验
高级语言程序设计课程设计
大学英语二
高等数学二
电路与模拟电子技术
中国近代史纲要

大二:
数据结构
数据结构实验
数据结构课程设计
电工实习
线性代数
数字逻辑
数字逻辑课程设计
专业认识实习
大学英语三

计算机组成与系统结构
计算机组成与系统结构实验
算法分析与设计
概率与数理统计
数据库原理
大学英语四
单片机原理与应用
单片机原理与应用实验
单片机原理与应用课程设计
马克思主义基本原理

大三:
面向对象程序设计
面向对象程序设计实验
面向对象程序设计课程设计
数据库系统应用
数据库系统应用实验
计算机网络
操作系统
嵌入式系统
毛泽东思想和中国特色社会主义理论体系概论
形式与政策

软件工程
编译原理
web程序设计
web程序设计实验
网络系统集成
多媒体技术
物联网技术
形式与政策

三年课程
第四年的课候补

按理说,每门学好益处都很大。

核心是:
1.数据结构
2.操作系统
3.数据库系统应用
4.计算机网络
5.面向对象程序设计
6.计算机组成原理
7.算法分析与设计
8.单片机原理与应用
9.高级语言程序设计
10.大学英语

从微型计算机到单片机的发展历程

写这一系列文章,是为了把这段时间所学分享出来。让许多像我之前一样的人能快速地把这些缺少的知识补起来。当然,如果能自己去学一学微机原理、编译原理就更好了。

目前只是先开坑,把第一篇文章写了。下一篇要隔多久、总共有几篇,我都还没想好…

单片机原理查漏补缺(一)——从微型计算机到单片机

本文主要参(zhao)考(chao):

《计算机是怎样跑起来的》,[日]矢泽久雄,人民邮电出版社;

《STM32F4xx中文参考手册》

《Tiva™ TM4C123GH6PGE微控制器数据手册》

前言:

本文以一个古老且简单的一个微型计算机模型开始,介绍微型计算机最简单的结构(CPU+存储器+I/O)。

最后根据学到的内容,综合分析两款热门单片机。

目录:

一、微型计算机的结构

二、存储器中保存了指令和数据

三、CPU读取指令并执行

四、I/O通过寄存器来进行配置

五、综合与补充

六、以Tiva C ARM Cortex-M4F微控制器为例看微型计算机的结构

七、以STM32F4系列微控制器为例看微型计算机的结构

一、微型计算机的结构

微型计算机的结构

如上图是一个微型计算机的最基本的结构,包括CPU、存储器和I/O。程序(程序包括指令和数据)存储在存储器中,CPU逐条读取指令并执行,而I/O负责和外界进行数据的交互。

下图是一个简单的Z80微型计算机系统,它由CPU、存储器和I/O组成。

Z80微型计算机系统

相信搞硬件的同学看到这个电路图并不会觉得太复杂,但是考虑到刚入门的同学,对于上面那张图只需要了解以下几点即可:

(1)CPU连接了存储器;

(2)CPU连接了I/O,I/O上连接了一组按钮开关和一组LED灯;

(3)CPU和存储器上都有地址线(A0~A15)和数据线(D0~D7),用于访问数据。

注意,后面的许多讲解都会基于上面这张图。本文的目的是通过了解一个简单的微型计算机模型,举一反三地理解复杂的ARM架构的单片机。

二、存储器中保存了指令和数据

用C语言进行单片机的开发,必须要对内存十分了解。只有了解了内存,才能熟练地管理各种各样的数据。

CPU通过地址线和数据线与存储器进行连接。

存储器的结构

1.变量是存储在存储器中的

以C语言为例,创建一个数组:

char words[] ={‘a’,’b’,’c’};

每声明一个变量,编译器就会自动分配一块内存空间用于存储这个变量,空间的大小与变量的类型有关。

2.指令也是存储在存储器中的

(1)Z80 CPU的部分指令

在讲解指令在内存中的形态之前,需要先了解什么是CPU的指令,以及CPU的指令是做什么的。(下图是Z80 CPU的部分指令,只需了解一下,后面会用到一点)

(2)汇编指令与机器语言的对应关系

大家一定听过“机器语言”、“汇编语言”这样的名词。机器语言就是一串由0和1组成的指令,由CPU的手册规定了这些指令分别具有什么功能。

如上图,可以看出,汇编语言只是给机器语言指令起了一个便于记忆的助记符。例如LD(Load)是装载一个数据到寄存器中,它对应的机器指令是0011111011001111。

(3)机器语言指令在存储器中存储的方式

把上面那一串机器语言代码(即使你并不知道代码的功能是什么),用某种方法(此处是DMA)按照地址顺序存入到右图的存储器中。注意,每条指令存储的地址并不总是+1的,因为指令的长度并不是1个字节(Byte)。

当CPU的复位(Reset)后,就会逐条读取存储器中的指令并执行。也就是说程序开始执行了。

三、CPU读取指令并执行

CPU能进行数据的运算,那么CPU内部应当也有存储数据的地方。CPU中的寄存器就是存储数据的位置。

不同的CPU,指令集不同,CPU中的寄存器也不同。但大同小异,总有相通的地方。

在这里,只介绍A,F,PC和IR寄存器

A:也就是上图中的Acc,是CPU中的累加器,它是CPU进行运算的核心。每次CPU处理数据都要把数据先读入到Acc寄存器中,然后再进行加减乘除与或非等算术运算或逻辑运算。Z80是8bit的CPU,因此Acc寄存器只有8位。

F:也就是标志寄存器(Flag),它的值反映了当前Acc中进行的计算是什么状态(正数、负数、是否有溢出/进位、大小比较的结果等)

PC:程序指针。它存储了下一步要执行的指令在存储器中的地址。(16位)

IR:指令寄存器。它存储了CPU现在正在执行的机器指令。每次从存储器读取完指令后,PC的值会自动增加。

四、I/O通过寄存器来进行配置

以开头的那个微型计算机系统为例,它的I/O芯片上连接了一组开关(输入数据)和一组LED灯(输出数据)。

假如0~7号按钮按下,0~7号对应的那个LED就点亮。如果想实现这样的功能,汇编语言该怎样写呢?

为了得到这个问题的答案,需要了解I/O芯片的功能。

Z80 PIO上只有4个寄存器,如上图所示。A,B分别是两个数据端口。而C代表Control,D代表Data。

我们可以把B/A引脚和C/D引脚视作地址线,这样通过访问00,01,10,11四个地址,就可以分别访问四个寄存器了。

假如,A端口现在连接了一组开关,B端口连接了一组LED。那么操作流程就是这样:

(1)CPU选择A端口的Control,向“端口A控制寄存器”写入207,这告知I/O芯片,我将要配置端口A的模式。

【至于为什么是207而不是别的数,这是Z80 PIO芯片的数据手册中规定的。不同的IO芯片有不同的配置】

(2)CPU选择A端口的Control,向“端口A控制寄存器”写入255,这表示把端口A配置为输入模式。配置为输入模式以后,端口A总是会把PA0~PA7引脚的值读到端口A数据寄存器中。

(3)同理,把端口B控制寄存器配置为输出模式(先写入207,再写入0)。

配置为输出模式后,端口B相当于锁存器,每次把CPU写到B端口的数据锁存到端口B的数据寄存器中,然后把这个值输出到PB0~PB7引脚。

(4)每个循环内,CPU先选择端口A数据寄存器,并读取数据。然后选择端口B数据寄存器,并写入数据。这样不断循环。就达到了开关控制LED的目的。

[思考]:假如不要I/O,仅靠CPU的地址线和数据线能完成这样的功能吗?

五、综合与补充

微型计算机由CPU、存储器和I/O组成。存储器中保存了指令和数据,CPU读取指令并执行,I/O负责和外界数据进行交互。

分析上图的汇编语言。CPU先把277装载(Load)到寄存器Acc中,然后写到地址2(也就是端口A控制寄存器)上去。后面继续配置完了端口A和端口B。

然后,把地址0(端口A数据寄存器)读取到Acc中,再把Acc的值写到地址1(端口B数据寄存器)去。

最后,JP命令表示跳转(Jump)到LOOP标签去。LOOP只是汇编语言中随便取的名字(有点像C语言的变量),它用来标识那一行的指令对应的地址(即0001 0000)

还有一件值得注意的事,在Z80 微型计算机系统中,I/O芯片的四个寄存器的地址分别是00,01,10,11,而存储器的地址是0~111 1111 1111,存储器和I/O是共用地址线且有一部分地址重合的。但是机器指令并没有产生冲突。

这是因为,Z80 CPU上有MERQ(内存请求)和 IORQ(IO请求)两个引脚,分别连接到内存芯片和IO芯片的使能端上。当执行与内存读写有关的指令时,CPU会自动使能内存芯片;当执行与IO相关的指令时,CPU会自动使能IO芯片。

其他补充:

1.总线(Bus)

为了节省资源,微型计算机的许多数据传输线都是共用的(具有电气连接)。

例如Z80 CPU和存储器芯片、IO芯片的地址线是连在一起的,数据线也是连在一起的。虽然各种控制线(也就是各种使能引脚)没有连在一起,但是假设一个CPU连很多存储器或外设的话,控制线也是可以共用的。

总线是并行线,并行线的位数(bit)称为总线的宽度。

2.中断(Interrupt)

虽然CPU从存储器中一条一条地读取指令执行,像流水一样,但是这也是可以被打断的。例如人在按部就班的办公,但是电话响了就要去接电话。

IO上通常都具有中断引脚(IRQ)。当IO收到紧急数据需要CPU立即处理的时候,就会通过中断引脚告知CPU,而CPU就会停止当前的指令,

并且把当前正在处理的事务进行保存(即保存现场),保存的方法是把CPU内的所有寄存器的数据都移动到存储器中。然后把PC指针跳转到预先设定好的,收到中断后要执行的指令的位置。当这部分指令执行完后,CPU就执行“恢复现场”,继续执行之前的工作。

六、以Tiva C为例看微型计算机的结构

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统。

上图为TI Tiva C的中文数据手册的目录。如果阅读手册,可以知道这款微控制器的特点是:

1.采用了Cortex-M4F处理器(CPU)

2.芯片内部有32kB SRAM, 256kB Flash ROM和2kB EEPROM存储器。

3.芯片上具有GPIO、串口(UART)、接口等I/O。这些外设都可以与CPU交互并完成特定的功能。

Tiva C的存储器:

前面讲过Z80 CPU通过MERQ引脚和 IORQ引脚来区分相同地址的存储器单元和IO寄存器。而Tiva C微控制器却不需要这样做,它把CPU,

存储器和I/O集成到一片芯片上,然后作存储器映射。如下图所示(数据手册2.4节,图没截全),在0~4GB的寻址范围内,分配了Flash存储器、SRAM存储器和所有外设的寄存器的地址,以保证它们不会冲突。

Tiva C的I/O:

如下图是Tiva C数据手册中描述串口(UART)部分的目录,可以看出串口这种IO也是通过寄存器来配置它的功能的。与古老的Z80 PIO相比,它的寄存器可以说是多得多了。

Tiva C的CPU:

如上图是数据手册中对CPU的描述。可见:

Tiva C是一款32bit的单片机(即一次操作处理4个字节);

具有80MHz的主频;

带浮点数运算单元(FPU),这表示它进行浮点数运算比不带FPU的CPU能快几十倍。

……

七、以STM32F4系列微控制器为例看微型计算机的结构

STM32F407VET6也是一款Cortex-M4F处理器的微控制器,其CPU和外设和Tiva C差不多,不再赘述,这里主要说一下存储器。

如上图可以看出,STM32把各种存储器和外设寄存器的地址映射到了0x00000000~0xffffffff的地址空间中,和Tiva C系列差不多。

刚开始学习STM32时,我们知道通过串口下载程序,需要先把BOOT1保持为0,用跳线帽或者开关把BOOT0置1,然后通过FlyMCU等串口下载程序烧录十六进制文件。下载完后,再把BOOT0置0,我们下载的代码就可以跑起来了。

【有些开发板上设计了自动的电路,在通过串口下载代码时,会自动把BOOT10置1,代码下载完成后,又把BOOT1置0】

当我们了解微型计算机的结构以后,就可以分析这个过程的原理了。

首先看到STM32F4xx中文手册中关于自举配置的描述:

我们已经知道,CPU从存储器中读取指令来执行。而STM32芯片上有很多存储器,主Flash通常是用来存放我们自己编写的代码编译后的机器指令;而“系统存储器”是一块ROM,它里面存储了芯片出厂时烧录的bootloader,也就是另外一套机器指令,这套指令的作用是“从串口接收固件,并把这些数据写到Flash中”。

因此BOOT0置1时,CPU运行“系统存储器”中的bootloader帮助我们下载代码;BOOT0置0时,CPU从Flash中加载我们烧录进去的代码。

除此之外,在使用Keil开发STM32进行debug时,我们可以看到很多寄存器。除了我们熟知的各种外设寄存器以外,还可以看到CPU的寄存器R1~R15等。其中R15就是前面介绍过的PC寄存器,至于其他寄存器是什么意思,可以自己参考相关的资料。

微机与单片机原理课程设计任务书和作品设计说明书world版截图

下载地址

网友评论

热门评论

最新评论

发表评论查看所有评论(0)

昵称:
表情: 高兴 可 汗 我不要 害羞 好 送花 亲亲
字数: 0/500 (您的评论需要经过审核才能显示)

TOP榜