塞班系统发送短信 开放源代码 塞班系统发送短信 开放源代码
上传时间: 2014-01-02
上传用户:czl10052678
本视频会议服务器端代码:根据自己定义的协议:能构穿透nat 需要java jmf框架 * 我开放源代码是为了更好的让java这门程序艺术更好的发展
上传时间: 2017-09-10
上传用户:jhksyghr
短信平台源代码,欢迎使用,开放源代码。java,java beans
上传时间: 2013-12-05
上传用户:脚趾头
信息技术的发展,数字化产品的普及,导致了对嵌入式开发的巨大需求。以Linux为宿主机系统,搭配一个交叉编译环境,为嵌入式设备生成可执行程序己成为现在日益流行的编译嵌入式软件的解决方案。而开放源代码的GNUT具链是一套开源的开发环境,是嵌入式软件开发中理想的交叉编译器。但现有GNUI具链支持的平台并不能满足层出不穷的嵌入式产品的开发需要,仍有许多平台得不到支持,例如我们进行的minix向ARM-MINIX平台的移植。 本文以在linux环境下构建MINIX嵌入式系统的交叉编译工具链为背景,首先介绍了交叉编译系统的基本组成和结构,以及利用GCC构建交叉编译环境的优越性。然后对目标平台作了介绍。分析了GCC编译器,说明了GCC的设计思想,系统结构,介绍了GNU Binutils的功能,使用方法;接着分析了GNU工具链中的GAS和GLD的实现机制及源代码结构,由于BFD是GNUBinutils的基础,GAS和GLD都是使用BFD库来操作目标文件,因此在这一部分本文对BFD库的工作机制,数据结构也作了重点分析。紧接着说明了GCC交叉编译系统的移植思路和方法,实现难点,以及一些相关技术细节,这涉及到了若干重要的C源文件,Makefile,配置文件的修改,重点给出了BFD库,GAS和GLD的分析及其重定向(通常GCC生成的目标程序是针对GNU/Linux系统的)的实现;然后本文给出了在GNU/Linux宿主机上构建针对ARM-MINIX的参数设置及过程:最后对本文所做的工作进行了总结。
上传时间: 2013-05-31
上传用户:wangzhen1990
嵌入式系统在众多工业领域扮演着越来越重要的角色,但是因嵌入式系统的资源受限缘故,导致在嵌入式系统上很难实现复杂计算算法。此外,当前嵌入式系统设计阶段和实现阶段的分离现状,致使嵌入式系统开发耗时且昂贵。为解决这些问题,本书提出了一种低成本、可重复使用且可重构的嵌入式系统设计与实现集成开发环境。为了减少成本,该集成环境全部是采用自由和开放源代码软件,如Linux操作系统和Scilab计算平台等。 本文主要包括以下内容: 1、构建嵌入式Linux开发环境及移植相关软件包到嵌入式ARM平台,首先详细的描述了如何使用Buildroot工具包制作交叉编译器,并描述Minicom、TFTP和NFS等嵌入式开发相关工具,最后详细的描述了如何移植嵌入式图形用户界面TinyX和嵌入式窗口管理器JWM。 2、构建Scilab-EMB嵌入式计算平台,首先介绍了数值计算软件Scilab,然后详细的描述了如何在ARM系统上实现Scilab-EMB嵌入式计算平台。 3、开发Scilab数据采集工具包,实现Scilab与底层设备通讯,该工具包PC版和ARM版均支持串口和以太网接口,且均支持Modbus现场总线。PC版额外支持OPC协议。 4、基于Scilab构建虚拟控制实验室,验证该平台的可行性及性能。 本文创新点: 1、国内外率先提出了一种新的以Scilab为核心的嵌入式计算平台方案,并在国内外首次实现了Scilab到ARM平台的移植; 2、开发了Scilab-DAQ数据采集工具包,有效的实现了Scilab与底层设备的通讯。 通过虚拟实验室的建立,验证了该嵌入式控制平台能够胜任多种复杂算法。 该嵌入式计算平台解决方案和Scilab-DAQ数据采集工具包已经受到国内外同行的关注,并被多家科研机构、学校和公司所采纳和使用。
标签: Scilab-EMB ARM-Linux 嵌入式 计算
上传时间: 2013-05-30
上传用户:acon
随着计算机、通信及网络技术的高速发展,嵌入式系统广泛地渗透到各行各业及人们日常生活的方方面面中。由于嵌入式系统的复杂性不断增加,嵌入式操作系统成为了嵌入式系统中最重要的组成部分。在各种嵌入式操作系统中,Linux凭借其性能优异、结构清晰、平台支持广泛、网络支持强劲及开放源代码等多方面的优势,被嵌入式系统开发者广泛的采用。同时随着近几年来国内嵌入式领域发展非常迅速,其中32位ARM处理器结构体系的嵌入式CPU在商用领域、工控领域和军用领域都得到了广泛使用。 近几年随着无线通信技术、传感器技术、信息采集和处理技术的飞速发展,出现了低成本、低功耗、多功能的微型无线传感器节点。无线传感器网络是随着传感器节点的发展而兴起的计算机科学技术的一个新的研究领域,它是由一组无线传感器节点通过ad-hoc方式构成的无线网络,综合传感器技术、嵌入式计算技术、分布式信息处理技术和无线通信技术,能够协作地实时监测、感知和采集各种环境或监测对象的信息,并对其进行处理,并传送到需要这些信息的用户处。这种无线网络系统被广泛地用于国防军事、国家安全、环境监测、交通管理、医疗卫生、制造业、反恐救灾等领域,具有十分巨大的发展潜力,引起了学术界和工业界的高度重视。 目前,手持终端的应用范围主要是在商业领域,开发一款适合在工业现场等无线传感网络监控领域的手持终端是本文的初衷。本文从嵌入式系统的角度,采用目前比较流行的ARM9处理器和嵌入式Linux的操作系统,阐述手持终端硬件平台的设计和软件的移植方案;接着研究了系统引导程序的原理、设备驱动开发的关键点、根文件系统的制作方法。在此基础上,分析和移植引导程序U-Boot 1.1.4的实现、无线收发芯片CC2420的驱动开发和帧缓冲驱动的开发,并针对目标平台的特点完成了文件系统的构建;然后介绍了基于Qt/Embedded的图形界面开发的基础,最后对本文研究工作进行总结。
上传时间: 2013-06-26
上传用户:lguotao
随着现代计算机技术和互联网技术的飞速发展,嵌入式系统成为了当前信息行业最热门的焦点之一。而ARM以其高性能低功耗的特点成为目前应用最广泛的32位嵌入式处理器。在嵌入式操作系统方面,Linux凭借其性能优异、结构清晰、平台支持广泛、网络支持强劲及开放源代码等多方面的优势,被嵌入式系统开发者广泛地采用。Linux 2.6包含许多新的特性,为其在嵌入式领域的应用提供了强有力的支持,新的内核越来越多地应用于嵌入式Linux系统中。 本文的工作基于艾科公司研发的硬件平台Ark1600开展。该平台上集成了多个功能模块,例如LCD、12S、GPIO、12C等,同时支持XD、CF、MMC、SD等多种硬件存储设备,在设备通信方面提供了USB、串行通信等传输方式。本文的主要工作是研究Linux在ARM芯片上的移植,并在此基础上阐述Linux设备驱动的开发。 首先构建了交叉编译环境,然后在分析Ark1600硬件体系结构的基础上详细阐述了BootLoader程序设计与实现、Linux2.6内核移植、Ramdisk文件系统移植的全过程,为后续项目的实施搭建了一个良好的开发平台。论文最后阐述了Linux 2.6内核中开发块设备驱动程序的实现方法,并以XD块设备驱动程序为例,详细阐述了Linux驱动程序的开发流程。 主要工作量在于BootLoader程序的设计与实现、Linux系统移植和XD块设备驱动程序的开发。因为项目平台独特的硬件环境,一些程序代码要严格依赖硬件设备设计。在Linux移植中的主要工作包括串口控制台的驱动、设置系统的存储布局、初始化系统定时器、初始化系统中断、在Linux系统中建立标识本硬件平台的结构体变量、配置并编译Linux内核等。
上传时间: 2013-05-18
上传用户:wzr0701
由于集成电路产业在中国的飞速发展,FPGA设计技术,作为一种灵活性很强的芯片设计技术,在国内得到广泛的应用.由于芯片的可升级性和开发自主知识产权芯片的必要性,在北京邮电大学宽带通信网络实验室开发的三层以太网交换机项目中,以太网口和ATM口之间的数据通道的实现上采用了FPGA设计方法.该文主要集中在ATM口之间的数据通道的HEC头校验的FPGA实现.并完成了硬件设计、配置、硬件测试联调工作以及论文撰写工作.硬件的设计和开发基于Protel99和Tornado/VxWorks,软件的设计和开发采用了标准的VHDL语言,开发环境是WINDOWS,开发工具是Xilinx公司的iSE4.1i集成开发环境.随着网络设备的发展,位于网络边缘的设备将会变得更加灵巧,更加迎合网络发展的需要,在网络设备上越来越多地引入了网络处理器.我们实验室和Intel建立了联合实验室,在此基础上,我们要把网络处理器评估板硬件上,运行软件,使其成为路由器,首先要加载的就是网络路由协议.由于Linux的开放源代码,所以我们决定采用Linux做嵌入式系统,在上面运行zebra的路由协议.Zebra是linux上面的开放源代码的路由软件.
上传时间: 2013-07-08
上传用户:yhm_all
Arduino,是一块基于开放源代码的USB接口Simple i/o接口板(包括12通道数字GPIO,4通道PWM输出,6-8通道10bit ADC输入通道),并且具有使用类似Java,C语言的IDE集成开发环境。 让您可以快速使用Arduino语言与Flash或Processing…等软件,作出互动作品。 Arduino可以使用开发完成的电子元件例如Switch或sensors或其他控制器、LED、步进马达或其他输出装置。Arduino也可以独立运作成为一个可以跟软件沟通的接口,例如说:flash、processing、Max/MSP、VVVV 或其他互动软件…。Arduino开发IDE接口基于开放源代码原,可以让您免费下载使用开发出更多令人惊艳的互动作品。 特色: 1、开放源代码的电路图设计,程序开发接口免费下载,也可依需求自己修改。 2、使用低价格的微处理控制器(ATMEGA8或ATmega128)。可以采用USB接口供电,不需外接电源。也可以使用外部9VDC输入 3、Arduino支持ISP在线烧,可以将新的“bootloader”固件烧入ATmega8或ATmega128芯片。有了bootloader之后,可以通过串口或者USB to Rs232线更新固件。 4、可依据官方提供的Eagle格式PCB和SCH电路图,简化Arduino模组,完成独立运作的微处理控制。可简单地与传感器,各式各样的电子元件连接(EX:红外线,超音波,热敏电阻,光敏电阻,伺服马达,…等) 5、支持多种互动程序,如:Flash、Max/Msp、VVVV、PD、C、Processing……等 6、应用方面,利用Arduino,突破以往只能使用鼠标,键盘,CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。
标签: Arduino
上传时间: 2013-11-24
上传用户:bvdragon
at91rm9200启动过程教程 系统上电,检测BMS,选择系统的启动方式,如果BMS为高电平,则系统从片内ROM启动。AT91RM9200的ROM上电后被映射到了0x0和0x100000处,在这两个地址处都可以访问到ROM。由于9200的ROM中固化了一个BOOTLOAER程序。所以PC从0X0处开始执行这个BOOTLOAER(准确的说应该是一级BOOTLOADER)。这个BOOTLOER依次完成以下步骤: 1、PLL SETUP,设置PLLB产生48M时钟频率提供给USB DEVICE。同时DEBUG USART也被初始化为48M的时钟频率; 2、相应模式下的堆栈设置; 3、检测主时钟源(Main oscillator); 4、中断控制器(AIC)的设置; 5、C 变量的初始化; 6、跳到主函数。 完成以上步骤后,我们可以认为BOOT过程结束,接下来的就是LOADER的过程,或者也可以认为是装载二级BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、连接在外部总线上的8位并行FLASH的顺序依次来找合法的BOOT程序。所谓合法的指的是在这些存储设备的开始地址处连续的存放的32个字节,也就是8条指令必须是跳转指令或者装载PC的指令,其实这样规定就是把这8条指令当作是异常向量表来处理。必须注意的是第6条指令要包含将要装载的映像的大小。关于如何计算和写这条指令可以参考用户手册。一旦合法的映像找到之后,则BOOT程序会把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超过16K-3K的大小。当BOOT程序完成了把合法的映像搬到SRAM的任务以后,接下来就进行存储器的REMAP,经过REMAP之后,SRAM从映设前的0X200000地址处被映设到了0X0地址并且程序从0X0处开始执行。而ROM这时只能在0X100000这个地址处看到了。至此9200就算完成了一种形式的启动过程。如果BOOT程序在以上所列的几种存储设备中找到合法的映像,则自动初始化DEBUG USART口和USB DEVICE口以准备从外部载入映像。对DEBUG口的初始化包括设置参数115200 8 N 1以及运行XMODEM协议。对USB DEVICE进行初始化以及运行DFU协议。现在用户可以从外部(假定为PC平台)载入你的映像了。在PC平台下,以WIN2000为例,你可以用超级终端来完成这个功能,但是还是要注意你的映像的大小不能超过13K。一旦正确从外部装载了映像,接下来的过程就是和前面一样重映设然后执行映像了。我们上面讲了BMS为高电平,AT91RM9200选择从片内的ROM启动的一个过程。如果BMS为低电平,则AT91RM9200会从片外的FLASH启动,这时片外的FLASH的起始地址就是0X0了,接下来的过程和片内启动的过程是一样的,只不过这时就需要自己写启动代码了,至于怎么写,大致的内容和ROM的BOOT差不多,不同的硬件设计可能有不一样的地方,但基本的都是一样的。由于片外FLASH可以设计的大,所以这里编写的BOOTLOADER可以一步到位,也就是说不用像片内启动可能需要BOOT好几级了,目前AT91RM9200上使用较多的bootloer是u-boot,这是一个开放源代码的软件,用户可以自由下载并根据自己的应用配置。总的说来,笔者以为AT91RM9200的启动过程比较简单,ATMEL的服务也不错,不但提供了片内启动的功能,还提供了UBOOT可供下载。笔者写了一个BOOTLODER从片外的FLASHA启动,效果还可以。 uboot结构与使用uboot是一个庞大的公开源码的软件。他支持一些系列的arm体系,包含常见的外设的驱动,是一个功能强大的板极支持包。其代码可以 http://sourceforge.net/projects/u-boot下载 在9200上,为了启动uboot,还有两个boot软件包,分别是loader和boot。分别完成从sram和flash中的一级boot。其源码可以从atmel的官方网站下载。 我们知道,当9200系统上电后,如果bms为高电平,则系统从片内rom启动,这时rom中固化的boot程序初始化了debug口并向其发送'c',这时我们打开超级终端会看到ccccc...。这说明系统已经启动,同时xmodem协议已经启动,用户可以通过超级终端下载用户的bootloader。作为第一步,我们下载loader.bin.loader.bin将被下载到片内的sram中。这个loder完成的功能主要是初始化时钟,sdram和xmodem协议,为下载和启动uboot做准备。当下载了loader.bin后,超级终端会继续打印:ccccc....。这时我们就可以下在uboot了。uboot将被下载到sdram中的一个地址后并把pc指针调到此处开始执行uboot。接着我们就可以在终端上看到uboot的shell启动了,提示符uboot>,用户可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了对内存、flash、网络、系统启动等一些命令。 如果系统上电时bms为低电平,则系统从片外的flash启动。为了从片外的flash启动uboot,我们必须把boot.bin放到0x0地址出,使得从flash启动后首先执行boot.bin,而要少些boot.bin,就要先完成上面我们讲的那些步骤,首先开始从片内rom启动uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz烧写到flash中的目的,假如我们已经启动了uboot,可以这样操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系统复位,就可以看到系统先启动boot,然后解压缩uboot.gz,然后启动uboot。注意,这里uboot必须压缩成.gz文件,否则会出错。 怎么编译这三个源码包呢,首先要建立一个arm的交叉编译环境,关于如何建立,此处不予说明。建立好了以后,分别解压源码包,然后修改Makefile中的编译器项目,正确填写你的编译器的所在路径。 对loader和boot,直接make。对uboot,第一步:make_at91rm9200dk,第二步:make。这样就会在当前目录下分别生成*.bin文件,对于uboot.bin,我们还要压缩成.gz文件。 也许有的人对loader和boot搞不清楚为什么要两个,有什么区别吗?首先有区别,boot主要完成从flash中启动uboot的功能,他要对uboot的压缩文件进行解压,除此之外,他和loader并无大的区别,你可以把boot理解为在loader的基础上加入了解压缩.gz的功能而已。所以这两个并无多大的本质不同,只是他们的使命不同而已。 特别说名的是这三个软件包都是开放源码的,所以用户可以根据自己的系统的情况修改和配置以及裁减,打造属于自己系统的bootloder。
上传时间: 2013-10-27
上传用户:wsf950131