




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、AVR单片机C语言的常用操作 位操作(主要是用于操作IO口) BIT(X)函数的用法 设置IO口寄存器 常用的数据类型第1页/共18页 1:0XA10X50 、位左移 1:0XA10X42第2页/共18页、按位与 &0XA10X510X01 |0XA1& 0X51= 0X01第3页/共18页、按位或 |0XA10X510XF1 |0XA1 | 0X51= 0XF1第4页/共18页2.5 AVR单片机常用位操作指令 BIT(x) 定义为 1 大于= 大于等于3,结果为真(1),而10= =100,结果为假(0)。注意:关系运算符等于“= =”是由两个“=”组成。第13页/共18页
2、逻辑运算符C51有3种逻辑运算符: & 逻辑与 | 逻辑或! 逻辑非 逻辑与,格式: 条件式1 & 条件式2 当条件式1与条件式2都为真时结果为真(非0值),否则为假(0值)。逻辑或,格式: 条件式1 | 条件式2 当条件式1与条件式2都为假时结果为假(0值),否则为真(非0值)。逻辑非,格式: !条件式 当条件式原来为真(非0值),逻辑非后结果为假(0值)。当条件式原来为假(0值),逻辑非后结果为真(非0值)。例如:若a=8,b=3,c=0,则!a为假,a & b为真,b & c为假。第14页/共18页位运算符【例】设a=0 x45=01010100B,b=0
3、 x3b=00111011B,则a&b、a|b、ab、a、a2分别为多少?a&b=00010000b=0 x10。a|b=01111111B=0 x7f。ab=01101111B=0 x6f。a=10101011B=0 xab。a2=00001110B=0 x0e。& 按位与| 按位或 按位异或 按位取反 右移第15页/共18页复合赋值运算符 C51语言中支持在赋值运算符“=”的前面加上其它运算符,组成复合赋值运算符。下面是C51中支持的复合赋值运算符 += 加法赋值 + 减法赋值 *= 乘法赋值 /= 除法赋值 %= 取模赋值 &= 逻辑与赋值 |= 逻辑或赋
4、值 = 逻辑异或赋值 = 逻辑非赋值 = 右移位赋值 =2相当于x=x2。第16页/共18页AVR C中 常用语句 While 循环语句 If 条件语句 For 循环语句 Switch/case 多分支选择语句 Do-while 循环语句 #define uint unsigned int DDRA = 0 xff; DDRA|= (1 7);/第7位设为输出 输出1: PORTA |= (1 7); 或者是 PORTA |= BIT(7);/第7位输出高电平 输出0: PORTA &= (1 7); 或者是 PORTA &= BIT(7);/ 第7位输出低电平 对应位取反:PORTA = (1 7);或者是 PORTA = BIT(7);/ 第7位取反 中断处理函数 #pragma interrupt_handler : 例如定时器1中断 #pragma i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论