80C51单片机原理、开发与应用实例的目录_80c51单片机内部结构的组成

80C51单片机原理、开发与应用实例的目录_80c51单片机内部结构的组成,第1张

前言

第1章绪论

11单片机的发展

1280C51单片机分类

13单片机应用领域和发展趋势

131单片机的应用领域

132单片机的发展趋势

第2章80C51单片机硬件结构和原理

2180C51的基本结构

21180C51的基本结构框图

212芯片的内部结构特点

2280C51的引脚及其功能

221电源引脚V和Vss

222时钟电路引脚XTALl和XTAL2

223控制信号引脚ALE、PSEN、EA和RST

224输入/输出引脚

2380C51CPU结构和时序

231运算器

232控制器

23380C51时钟系统

234CPU时序

24存储器结构和地址空间分配

241程序存储器地址空间分配

242数据存储器地址空间分配

2580C51工作方式

251复位方式

252程序执行方式

253节电工作方式

254掉电保护方式

第3章80C51指令系统

31指令与汇编语言

311指令与程序设计语言

312指令格式及系统中使用的符号意义

32寻址方式

321寻址方式

322寻址空间

33指令系统

331数据传送指令

332算术运算指令

333逻辑运算指令

334程序控制转移指令

335位 *** 作(Bool类型)指令

第4章80C51单片机的功能资源

41并行I/O接口

411P0口

412P1口

413P2口

414P3口

42定时器/计数器

421概述

422定时器T0和T1的结构和功能

423定时器的工作方式及应用

424定时器/计数器T2

425定时器,计数器的编程和使用

43串行接口

431串行口结构和工作模式

432串行口的编程和举例

44中断系统

441中断基本概念

442中断响应及处理过程

443中断程序举例

第5章单片机C51程序设计基础

51程序设计语言概述

511汇编语言

512C51语言

52C51标识符和关键字

521标识符

522关键字

53C51基本数据类型和运算符

531基本数据类型

532运算符

54数组

541一维数组

542多维数组

543字符数组

55指针

551指针与地址

552指针变量的定义

553指针变量引用

554数组的指针

555函数的指针

556指针数组

56结构体和联合体

561结构体概念和定义

562结构体的引用

563联合体概念和定义

564联合体的引用

565枚举

57型定义和预处理

571类型定义

572预处理

58语句和程序设计基本结构

581语句

582顺序结构

583选择结构

584循环结构

59函数

591函数定义

592函数调用

593中断服务函数

594局部变量与全局变量

595变量的存储种类

第6章典型外围接口设计

61键盘与单片机接口设计

611独立式键盘

612行列式键盘

62显示器接口

621LED显示器

622LED显示器接口实例

623LCD显示器

624LCD显示器接口实例

63显示接口芯片MAX8279

6318279内部结构及基本工作原理

6328279引脚功能

6338279工作方式

6348279命令字

6358279状态字

6368279应用举例

64D/A/AD芯片与单片机接口设计

641D/A转换接口电路

642A/D转换接口电路

第7章80C51单片机系统扩展

7180C51系统扩展概述

71180C:51最小应用系统

712片外总线结构

713片选

714地址锁存

715扩展存储器时应考虑的几个问题

72外部存储器扩展

721程序存储器的扩展

722数据存储器的扩展

723多片存储器的扩展

73并行I/O接口的扩展

731简单并行I/O接口扩展

7328255A可编程并行I/0接口扩展

74串行接口的扩展

7418251串行口扩展芯片

742825l应用实例

第8章80C51单片机应用系统的抗干扰技术

81可靠性与抗干扰技术概述

811干扰窜入单片机系统的主要途径

812干扰形成的基本要素

813干扰的耦合方式

82硬件抗干扰技术

821抑制干扰源

822切断干扰传播路径

823提高敏感器件的抗干扰性能

824其他常用抗干扰措施

83软件抗干扰技术

831指令冗余

832软件“陷阱”

833软件“看门狗”技术

834设置程序运行标志,拦截“跑飞”程序

第9章ProteIDXP电路板设计软件

第10章KeilC51单片机开发软件入门

第11章基于80C51的计量泵流量控制系统设计

第12章80C51单片机在电液位置伺服系统上的应用

附录AMCS-51指令表

附录B

还需要知道函数的调用规则,比如:

int fun1(int a,int b) { return a+b; }

int fun2(int a,int b) { return a-b; }

typedef int (pfun)(int,int);

#define MYFUNCTION1 0x80002000 //假设函数fun1的地址位于0x80002000

#define MYFUNCTION2 0x80003000 //假设函数fun2的地址位于0x80003000

void main()

{ int a=2,b=1,c;

fun=(pfun)MYFUNCTION1; c=(fun)(a,b);

fun=(pfun)MYFUNCTION2; c=(fun)(a,b);

}

你去下载MasmPluseexe(在aogo小站)然后在下载他们站点提供的MasmPluse的教程

同时下载OLLYDBG(在看雪论坛下载)调试

并且看一本叫《WINDOWS下32位汇编语言程序设计》罗云彬写的

前提是你要学会这们语言

至于hello word, 这个玩意很简单

386 ;这是指明CPU使用的指令集

model flat,stdcall ;这是指明使用平坦的段(4GB) stdcall是调用约定,这个可以网上查到

option casemap:none ;这里指明是否区分大小写,因为API接口对大小写区分的很严格所以必须指定

include windowsinc ;包含参数声明文件,这是个包含了windowsAPI接口一些参数值的文件

include user32inc ;user32dll库内函数的参数声明

include kernel32inc ;kernel32dll库内的函数的参数声明

includelib user32lib ;这是指明user32dll库内函数准确地址的一个声明

includelib kernel32lib ;这个就不解释了

data ;已初始化可以读写段

szCaption db 'A MessageBox !',0

szText db 'Hello, World !',0

code ;已初始化可读不可写段

start:

invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK ;MessageBox(user32库内的一个API函数)他d出一个message框显示一些提示

invoke ExitProcess,NULL ;这个不用解释了,结束进程

end start ;代码结束的标志

MasmPluse是汇编泰斗们编写的,界面干净简洁,代码支持高亮并且他们的站点还提供MasmPluse的教程和代码列子

OllyDbg是r3级别的一个调试工具,使用方式看雪有详细教程

Api接口是应用程序编程接口,说通俗点就是系统提供的功能函数

调用约定是指明调用参数的传递方式和入栈方式

ac //源文件

int max(int x,int y)

{

int temp;

if(x>y)

{

temp=x;

}

else

{

temp=y;

}

}

ah

#ifndef A_H

#define A_H

int max(int x,int y);

#endif

mainc

#include"ah"

void main()

{

int max(7,8);

}

大概就是这样

大概就是这样

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/13496566.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-09-01
下一篇2025-09-01

发表评论

登录后才能评论

评论列表(0条)

    保存