IAR for AVR 学习笔记

来源:互联网 发布:数据库基准测试 编辑:程序博客网 时间:2024/05/16 07:03

参照这位博主的文章

地址

http://blog.csdn.net/liu_jing_yang/article/category/942168

 

包含如下内容

 

Warning[Pe550]: variable "xxxx" was set but never used

Warning[Pe550]: variable "xxxx" was set but never used 如: void fx (void) { UINT8 i; i = p; ........................ } 定义局部变量,就会报“变量定义了,但是没有使用”的警告!,并且变量也没有被赋值。很容易迷惑人。不仔细看警告的朋友可能半天调试不好。 UINT8...
阅读(177) 评论(0)

Warning[Pa082]:undefined behavior: the order of volatile accesses is undefined in this statement

...
阅读(122) 评论(0)

IAR for AVR 学习笔记(8)--汇编嵌入方式

嵌入汇编语言在线汇编:使用asm或者__asm,推荐使用__asm。#i nclude void main() { asm("NOP \n" "CLH \n" "OR R16,R17 \n"); } 不过IAR提供了完全可以访问底层的函数,建议不要频繁使用汇编。...
阅读(46) 评论(0)

IAR for AVR 学习笔记(7)--头文件含义

avr_macros.h里面包含了读写16位寄存器的简化书写,和几个位操作函数 comp_a90.h对大量的内在函数做了简要书写 ina90.h包含"inavr.h" "comp_A90.h"文件 intrinsics.h内在函数提供最简单的操作处理器底层特征。休眠,看门狗,FLASH函数。 iomacro.H I/O寄存器定义文件样本。 iom8.h 包含I/O...
阅读(115) 评论(0)

IAR for AVR 学习笔记(6)--中断及相关函数操作

6.1.中断函数:在IAR编译器里用关键字来__interrupt来定义一个中断函数。用#pragma vector来提供中断函数的入口地址 #pragma vector=0x12//定时器0溢出中断入口地址 __interrupt void time0(void) { ; } 上面的入口地址写成#pragma vector=TIMER0_OVF_vect更直观,每种中断的入口地址...
阅读(118) 评论(0)

IAR for AVR 学习笔记(5)--SRAM操作

SARM数据类型的具体操作方法 SARM空间是AVR单片机最重要的部分,所有的操作必须依赖该部分来完成。变量在SARM空间的存储模式有tiny ,small large 三种,也就是对应于__tiny, __near __far三中存储属性。一旦选择为哪种存储模式,对应的数据默认属性也就确定了,但可以采用__tiny, __near __far关键字来更改。对于程序中的局部变量,编译器会自动...
阅读(59) 评论(0)

IAR for AVR 学习笔记(4)--Flash操作

FLASH常用类型的具体操作方法 4.1.FLASH 区域数据存储。用关键字 __flash 控制来存放, __ flash 关键字写在数据类型前后效果一样 __flash unsigned char a;//定义一个变量存放在flash空间 unsigned char __flash a;//效果同上 __flash unsigned char p[];//定义一个数组存放在flas...
阅读(61) 评论(0)

IAR for AVR 学习笔记(3)--位操作

3.1.在c语言里对位的操作如一般如下: PORTB|=(1 PORTB&=~(1 PORTB^|=(1 While(PORTB&(1 While(!(PORTB&(1 3.2.IAR编译器对位的支持更强大,除了上面的方法外还有以下更简单的操作方法: PORTB_ Bit2=1; //置PORTB的第2位=1 PORTB_ Bit2=0; //置PORTB的第2位=0 PORTB...
阅读(66) 评论(0)

IAR for AVR 学习笔记(2)--扩展关键字

可以用来解决数据,函数的存放等。有了它我们就可以定义变量存放在EEPROM,FLASH空间。定义中断函数,指针等等。IAR关键字很多,这里只列举常用的。 2.1.扩展关键字:用于控制数据和指针。 __eeprom 用于EEPROM 存储空间, 控制数据存放,控制指针类型和存放 __tinyflash, __flash, __farflash, __hugeflash 用于flash 存储空间...
阅读(65) 评论(0)

IAR for AVR 学习笔记(1)--数据类型

1个英文字符 占 1个字节byte 。 1个汉字字符 占 2个字节byte。 1个字节byte = 8位bit。 bit为二进制数据的0或1。   1.1. 整型数据:       1.2.浮点数据类型:   1.3.指针类型:指针有数据指针和函数指针。 1、数据指针:数据指针的大小为8位,16位,24位。定义为:在整型数据类型后加”*”符号。 例...
阅读(75) 评论(0)

 

原创粉丝点击