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
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
这个是在Keil for arm环境下,微型嵌入操作系统RTX的应用例子
上传时间: 2013-12-27
上传用户:fxf126@126.com
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
|- 我的虚拟机和ubuntu下载 - 0 B|- 腾讯课堂公开课 - 0 B|- 工具软件 - 0 B|- X210光盘资料 - 0 B|- 4.C语言专题精讲篇 - 0 B|- 2.uboot和linux内核移植 - 0 B|- 1.ARM裸机全集 - 0 B|- 0.基础预科 - 0 B|- 专用播放器第一代-已不用,请下载第二代.rar - 18.10 MB|- 专用播放器-《朱老师物联网大讲堂》收费视频.rar - 18.10 MB|- 朱老师物联网大讲堂高级课程专用播放器-第二代.rar - 28.10 MB
标签: 物联网
上传时间: 2022-06-06
上传用户:
|- 软件 - 0 B|- 第5阶段 IOT-ARM体系结构与编程 - 0 B|- 第4阶段 项目实战制作 - 0 B|- 第3阶段 物联网终端裸机开发试验 - 0 B|- 第2阶段 物联网终端开发理论基础 - 0 B|- 第1阶段 学前准备 - 0 B
标签: 物联网
上传时间: 2022-06-06
上传用户:
基于LabVIEW的ARM Cortex-M3嵌入式开发宝典电子书内容简介第 1 篇 软件篇1.1 LabVIEW Embedded Module for ARM Microcontrollers 模块介绍1.2 Keil RealView MDK 软件介绍1.3 Keil RTX 实时操作系统介绍1.4 LabVIEW ARM Module 软件架构1.5 LabVIEW ARM Module、RealView MDK、实验平台驱动软件安装1.6 STM32 实验范例查找与 USB JLink-OB 驱动加载第 2 篇 硬件篇2.1 ARM Cortex-M3 内核简介2.2 实验平台介绍2.2.1 STM32 Starter Board(学习板)介绍2.2.2 STM32 Core Board(核心板)介绍2.2.3 STM32 DAQ Board(数采板)介绍2.3 实验平台资源说明2.3.1 STM32 Starter Board 资源简介2.3.2 STM32 Core Board 资源简介2.3.3 STM32 DAQ Board 资源简介2.4 My_ARM 实验平台总结与展望第 3 篇 基础模块篇(附原理图)3.1.1 GPIO 介绍3.1.2 GPIO 工作原理3.1.3 GPIO 驱动实现3.1.4 GPIO 两种驱动方式比较3.1.5 GPIO 总结3.2 ADC/DAC3.2.1 ADC 介绍3.2.2 ADC 驱动实现3.2.3 DAC 介绍3.2.4 DAC 驱动实现3.3 中断(60 线)3.3.1 外部中断(19 线)3.3.1.1 外部 I/O 中断(GPIO:16 线)3.3.1.2 外部特定中断(PVD、RTC、USB:3 线)3.3.2 外部中断的驱动实现3.3.3 定时器中断(TIM2~TIM5、TIM6、TIM7、TIM1、TIM8)3.3.3.1 基本定时器中断3.3.3.2 通用定时器中断3.3.3.3 高级定时器中断3.3.4 定时器中断驱动实现3.3.4.1 更新中断驱动实现3.3.4.2 输入测量驱动实现3.3.4.3 编码器驱动实现3.4 PWM 生成3.4.1 PWM 原理、应用3.4.2 PWM 驱动实现3.4.3 PWM 设置技巧3.5 看门狗3.5.1 独立看门狗(IWDG)介绍3.5.2 独立看门狗驱动实现3.5.3 窗口看门狗(WWDG)介绍3.5.4 窗口看门狗驱动实现3.6 TFTLCD 显示、触摸屏操作、OLED 显示3.6.1 TFTLCD 工作原理3.6.2 TFTLCD 显示驱动实现3.6.3 触摸屏工作原理3.6.4 触摸屏驱动实现3.6.5 OLED 工作原理3.6.6 OLED 驱动实现.............
上传时间: 2022-07-17
上传用户:
本文的目的是把嵌入式技术与计算机网络技术相结合,构造一个性能稳定且具有较强处理能力的数字化远程视频监控系统。该监控系统以嵌入式Linux系统平台作为服务器端,服务器程序在其上以后台方式运行,等待监控系统环境中的客户机使用浏览器向其发送访问请求,实现在局域网乃至Internet网上对摄像头的远程控制。文中把系统设计分为三大部分:系统硬件设计、嵌入式Linux在硬件平台的实现和系统软件设计。硬件设计部分首先提出了整个硬件系统的实现方案,接着详细介绍了S3C2410处理器与存储器、以太网控制器芯片以及USB和串口的接口电路设计;第二部分详细叙述了嵌入式Linux在本系统硬件平台的移植实现及应用程序的开发特点,重点讲述了本系统平台上Linux的引导加载程序Bootloader的设计过程;系统软件部分首先介绍了USB接口摄像头驱动在嵌入式Linux 下的实现,重点讲述了Video4Linux下视频采集的实现,接着论述了如何实现图像的JPEG压缩,最后针对基于B/S模式的网络通信系统结构,详细阐述了网络通信的具体实现过程和方法。
上传时间: 2022-07-24
上传用户:
eeworm.com VIP专区 单片机源码系列 48资源包含以下内容:1. 基于AVR的PCB板雕刻机的设计.zip2. SBC2440-III单板机.rar3. 基于8098单片机的SPWM变频调速系统.zip4. Keil C51库函数参考.zip5. 基于云计算的MCU开发.zip6. 基于单片机系统的(24,16)循环码编码、译码方案.zip7. C8051F020.pdf8. MiniSTM32开发板-定时器中断实验教程.zip9. 基于89C52的二极管特性测试器的设计.zip10. 基于HITAG读写芯片HTRC110的读写设备设计.zip11. Freescale MQX实时操作系统用户手册.zip12. 基于MSP430单片机的智能水位计设计.zip13. MAXX9257 MAX9258芯片可编程SerDes持续时间计算.pdf14. Freescale 系列单片机常用模块与综合系统设计.zip15. 基于AVR单片机的闭环控制系统.zip16. MICROTUNE推出高性能、低成本、超小型接收器芯片.rar17. 实时单片机通讯网络中的内存管理.zip18. Mini2440启动代码详解.zip19. 单片直接驱动数码管的计数器程序.zip20. 利用Virtex-6控制器提升DDR SDRAM的效率.zip21. Star-Hspice特征与应用.zip22. AVR单片机C语言实例书籍集合.zip23. 基于单片机和PSD的数制化电源.zip24. 基于PIC16F877A的混沌信号发生器的设计.zip25. 基于单片机的旋转编码器鉴相方法.zip26. CEPARK-AVR单片机教程LCD12232液晶显示实验.zip27. DS34S132(TDMoP)IC与其它TDMoP器件的互操作.pdf28. PIC单片机应用常见问答.rar29. 基于AVR的SD卡数据导出接口设计.zip30. PICmicro中档单片机系列参考手册(中文资料).rar31. 常用PIC系列单片机速查表.rar32. 基于PIC18F1320微控制器的信号采集系统.rar33. Microchip PIC系列单片机RS232通讯应用.rar34. 基于MT8880的一键拨号电话系统设计.rar35. Atmel AT89C系列单片机电路板设计指南.rar36. 基于单片机的颜色自适应识别电路.rar37. PIC单片机应用资料_很好的PIC单片机学习资料.rar38. 基于瑞萨电子微控制器的温度控制系统设计.rar39. 51单片机的靶机自动控制系统.rar40. 基于MSP430F1611单片机的音频信号分析仪设计.rar41. 基于MAX7219的LED数码显示驱动电路设计.rar42. ARM处理器的可定制MCU处理DSP算法.rar43. Broadcom推出全球第一个802.11n单芯片解决方案.rar44. 51单片机增量式PID控制算法.rar45. 基于PIC16C71的数字水温配制阀的设计.rar46. libxml编译教程.rar47. PROG430专业MSP430单片机编程器(USB)使用说明书.pdf48. 单片机开发高手之路.rar49. 单片机几种软件滤波程序示例.rar50. AVR常用库函数介绍.rar51. 基于AT89S52单片机的计算器设计.rar52. 单片机C语言控制电机星三角自动起动.rar53. 实用单片机系统MS3.21程序分析.rar54. 单片机C语言中LCD菜单的方法实现.rar55. PICkit单片机编程器用户指南.rar56. 单片机C语言编程中多位乘法运算问题探讨.rar57. 单片机解码红外遥控器.rar58. 高性能、低价格、支持JTAG仿真的ATMEGA16单片机.rar59. AVR单片机BASIC编程及开发.rar60. 单片机输出控制电路的制作.rar61. ARM7与MSP430单片机的区别.rar62. 基于单片机的数字化B超键盘设计.rar63. STC89C5X单片机“看门狗”原理、详细说明和演示程序.rar64. PROTEUS 51单片机的电路仿真方法.rar65. 通用1553B总线的信息监控系统.rar66. UC/OS-II系统在C8051F120单片机上的移植过程.doc67. 单片机综合设计原理下载.rar68. 单片机控制的铅酸蓄电池充电电源.rar69. 单片机通信系统中CRC算法与硬件环境编程的实现.rar70. ISP单片机实验板学习.rar71. 基于CH341A的USB串口通讯设计.rar72. 51单片机C语言实例浅析.rar73. 基于TLC1549的阀门开度仪设计.rar74. PIC单片机定时器模块应用.rar75. S7-300和M7-300可编程序控制器参考手册.rar76. 51端口的结构及工作原理.rar77. 反激式开关电源电子数据表格.rar78. 51单片机实现的RS485通讯程序.rar79. 搭建理想的手机芯片平台.pdf80. 单片机双工通信的校验方式.rar81. PIC单片机的RS232通讯程序.rar82. AVR单片机与串行AD的SPI接口设计.rar83. Delphi串口通信编程教程.rar84. 凌阳单片机开发资料.rar85. 用多处理器系统级芯片解决手机的多媒体任务需求.pdf86. 铁氧体PQ芯产品系列扩展.pdf87. DK4.1P-多功能数字卡拉OK处理器.pdf88. 飞思卡尔MC9S08AW60 最小系统设计与实现.rar89. 透过专利看微处理器的技术发展.pdf90. MC68HC08系列单片机原理与应用.rar91. C8051F单片机介绍.pdf92. 基于单片机控制的智能微波信号源发生器.rar93. 新一代超低功耗16位单片机TI MSP430系列.pdf94. 基于单片机的存储设备转储器.rar95. 芯片系统架构技术及开发平台研究之推动.pdf96. 基于C8051F020的自动测控LED节能照明系统.rar97. 基于单片机的新型节能日光灯系统设计.rar98. 单片微机系统测控技术设计集合.rar99. 基于PIC16C73的电子束焊机电视监视系统.rar100. 电子工程师基本知识结构.rar
标签: 电子技术
上传时间: 2013-07-21
上传用户:eeworm