在路上...

The development of life
我们一直都在努力,有您的支持,将走得更远...

站内搜索: Google

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2009年9月6日

摘要: 名称:sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型:Int sscanf( string str, string fmt, mixed var1, mixed var2 ... );int scanf( const char *format [,argument]... ); 说明:sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者... 阅读全文
posted @ 2009-09-06 23:33 palam 阅读(264) 评论(0) 推荐(0) 编辑

摘要: //led.c#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/ioctl.h>int main(int argc, char **argv){int on;int led_no;int fd;/* 检查led控制的两个参数,如果没有参数输入则退出。*/if (... 阅读全文
posted @ 2009-09-06 23:32 palam 阅读(386) 评论(0) 推荐(0) 编辑

摘要: 这两个功能的实现都是通过设置启动脚本来实现的。启动脚本的一般存放路径是 /etc/init.d/rcS (rcS即脚本文件),自启动应用程序一般放置于 /etc/rc.d/init.d 目录下。 我们需要用vi命令对rcS进行编辑,当然也可以通过其他方式对其进行覆盖。 在脚本中自启动应用程序示例:#各种服务程序/etc/rc.d/init.d/netd start #telnet/ftp 服务/e... 阅读全文
posted @ 2009-09-06 23:30 palam 阅读(3159) 评论(0) 推荐(0) 编辑

摘要: 最近在做一个移植UCOS-II的任务,遇到了semihosting的问题,现在把这个问题的解决办法总结一下。 Step 1 : 用#pragma import(__use_no_semihosting_swi)保证用户程序不调用semihostSWI; 此后,link时会有 Error :L6200E:Symbol __semihosting_swi_guard multiply defined ... 阅读全文
posted @ 2009-09-06 23:29 palam 阅读(994) 评论(0) 推荐(0) 编辑

摘要: 与传统的4/8位单片机相比,ARM的性能和处理能力当然是遥遥领先的,但与之相应,ARM的系统设计复杂度和难度,较之传统的设计方法也大大提升了。本文旨在通过讨论系统程序设计中的几个基本方面,来说明基于ARM的嵌入式系统程序开发的一些特点,并提出和解决了一些常见的问题。  本文分成几个相对独立的专题陆续刊载。  (一) 嵌入式程序开发基本概念  (二) 系统的初始化过程  (三) 如何满足嵌入式系统的... 阅读全文
posted @ 2009-09-06 23:28 palam 阅读(722) 评论(0) 推荐(0) 编辑

摘要: Devfs,也叫设备文件系统(Device Filesystem),设计它的唯一目的就是提供一个新的(更理性的)方式管理通常位于 /dev 的所有块设备和字符设备。您也许知道,典型的 /dev 树包含数百个块特殊文件和字符特殊文件,它们全都在根文件系统上。每个特殊文件都可以让用户空间进程轻松地与内核设备实现交互。举例来说,通过对这些特殊文件执行操作,您的 X 服务器就能够访问视频硬件, fsck 可以执行文件系统检验, lpd 可以通过并行端口向打印机发送数据。 阅读全文
posted @ 2009-09-06 23:28 palam 阅读(329) 评论(0) 推荐(0) 编辑

摘要: //4led.c#include <linux/config.h>#include <linux/module.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/miscdevice.h>#include <linux/sched.h>#incl... 阅读全文
posted @ 2009-09-06 23:27 palam 阅读(265) 评论(0) 推荐(0) 编辑

摘要: 2.4内核引入优点:设备初始化时在/dev下创建设备文件,卸载时候删除可以指定设备名,所有者,权位,可以不需要分配主设备号static devfs_handle_t devfs_handle;static int __init xxx_init(void){int ret;int i;ret = register_chrdev(XXX_MAJOR,DEVICE_NAME, &xxx_fop... 阅读全文
posted @ 2009-09-06 23:25 palam 阅读(372) 评论(0) 推荐(0) 编辑

摘要: USB规范定义function 为主机提供单个功能的设备。 hub是一个包含有一个或多个到USB设备的接口或内部连接的设备。同时这个设备还带有使该设备能与每个外设通信的硬件设施。集线器重复接收通信,同时也有处理以下状况的能力;管理电源、发送和响应状态和控制消息以及防止全速数据输出到低速设备。 device是一个function(功能)或一个hub(集线器),除了复合设备(复合设备有一个集线器和一个... 阅读全文
posted @ 2009-09-06 23:24 palam 阅读(511) 评论(0) 推荐(0) 编辑

摘要: clock部分比较容易,现在按照datasheet的思路梳理一下。 一、对clock的基本认识 第七部分是“clock & power management”,总结如下: 1 s3c2410的clock & power management模块包含三个部分:clock control、usb control、power control。现在的关注点是cl... 阅读全文
posted @ 2009-09-06 23:24 palam 阅读(491) 评论(0) 推荐(0) 编辑

摘要: 一、typedef的用法 在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef int INT;typedef int ARRAY[10];typedef (int*) pINT; typedef可以增强程序的可读性,以及标识符的灵活性,但它也有“非直观性”等缺点。二、#define... 阅读全文
posted @ 2009-09-06 23:23 palam 阅读(228) 评论(0) 推荐(0) 编辑

摘要: U32 downloadAddress = 0; void main(void){ void (*startp)(void); //定义一个函数指针 startp = (void (*)(void))downloadAddress; //把一个32位的数转换成指针,且指针类型为函数指针。然后把这个指针付给; 前面定义好的函数指针 (*startp)(); //用函数指针执行指定地址的代码} 阅读全文
posted @ 2009-09-06 23:19 palam 阅读(265) 评论(0) 推荐(0) 编辑

摘要: 在 ARM 汇编语言程序里,有一些特殊指令助记符,这些助记符与指令系统的助记符不同,没有相对应的操作码,通常称这些特殊指令助记符为伪指令,他们所完成的操作称为伪操作。伪指令在源程序中的作用是为完成汇编程序作各种准备工作的,这些伪指令仅在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成。 阅读全文
posted @ 2009-09-06 23:13 palam 阅读(362) 评论(0) 推荐(0) 编辑

摘要: 在这一章里将提供三个范例来说明如何使用 µC/OS-II。笔者之所以在本书一开始就写这一章是为了让读者尽快开始使用 µC/OS-II。在开始讲述这些例子之前,笔者想先说明一些在这本书里的约定。 阅读全文
posted @ 2009-09-06 23:10 palam 阅读(1376) 评论(0) 推荐(1) 编辑

摘要: 在进入正题之前,我想先把ARM920T的异常向量表(Exception Vectors)做一个简短的介绍。:]ARM920T的异常向量表有两种存放方式,一种是低端存放(从0x00000000处开始存放),另一种是高端存放(从0xfff000000处开始存放)。关于为什么要分两种方式进行存放这点我将在介绍MMU的文章中进行说明,本文采用低端模式。ARM920T能处理有8个异常,他们分别是:Reset... 阅读全文
posted @ 2009-09-06 22:48 palam 阅读(303) 评论(0) 推荐(0) 编辑

摘要: MMU,全称Memory Manage Unit, 中文名——存储器管理单元。 阅读全文
posted @ 2009-09-06 22:45 palam 阅读(240) 评论(0) 推荐(0) 编辑