RSS

NIOS II常用函数整理

来源:网络 作者:匿名 时间:2007-01-09 Tag: 点击:



Flash
函数原型:int alt_erase_flash_block(alt_flash_fd* fd, int offset, int length)
输入参数:fd为具体的flash设备;offset擦除的flash模块的偏移量;length擦除的flash模块的长度
函数说明:擦除单独的一个flash模块
返回值: 发送成功返回0,反之返回为负数

函数原型:void alt_flash_close_dev(alt_flash_fd * fd)
输入参数:fd为具体的flash设备
函数说明:关闭flash设备
返回值: -

函数原型:alt_flash_fd * alt_flash_open_dev(const char* name)
输入参数:
函数说明:打开flash设备。一旦打开,函数alt_write_flash()用来写入,函数alt_read_flash()用来读取数据,或者使用函数alt_get_flash_info(), alt_erase_flash_block(), alt_write_flash_block(),控制单个模块
返回值: 失败返回0,成功其他值

函数原型:int alt_get_flash_info(alt_flash_fd* fd, flash_region ** info,
int* number_of_regions)
输入参数:fd flash设备;info指向flash_region结构体的指针;number_of_regions
函数说明:得到擦除flash区域的细节
返回值: 发送成功返回0,反之返回为负数

函数原型:int alt_read_flash(alt_flash_fd* fd, int offset, void* dest_addr, int length)
输入参数:dest_addr目标地址指针
函数说明:从flash偏移量为offset字节开始读取数据,写入到目标地址dest_addr中
返回值: 成功返回0,反之为非0
函数原型:int alt_write_flash(alt_flash_fd* fd, int offset, const void* src_addr,
int length)
输入参数:src_addr源地址;fd,flash设备;offset 偏移量;length字节长度
函数说明:写数据到flsah中,要写的数据在源地址src_addr中
返回值: 成功返回0,反之为非0

函数原型:int alt_write_flash_block(alt_flash_fd* fd, int block_offset, int data_offset,
const void *data, int length)
输入参数:fd;data_offset起始写数据的偏移量;length为要写数据的长度
函数说明:写入到一个已擦除的flash模块
返回值: 成功返回0,反之为非0

Irq
函数原型:alt_irq_context alt_irq_disable_all (void)
输入参数:void
函数说明:禁止所有中断
返回值: 传递的值作为随后的函数调用的输入参数


函数原型:void alt_irq_enable_all (alt_irq_context context)
输入参数:先前调用函数alt_irq_disable_all (void)的返回值,
函数说明:启动所有中断
返回值: -

函数原型:int alt_irq_enabled (void)
输入参数:void
函数说明:启动中断
返回值: 禁止中断返回0,反之为非0

函数原型:int alt_irq_register (alt_u32 id, void* context, void (*isr)(void*, alt_u32))
输入参数:id,32位无符号数,中断使能;context和id是isr的两个输入参数;中断激活时调用isr
函数说明:寄存一个isr
返回值: 成功返回0,反之为非0


函数原型:int alt_write_flash(alt_flash_fd* fd, int offset, const void* src_addr,
int length)
输入参数:src_addr源地址;fd,flash设备;offset 偏移量;length字节长度
函数说明:写数据到flsah中,要写的数据在源地址src_addr中
返回值: 成功返回0,反之为非0

函数原型:int alt_write_flash_block(alt_flash_fd* fd, int block_offset, int data_offset,
const void *data, int length)
输入参数:fd;data_offset起始写数据的偏移量;length为要写数据的长度
函数说明:写入到一个已擦除的flash模块
返回值: 成功返回0,反之为非0

函数原型:int close (int filedes)
输入参数:filedes,描述符
函数说明:标准的UNIX函数close(),关闭文件描述符filedes
返回值: 成功返回0,反之为-1

函数原型:int open (const char* pathname, int flags, mode_t mode)
输入参数:pathname, 路径名;flags,O_RDONLY或O_WRONLY 或O_RDWR,分别对应着只读,只写,或读写操作;mode,使用许可说明
函数说明:打开文件或设备,返回一个文件描述符(读写中使用的非负整数)
返回值: 成功返回文件描述符,反之返回-1

函数原型:int read(int file, void *ptr, size_t len)
输入参数:file文件描述符;ptr为读数据的位置指针,len读数据的长度,单位为字节
函数说明:从文件或设备中读取数据块
返回值: 成功返回读取的字节数,反之返回-1

函数原型:clock_t times (struct tms *buf)
输入参数:buf结构体指针
函数说明:兼容newlib,tms的结构体指针如下:
type struct
{clock_t tms_utime;
clock_t tms_stime;
clock_t tms_cutime;
clock_t tms_sutime;
};
tms_utime: CPU索取用户指令的执行时间
tms_stime: CPU索取由系统表示的过程的执行时间
tms_cutime:所有子进程tms_utime和tms_cutime的时间之和
tms_sutime:所有子进程tms_stime和tms_sutime的时间之和
返回值: 返回时钟数,没有时钟则返回0

函数原型:int usleep (int us)
输入参数:us,单位为微秒
函数说明:直到us微秒后才解除阻塞,即其功能相当于延时us微秒
返回值: 成功返回0,反之为-1,有错误发生显示错误发生原因

函数原型:int wait(int *status)
输入参数: status 进程状态指针
函数说明:功能是等候所有子进程退出,由于HAL不支持分散子进程,函数立即返回
返回值: status内容清0,表明没有子进程;返回值为-1,且errno置为ECHILD, 表明没有子进程等候

函数原型:int write(int file, const void *ptr, size_t len)
输入参数:file文件描述符;ptr为读数据的位置指针,len读数据的长度,单位为字节
函数说明:往文件或设备写入数据块,
返回值: 成功返回写入的字节数,也可能少于请求的长度;反之返回-1,万一有错误发生,errno被设置为发生的原因

数据的标准类型
类型 说明
alt_8 符号8位整数
alt_u8 无符号8位整数
alt_16 符号16位整数
alt_u16 无符号16位整数
alt_32 符号32位整数
alt_u32 无符号32位整数
下面为自己整理
1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
教程下载