资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1CodeVisionAVR C Library Functions ReferenceCodeVisionAVR C 库函数介绍译自 CodeVisionAVR C Compiler Help目录: 1.Character Type Functions 字符类型函数 2.Standard C Input/Output Functions 标准输入输出函数 3.Standard Library Functions 标准库和内存分配函数 4.Mathematical Functions 数学函数 5.String Functions 字符串函数 6.BCD Conversion Functions BCD 转换函数 7.Memory Access Functions 存储器访问函数 8.Delay Functions 延时函数 9.LCD Functions LCD 函数 10.LCD Functions for displays with 4x40 characters 440 字符型 LCD 函数 11.LCD Functions for displays connected in 8 bit memory mapped mode 以 8 位外部存储 器模式接口的 LCD 显示函数 12.I2C Bus Functions I2C 总线函数 13.National Semiconductor LM75 Temperature Sensor Functions LM75 温度传感器函数 14.Dallas Semiconductor DS1621 Thermometer/Thermostat Functions DS1621 温度计函 数 15.Philips PCF8563 Real Time Clock Functions PCF8563 实时时钟函数 16.Philips PCF8583 Real Time Clock Functions PCF8583 实时时钟函数 17.Dallas Semiconductor DS1302 Real Time Clock Functions DS1302 实时时钟函数 18.Dallas Semiconductor DS1307 Real Time Clock Functions DS1307 实时时钟函数 19.1 Wire Protocol Functions 单线通讯协议函数 20.Dallas Semiconductor DS1820/DS1822 Temperature Sensors Functions DS1820/1822 温度传感器函数 21.SPI Functions SPI 函数 22.Power Management Functions 电源管理函数 23.Gray Code Conversion Functions 格雷码转换函数2前言:如果你要使用库函数,就必须用 #include 包含相应的头文件。 例子: /* 使用库函数前要先包含头文件 */ #include / 有 abs 函数 #include / 有 putsf 函数 void main(void) int a,b; a=-99; /* 使用库函数 */ b=abs(a); putsf(“Hello world“); 1.Character Type Functions 字符类型函数 这些函数的原型放在“.INC”目录的“ctype.h”头文件中。使用这些之前必须用 “#include”包含头文件。 unsigned char isalnum(char c) 如果 c 是数字或字母返回 1 。 unsigned char isalpha(char c) 如果 c 是字母返回 1 。 unsigned char isascii(char c) 如果 c 是 ASCII 码(0127)返回 1 。 unsigned char iscntrl(char c) 如果 c 是控制字符(0.31 或 127)返回 1 。 unsigned char isdigit(char c) 如果 c 是数字返回 1 。 unsigned char islower(char c) 如果 c 是小写字母返回 1 。 unsigned char isprint(char c) 如果c是一个可打印字符(32127)返回1 。 unsigned char ispunct(char c) 如果c是一个除空格、数字或字母的可打印字符返回1 。 unsigned char isspace(char c) 如果 c 是空格返回 1 。 unsigned char isupper(char c) 如果 c 是大写字母返回 1 。 unsigned char isxdigit(char c) 如果 c 是 16 进制数字返回 1 。 char toascii(char c) 返回 c 对应的 ASCII 。 unsigned char toint(char c) 把 c 当做 16 进制字符并返回对应的 10 进制数(015) 。 char tolower(char c) 如果 c 是大写字母返回对应的小写字母。 char toupper(char c) 如果 c 是小写字母返回对应的大写字母。2.Standard C Input/Output Functions 标准输入输出函数 这些函数的原型放在 “.INC” 目录的 “stdio.h” 头文件中。 使用这些之前必须用 “#include” 包含头文件。 char getchar(void) 使用查询方式返回由 UART 接收的一个字符。 void putchar(char c) 使用查询方式由 UART 发送一个字符 c 。 使用这些函数之前,你必须: 设置 UART 的波特率,设置接收允许,设置发送允许。3例子: #include #include /* 晶振频率 Hz */ #define xtal 4000000L /* 波特率 */ #define baud 9600 void main(void) char k; /* 设置波特率 */ UBRR=xtal/16/baud-1; /* 设置 UART 控制寄存器,RX while (1) /* 接收 */k=getchar();/* 发送 */putchar(k); 你也可以使用 Project|Configure|C Compiler 菜单选项设置波特率。 如果你使用其它的输入输出外设,你必须根据你的外设修改 getchar 和 putchar 函数。 这些函数的源代码在 stdio.h 文件里。 所有高级别的输入输出函数都使用 getchar 和 putchar。 void puts(char *str) 使用 putchar 把 SRAM 中的以空字符结束的字符串输出,并在后 面加换行符。 void putsf(char flash *str) 使用 putchar 把 FLASH 中的以空字符结束的字符串输出, 并在后面加换行符。 void printf(char flash *fmtstr , arg1, arg2, .) 使用 putchar 按格式说明符输出格式化 文本 fmtstr 字符串。 格式化文本 fmtstr 字符串是常量,必须放在 FLASH 中。 printf 执行的是标准 C 的一个子集。 下面是格式化说明符: %c输出一个 ASCII 字符 %d输出有符号十进制整数 %i输出有符号十进制整数 %u 输出无符号十进制整数 %x输出小写字母的十六进制整数 %X 输出大写字母的十六进制整数 %s输出 SRAM 中的以空字符结束的字符串 % 输出 % 字符 所有输出的数都是右对齐的,并在左侧加空格补齐。 如果在 % 和 d 、i 、u 、x 或 X 之间加入一个字符 0 ,那么输出的数的左侧加 0 补 齐。 如果在 % 和 d 、i 、u 、x 或 X 之间加入一个字符 - ,那么输出的数左对齐。4如果在 % 和 d 、i 、u 、x 或 X 之间加入宽度限制符(09) ,可以指定输出的数的 最小宽度。如果在宽度限制符前加入字符 - ,输出的数左对齐。 void sprintf(char *str, char flash *fmtstr , arg1, arg2, .) 这个函数与 printf 类似,只是它的格式化字符放在以空字符结尾的字符串 str 中。 char *gets(char *str, unsigned char len) 使用 getchar 接收以换行符结束的字符串 str。 换行符会被 0 替换。 字符串的最大长度是 len。如果已经收到了 len 个字符后还没有收到换行符,那么字符 串就以 0 结束,函数停止执行并退出。 函数的返回值是指向 str 的指针。 signed char scanf(char flash *fmtstr , arg1 address, arg2 address, .) 使用 getchar 按格 式说明符接收格式化文本 fmtstr 字符串。 格式化文本 fmtstr 字符串是常量,必须放在 FLASH 中。 scanf 执行的是标准 C 的一个子集。 下面是格式化说明符: %c接收一个 ASCII 字符 %d接收有符号十进制整数 %i接收有符号十进制整数 %u 接收无符号十进制整数 %x接收无符号十六进制整数 %s接收以空字符结束的字符串 函数返回成功接收的个数,如果返回-1 表示接收出错。 signed char sscanf(char *str, char flash *fmtstr , arg1 address, arg2 address, .) 这个函数与 scanf 类似, 只是它的格式化字符放在 SRAM 中的以空字符结尾的字符串 str 中。3.Standard Library Functions 标准库和内存分配函数 这些函数的原型放在“.INC”目录的“stdlib.h”头文件中。使用这些之前必须用 “#include”包含头文件。 int atoi(char *str) 转换字符串 str 为整型数并返回它的值,字符串 str 起始必须是十 进制数字的字符,否则返回 0。当碰到字符串中第一个非十进制数字的字符时,转换结束。 long int atol(char *str) ) 转换字符串 str 为长整型数并返回它的值,字符串 str 起始必 须是长整型数形式字符,否则返回 0。 void itoa(int n, char *str) 转换整型数 n 为字符串 str。 void ltoa(long int n, char *str) 转换长整型数 n 为字符串 str。 void ftoa(float n, unsigned char decimals, char *str) 转换浮点数 n 为字符串 str。 由 decimals 指定四舍五入保留小数位(最多五位) 。 例子: char *pi; ftoa(3.1415926,3,pi);/pi=”3.142” void ftoe(float n, unsigned char decimals, char *str) 转换浮点数 n 为字符串 str。 字符串表示为科学计数法形式,由 decimals 指定四舍五入保留小数位(最多五位) 。 例子: char *pi10; ftoe(3.1415926*10,4,pi10);/p
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号