2022年AVR单片机C语言库 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年AVR单片机C语言库 .pdf》由会员分享,可在线阅读,更多相关《2022年AVR单片机C语言库 .pdf(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、CodeVisionAVR C 库函数介绍 刘汧1CodeVisionAVR C Library Functions ReferenceCodeVisionAVR C 库函数介绍译自 CodeVisionA VR C Compiler Help目录:1. Character Type Functions 字符类型函数2. Standard C Input/Output Functions 标准输入输出函数3. Standard Library Functions 标准库和内存分配函数4. Mathematical Functions 数学函数5. String Functions 字符串函数6
2、. 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 总线
3、函数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 DS13
4、02 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
5、.Gray Code Conversion Functions 格雷码转换函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 33 页 - - - - - - - - - CodeVisionAVR C 库函数介绍 刘汧2前言:如果你要使用库函数,就必须用 #include 包含相应的头文件。例子:/* 使用库函数前要先包含头文件 */#include / 有 abs 函数#include / 有 putsf 函数void main(void) int a,b;a=-99
6、;/* 使用库函数 */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(
7、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 isuppe
8、r(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 标准输入输出
9、函数这些函数的原型放在 “.INC ” 目录的“stdio.h” 头文件中。 使用这些之前必须用 “#include ”包含头文件。char getchar(void) 使用查询方式返回由UART 接收的一个字符。void putchar(char c) 使用查询方式由UART 发送一个字符c 。使用这些函数之前,你必须:设置 UART 的波特率,设置接收允许,设置发送允许。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 33 页 - - - - - - - - - Co
10、deVisionAVR C 库函数介绍 刘汧3例子:#include #include /* 晶振频率 Hz */#define xtal 4000000L/* 波特率 */#define baud 9600void main(void) char k;/* 设置波特率 */UBRR=xtal/16/baud-1;/* 设置 UART 控制寄存器, RX & TX 允许 , 不使用中断, 8 位数据模式 */UCR=0 x18;while (1) /* 接收 */ k=getchar();/* 发送 */ putchar(k);你也可以使用Project|Configure|C Compile
11、r菜单选项设置波特率。如果你使用其它的输入输出外设,你必须根据你的外设修改 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, .) 使用 p
12、utchar 按格式说明符输出格式化文本 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 或
13、 X 之间加入一个字符 - ,那么输出的数左对齐。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 33 页 - - - - - - - - - CodeVisionAVR C 库函数介绍 刘汧4如果在 % 和 d 、i 、u 、x 或 X 之间加入宽度限制符(09) ,可以指定输出的数的最小宽度。如果在宽度限制符前加入字符 - ,输出的数左对齐。void sprintf(char *str, char flash *fmtstr , arg1, arg2, .)这个函数与
14、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 字符串。格式化文
15、本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. Standa
16、rd 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) 转换
17、整型数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。字符串表示 为科 学
18、计数 法形 式,由 decimals 指定 四舍五 入保留 小数位(最 多五 位) 。例子:char *pi10;ftoe(3.1415926*10,4,pi10);/pi10=”3.1416e1 ”名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 33 页 - - - - - - - - - CodeVisionAVR C 库函数介绍 刘汧5float atof(char *str) 转换字符串str 为浮点 数并返回它的值,字符串str 起始 必须是数字字符或小数 点,
19、 否则 返回0。当 碰到字符串中 第 一个十进制数字和小数点以外的字符时,转换结束。int rand (void) 产生 一个 0 到 32767 之间的 伪随机 数。void srand(int seed) 设置 伪随机 数发 生器的 种子数。4. Mathematical Functions 数学函数这些函数的原型放在 “.INC ” 目录的“math.h” 头文件中。 使用这些之前必须用 “#include ”包含头文件。unsigned char cabs(signed char x) 返回 x 的绝对值。unsigned int abs(int x) 返回 x 的绝 对值。unsig
20、ned long labs(long int x) 返回 x 的绝对值。float fabs(float x) 返回 x 的绝对值。signed char cmax(signed char a, signed char b) 返回 a和 b 的最大值。int max(int a, int b) 返回 a 和 b 的最大值。long int lmax(long int a, long int b) 返回 a 和 b 的最大值。float fmax(float a,float b) 返回 a和 b 的最大值。signed char cmin(signed char a, signed char b
21、) 返回 a 和 b 的最小值。int min(int a, int b) 返回 a 和 b 的最小值。long int lmin(long int a, long int b) 返回 a 和 b 的最小值。float fmin(float a, float b) 返回 a 和 b 的最小值。signed char csign(signed char x) 当 x 分别 为负 数、 0、正数时,返回 1 、0、1。signed char sign(int x) 当 x 分别 为负 数、 0、正数时,返回 1 、0、1。signed char lsign(long int x) 当 x 分别 为
22、负 数、 0、正 数时,返回 1 、0、1。signed char fsign(float x) 当 x 分别 为负 数、 0、正数时,返回 1 、0、1。unsigned char isqrt(unsigned int x) 返回无符号整数x 的平方根。unsigned int lsqrt(unsigned long x) 返回无符号长整数x 的平方根。float sqrt(float x) 返回 正浮点 数 x 的平方根。float floor(float x) 返回不大 于 x 的最大整数。float ceil(float x) 返回对应 x 的整数,小数部分四舍五 入。float fm
23、od(float x, float y) 返回 x/y 的余数。float modf(float x, float *ipart) 把浮点 数 x 分解成整数部分和小数部分。整数部分存放在 ipart 指向的 变量中,小数部分应大于或等于 0 而小于 1 并 作为 函数的返回值。float ldexp(float x, int expn) 返回 x 2 expn。float frexp(float x, int *expn) 把 浮点 数 x 分解成数字部分y(尾数)和以2 为底 的指数 n 两个部分 即 xy 2 n ,y 要大 于等于 0.5 小于 1,y 值被函数返回 而 expn 值存
24、放在expn 指向的 变量中。float exp(float x) 返回 e x的值。float log(float x) 返回 x 的自 然对数。float log10(float x) 返回以 10 为底 的 x 的对数。float pow(float x, float y) 返回 x y的值。float sin(float x) 返回 x 的正弦 函数值, x 为弧 度。float cos(float x) 返回 x 的余弦 函数值, x 为弧 度。float tan(float x) 返回 x 的正切 函数值, x 为弧 度。名师资料总结 - - -精品资料欢迎下载 - - - - -
25、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 33 页 - - - - - - - - - CodeVisionAVR C 库函数介绍 刘汧6float sinh(float x) 返回 x 的双曲正弦 函数值, x 为弧 度。float cosh(float x) 返回 x 的双曲余弦 函数值, x 为弧 度。float tanh(float x) 返回 x 的双曲正切 函数值, x 为弧 度。float asin(float x) 返回 x 的反正弦 函数值,返回值为弧 度, 范围 在-/2 到 /2 之间,x 的值必须在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年AVR单片机C语言库 2022 AVR 单片机 语言
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内