您的位置:首页 > 其它

[原创].HAL的不同方式访问字符器件的空间开销简单比较

2009-12-06 09:21 260 查看
注:本文所述皆为查询方式的比对,中断方式下请读者自习研究比对。

范例:/dev/jtag_uart

Unix类型





图1 系统库属性设置

源代码:

#include "system.h"
#include "fcntl.h"
#include "unistd.h"

int main(void)
{
int fd; // file descriptor
char msg[] = "Hello Nios!";

fd = open("/dev/jtag_uart", O_WRONLY);
write(fd, msg, sizeof(msg)-1);
close(fd);

return 0;
}

编译结果:

Info: (hello_nios.elf) 2608 Bytes program size (code + initialized data).

Info: 8189 KBytes free for stack + heap.

ANSI C





图2 系统库属性设置

源代码:

#include "system.h"
#include <stdio.h>

int main (void)
{
FILE *fp; // file pointer
char msg[] = "Hello Nios!";

fp = fopen("/dev/jtag_uart", "w");
fprintf(fp, msg);
fclose(fp);

return 0;
}

编译结果:

Info: (hello_nios.elf) 43 KBytes program size (code + initialized data).

Info: 8148 KBytes free for stack + heap.

C++流

(略)

参考

1. Altera, HAL API Reference, 200905

2. 李兰英等, NiosII嵌入式软核SOPC设计原理及应用, 200611, 北京航空航天大学出版社
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: