第二章 8051单片机结构1.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 8051单片机结构1.ppt

第二章 8051单片机结构 CPU 外部时钟 存储器:RAM、ROM 2个定时/计数器 2个外部中断 一个串行口 4组I/O口 8051单片机结构 CPU 外部时钟 存储器:RAM、ROM 2个定时/计数器 2个外部中断 一个串行口 4组I/O口 CPU(运算器+控制器等) 算术运算:+、-、*、/、% 关系运算: 、 、 、 、 、! 逻辑运算:、||、! 位运算:、|、^、~、 、 805l运算器具有位处理能力(布尔处理),可以提高硬件处理速度 自增、减:++、- - CPU(运算器+控制器等) 算术运算:+、-、*、/、% #define N 4 unsigned char LEDBuf[N] unsigned long a; unsigned char i; a 1234; for i 0;i 4;i++ LEDBuf[i] a%10; a/ 10; 程序的不足: 1、变量a的值发生了变化 2、程序不通用,需修改#define N实现 CPU(运算器+控制器等) 算术运算:+、-、*、/、% 1、 b 1234; a b; 2、 void exchange unsigned char a[],unsigned long n unsigned char i 0; while n! 0 //while n a[i] unsigned char n%10 ; n n/10; i++; exchange LEDBuf,a ; CPU(运算器+控制器等) 算术运算:+、-、*、/、% 关系运算: 、 、 、 、 、! unsigned char a 0; P1 0xff; if a 0 P1 0x00; P1 0xff; 逻辑运算:、||、! 位运算:、|、^、~、 、 805l运算器具有位处理能力(布尔处理),可以提高硬件处理速度 自增、减:++、- - C 位操作 为什么要引入位处理?C语言可直接对硬件操作(位处理) 若要对P20复位,可用P2=0x00; 字节操作 实现 该语句的缺点?P10虽被复位了,但P17~P11均被复位了(改变了其它引脚的输出状态…… 因此要引入位处理 CPU(运算) 00 0 01 0 10 0 11 1 38 0 why? 位复位 unsigned char a; a 0xFE; CPU (|运算) 0|0 0 0|1 1 1|0 1 1|1 1 位置位 unsigned char a; a| 0x01; CPU (^运算) 0^0 0 0^1 1 1^0 1 1^1 0 位取反 unsigned char a; a^ 0x01; unsigned char a 0xAA,b 0x55,c,d; c a^b^a; d b^a^b; CPU(~反) ~0 1 ~1 0 CPU( 左移、 右移) a 15;a 2;则a=60 ? a a*4 a 15;a 2;则a=3 ? a a/4 程序的结果是:13 void main void unsigned int a 3,b 10; printf %d\n,a 2|b 1 ; 位操作 如何实现对P11置位? P1=P1|0x01; (1:| 2:0x01需思考后得到-直接套用) setbit P1,1 ;引入置位、复位、取反、判断引脚状态的宏定义 位运算符综合应用 #include reg51.h #define setbit var,bit var| 0x01 bit //定义置位函数 #define clrbit var,bit var ~ 0x01 bit //定义位清零函数 #define checkbit var,bit var 0x01 bit //定义位查询函数 #define xorbit var,bit var^ 0x01 bit //定义位取反函数 void main void while 1 setbit P1,3 ; clrbit P1,5 ; xorbit P1,3 ; if checkbit P1,3 xorbit P1,0 ; 位运算符综合应用 #define checkbit var,bit var 0x01 bit //定义位查询函数 位处理示例 P20接红发光二极管,P21接绿发光二极管,P22接黄发光二极管 要求每隔1秒循环点亮之

文档评论(0)

书屋 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档