近年来,随着多媒体技术、计算机网络与通信技术的的快速发展,传统的监控系统也不断向着新的发展方向进行着不断的更新与发展。进而随着嵌入式技术的出现以及人们对降低监控系统成本和提高可靠性的迫切需求,基于嵌入式系统的网络视频监控系统将成为新的研发热点。 本文的目的是把嵌入式技术与计算机网络技术相结合,构造一个性能稳定且具有较强处理能力的数字化远程视频监控系统。该监控系统以嵌入式Linux系统平台作为服务器端,服务器程序在其上以后台方式运行,等待监控系统环境中的客户机使用浏览器向其发送访问请求,实现在局域网乃至Internet网上对摄像头的远程控制。 文中把系统设计分为三大部分:系统硬件设计、嵌入式Linux在硬件平台的实现和系统软件设计。硬件设计部分首先提出了整个硬件系统的实现方案,接着详细介绍了S3C2410处理器与存储器、以太网控制器芯片以及USB和串口的接口电路设计;第二部分详细叙述了嵌入式Linux在本系统硬件平台的移植实现及应用程序的开发特点,重点讲述了本系统平台上Linux的引导加载程序Bootloader的设计过程;系统软件部分首先介绍了USB接口摄像头驱动在嵌入式Linux下的实现,重点讲述了Video4Linux下视频采集的实现,接着论述了如何实现图像的JPEG压缩,最后针对基于B/S模式的网络通信系统结构,详细阐述了网络通信的具体实现过程和方法。 最后在办公室局域网通过对系统测试,显示了系统运行结果,实现了利用局域网或Internet网对远程环境进行监控的功能。
上传时间: 2013-07-04
上传用户:lgnf
60年代初,国际上首次将B超诊断仪应用于临床诊断,40多年来B超诊断仪的发展极为迅速。随着数字信号处理及计算机技术的发展,目前国际上先进水平的超声诊断设备几乎每一个环节都包含着数字信号处理的内容,研制全数字化的超声诊断设备已成为发展趋势。 @@ 基于FPGA及嵌入式操作系统的全数字超声诊断系统具有技术含量高、便携的特点,可用数字硬件电路来实现数据量极其庞大的超声信息的实时处理。 @@ 本文从超声诊断原理入手,在对超声诊断系统中的几个关键技术进行分析的基础上,重点研究开发超声诊断系统中数字信号处理部分的两个核心算法。以FPGA芯片为载体,在Quartus Ⅱ平台中采用Verilog HDL语言进行编程并仿真验证,分别实现了数字FIR滤波器及CORDIC坐标变换两个模块的功能。另外,采用Verilog HDL语言对应用于图像显示模块的SPI接口进行了编程设计,编译下载至FPGA中,最终实现了与ARM A8的OMPG3530板之间高速串行数据的传输。 @@ 采用在单片FPGA芯片内实现数字式超声诊断部分核心算法并与高性能ARMA8处理器相配合的数字信号处理解决方案,具有高速度、高精度、高集成度、便携的特点,为全数字化便携超声诊断设备的研制打下了基础。 @@关键词:超声诊断系统;FPGA;数字FIR滤波器;CORDIC算法;SPI总线
上传时间: 2013-07-07
上传用户:hxy200501
随着科技的进步,视频监控系统正在向嵌入式、数字化、网络化方向发展。嵌入式视频监控系统充分利用大规模集成电路和网络的科技成果,实现了体积小巧、性能稳定、通讯便利的监控产品。 本文以S3C2410为核心硬件平台开发了基于嵌入式的远程视频监控系统,并对关键技术进行了论述和研究。首先给出了系统总体软硬件设计方案,针对本系统硬件对vivi进行了修改和移植,对编译和移植Linux内核以及制作YAFFS文件系统也做了深入的研究,重点讨论了在嵌入式Linux操作系统下开发USB接口摄像头驱动程序和利用linux提供的Video4Linux API函数实现视频数据采集,其次采用背景差法实现了对视频图像中运动目标的检测,然后通过MJPEG压缩算法实现了视频数据压缩,接着介绍了在Linux下基于TCP/IP协议的socket编程,实现了视频数据的网络发送。最后着重论述了嵌入式Web服务器的设计,编写了视频监控主界面程序,并实现了基于B/S模式的视频监控系统结构。 本系统采用模块化设计方法,使得设计更加简洁、高效,具有良好的扩展性和易用性,有利于系统升级。另外采用嵌入式的方法,系统成本较低,易于推广使用。
上传时间: 2013-04-24
上传用户:小枫残月
射频识别技术(RFID)是一种通过电磁耦合方式工作的无线识别系统,具有保密性强、无接触式信息传递等特点,目前广泛应用于物流、公共交通、门禁控制等与人们生活密切相关的方方面面。 本论文的目的是开发出一款读卡终端设备,支持IS014443标准中规定的TypeA、Type B两种类型的卡,具有高级扩展功能,也可以在硬件基础上进行增减,以适应不同场合的需要。 读卡器设计中采用嵌入式芯片为处理核心,读卡功能采用射频读卡芯片实现。读卡器终端具有网络接口、USB接口和触摸屏接口。软件上采用移植嵌入式系统并添加任务的模式实现读卡器的各功能。通过对软硬件的调试实现了RYID读卡器原理样机的硬件与软件平台构律。
上传时间: 2013-06-12
上传用户:450976175
北京航空航天大学出版社,深入浅出ARM7--LPC213x214x下册,周立功等编著。本书全面介绍了以LPC213x/LPC214x两个系列ARM芯片为硬件平台的各种应用开发,详细分析了嵌入式实时操作系统μC/OS-II在ARM7上的移植和应用。第101-180页。
上传时间: 2013-06-11
上传用户:tianjinfan
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
1.增加的设备支持: Atmel AT91SAM9Rxx Cirrus Logic CS7401xx-IQZ Luminary Micro LM3S576x, LM3S5752, LM3S5747, LM3S573x, LM3S5662, LM3S5652, LM3S5632, LM3S3759, LM3S3749, and LM3S3739 NXP LPC32XX and LPC2460 STMicroelectronics STR912FAZ4X, STR912FAW4X, STR911FAW4X, STR911FAM4X, STR910FAW32, and STR910FAZ32 2.修改了NXP LPC23XX/24XX的头文件库 3.增加了ST-LINK II的调试支持 4.增加了对Cortex-M3 内核芯片的RTX Event Viewer 的支持 5.增加了MCBSTM32: STM32 FLASH OPTION BYTES PROGRAMMING 6.增加了ULINK2对Cortex-M3的SWV功能的调试 7.增强了使用GNU在MDK下调试M1,M3,ARM7,ARM9的调试功能( Using μVision with CodeSourcery GNU ARM Toolchain.) 8.增加了大量经典开发板例程 Boards目录列表: ├─Embest 深圳市英蓓特公司开发板例程 │ ├─AT91EB40X-40008 │ ├─S3CEB2410 │ ├─ATEBSAM7S │ ├─LPC22EB06-I │ ├─LPCEB2000-A │ ├─LPCEB2000-B │ ├─LPCEB2000-S │ ├─str710 │ ├─str711 │ ├─str730 │ ├─str750 │ ├─STR912 │ ├─STM32V100 │ ├─STM32R100 │ ├─ATEB9200 ├─ADI ADI半导体的芯片例程 │ ├─ADuC702X │ └─ADuC712x ├─Atmel Atmel半导体的芯片例程 │ ├─AT91RM9200-EK │ ├─AT91SAM7A3-EK │ ├─AT91SAM7S-EK │ ├─AT91SAM7SE-EK │ ├─AT91SAM7X-EK │ ├─AT91SAM9260-EK │ ├─AT91SAM9261-EK │ ├─AT91SAM9263-EK ├─Keil Keil公司的开发板例程 │ ├─MCB2100 │ ├─MCB2103 │ ├─MCB2130 │ ├─MCB2140 │ ├─MCB2300 │ ├─MCB2400 │ ├─MCB2900 │ ├─MCBLM3S │ ├─MCBSTM32 │ ├─MCBSTR7 │ ├─MCBSTR730 │ ├─MCBSTR750 │ └─MCBSTR9 ├─Luminary Luminary半导体公司的芯片例程 │ ├─ek-lm3s1968 │ ├─ek-lm3s3748 │ ├─ek-lm3s3768 │ ├─dk-lm3s101 │ ├─dk-lm3s102 │ ├─dk-lm3s301 │ ├─dk-lm3s801 │ ├─dk-lm3s811 │ ├─dk-lm3s815 │ ├─dk-lm3s817 │ ├─dk-lm3s818 │ ├─dk-lm3s828 │ ├─ek-lm3s2965 │ ├─ek-lm3s6965 │ ├─ek-lm3s811 │ └─ek-lm3s8962 ├─NXP NXP半导体公司的芯片例程 │ ├─LH79524 │ ├─LH7A404 │ └─SJA2510 ├─OKI OKI半导体公司的芯片例程 │ ├─ML674000 │ ├─ML67Q4003 │ ├─ML67Q4051 │ ├─ML67Q4061 │ ├─ML67Q5003 │ └─ML69Q6203 ├─Samsung Samsung半导体公司的芯片例程 │ ├─S3C2440 │ ├─S3C44001 │ └─S3F4A0K ├─ST ST半导体公司的芯片例程 │ ├─CQ-STARM2 │ ├─EK-STM32F │ ├─STM32F10X_EVAL │ ├─STR710 │ ├─STR730 │ ├─STR750 │ ├─STR910 │ └─STR9_DONGLE ├─TI TI半导体公司的芯片例程 │ ├─TMS470R1A256 │ └─TMS470R1B1M ├─Winbond Winbond半导体公司的芯片例程 │ └─W90P710 └─ ...
上传时间: 2013-10-13
上传用户:zhangliming420
picocom 是一款linux下的串口调试工具,很想minicom,比minicom精巧的多,编译好后, 我输入 picocom -b 115200 /dev/ttyS0 就可以调试我的arm板了
上传时间: 2014-07-27
上传用户:shizhanincc
将eCos应用到UPS(不间断电源)远程监控管理系统中,设计了以ARM (S3C4510B)为核心的软硬件平台 详细分析了。Cos嵌入式Web服务器及应 用软件设计流程与方法,形成了B/S结构的UPS监控系统,替代了传统的基于 C/S结构的监控系统,更方便的实现对UPS的智能监控与管理。 此文档需要用CAJVIEWER打开。
上传时间: 2014-10-10
上传用户:498732662
STM32 F1系列 MCU ATIUM AD集成库 原理图库 PCB 3D封装库文件,STM32F1XXXXX全系列原理图+PCB封装库文件,共209个器件型号,CSV text has been written to file : STM32 F1.csvLibrary Component Count : 209Name Description----------------------------------------------------------------------------------------------------STM32F100C4T6B STM32 ARM-based 32-bit MCU Value Line with 16 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, TraySTM32F100C4T7B STM32 ARM-based 32-bit MCU Value Line with 16 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +105癈 Temperature, 48-Pin LQFP, TraySTM32F100C6T6B STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, TraySTM32F100C6T6BTR STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, Tape and ReelSTM32F100C6T7B STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +105癈 Temperature, 48-Pin LQFP, TraySTM32F100C8T6B STM32 ARM-based 32-bit MCU Value Line with 64 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, TraySTM32F100C8T6BTR STM32 ARM-based 32-bit MCU Value Line with 64 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, Tape and ReelSTM32F100CBT6B STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 48-Pin LQFP, TraySTM32F100CBT7B STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +105癈 Temperature, 48-Pin LQFP, TraySTM32F100R4H6B STM32 ARM-based 32-bit MCU Value Line with 16 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, TraySTM32F100R4T6B STM32 ARM-based 32-bit MCU Value Line with 16 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100R4T6BTR STM32 ARM-based 32-bit MCU Value Line with 16 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, Tape and ReelSTM32F100R6H6B STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, TraySTM32F100R6T6 STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100R6T6B STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100R6T6BTR STM32 ARM-based 32-bit MCU Value Line with 32 kB Flash, 4 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, Tape and ReelSTM32F100R8H6B STM32 ARM-based 32-bit MCU Value Line with 64 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, TraySTM32F100R8T6B STM32 ARM-based 32-bit MCU Value Line with 64 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100R8T6BTR STM32 ARM-based 32-bit MCU Value Line with 64 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, Tape and ReelSTM32F100RBH6B STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, TraySTM32F100RBH6BTR STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin TFBGA, Tape and ReelSTM32F100RBT6B STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100RBT6BTR STM32 ARM-based 32-bit MCU Value Line with 128 kB Flash, 8 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, Tape and ReelSTM32F100RCT6B STM32 ARM-based 32-bit MCU Value Line with 256 kB Flash, 24 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100RDT6 STM32 ARM-based 32-bit MCU Value Line with 384 kB Flash, 32 kB Internal RAM, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100RDT6B STM32 ARM-based 32-bit MCU Value Line with 384 kB Flash, 32 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100RET6 STM32 ARM-based 32-bit MCU Value Line with 512 kB Flash, 32 kB Internal RAM, -40 to +85癈 Temperature, 64-Pin LQFP, TraySTM32F100RET6B STM32 ARM-based 32-bit MCU Value Line with 512 kB Flash, 32 kB Internal RAM, Internal Code B, -40 to +85癈 Temperature, 64-
上传时间: 2022-04-30
上传用户:jiabin