产品型号:VK2C21A/B/C/D 产品品牌:VINKA/永嘉微/永嘉微电 封装形式:SOP28/24/20/16 裸片:DICE(邦定COB)/COG(邦定玻璃用) 产品年份:新年份 联 系 人:许硕 Q Q:191 888 5898 联系手机:18898582398(信) 原厂直销,工程服务,技术支持,价格最具优势!QT459 VK2C21A/B/C/D概述: VK2C21是一个点阵式存储映射的LCD驱动器,可支持最大80点(20SEGx4COM)或者最大128点(16SEGx8COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,也可通过指令进入省电模式。其高抗干扰,低功耗的特性适用于水电气表以及工控仪表类产品。 特点: ★ 工作电压 2.4-5.5V ★ 内置32 kHz RC振荡器 ★ 偏置电压(BIAS)可配置为1/3、1/4 ★ COM周期(DUTY)可配置为1/4、1/8 ★ 内置显示RAM为20x4位、16x8位 ★ 帧频可配置为80Hz、160Hz ★ 省电模式(通过关显示和关振荡器进入)
标签: VK2C21 VK2C21A VK2C21B VK2C21C VK2C21D LCD抗干扰段码屏驱动 段码屏驱动抗干扰
上传时间: 2022-06-09
上传用户:2937735731
描述了NTC使用B值计算出实际温度与输出的电压之间的关系。
标签: ntc计算
上传时间: 2022-06-15
上传用户:
BC20-TE-B NB-Iot 评估板评估板原厂原理图V1.2。完整对应实物装置。
上传时间: 2022-06-17
上传用户:
ASR M08-B设置软件 V3.2 arduino 2560+ASRM08-B测试程序 arduino UNO+ASRM08-B测试程序语音控制台灯电路图及C51源码(不带校验码) 继电器模块设置。 ASR M08-B是一款语音识别模块。首先对模块添加一些关键字,对着该模块说出关键字,串口会返回三位的数,如果是返回特定的三位数字,还会引起ASR M08-B的相关引脚电平的变化。【测试】①打开“ASR M08-B设置软件 V3.2.exe”。②选择“串口号”、“打开串口”、点选“十六进制显示”。③将USB转串口模块连接到语音识别模块上。接线方法如下:语音模块TXD --> USB模块RXD语音模块RXD --> USB模块TXD语音模块GND --> USB模块GND语音模块3V3 --> USB模块3V3(此端为3.3V电源供电端。)④将模块的开关拨到“A”端,最好再按一次上面的大按钮(按一次即可,为了确保模块工作在正确的模式)。⑤对着模块说“开灯”、“关灯”模块会返回“0B”、“0A”,表示正常(注意:0B对应返回值010,0B对应返回值010,返回是16进制显示的嘛,设置的时候是10进制设置的)。
标签: ASR M08-B
上传时间: 2022-07-06
上传用户:aben
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
本书针对Atmel公司的AVR系列单片机和ImageCraft公司的ICC AVR开发环境,详细地介绍了AT90LS8535的C语言程序设计。全书共有13章,其内容既涉及到了单片机的结构原理、指令系统、内容资源和外部功能扩展,又包含了单片机的编程工具——ICC AVR C编程器的数据类型、控制流、函数和指针等。本书的特点是:深入浅出,从最基本的概念开始,循序渐进地讲解单片机的应用开发;列举了大量实例,使读者能从实际应用中掌握单片机的开发与应用技术。本书适合作为从事单片机开发人员的参考用书。书中先后讲解了C语言基础、AVR单片机基础,并举了一些简单的实例。本书非常适合初学者。 【目录信息】 第1章 单片机系统概述 1. 1 AVR系列单片机的特点 1. 2 AT90系列单片机简介 第2章 AT90LS8535单片机的基础知识 2. 1 AT90LS8535单片机的总体结构 2. 1. 1 AT90LS8535单片机的中央处理器 2. 1. 2 AT90LS8535单片机的存储器组织 2. 1. 3 AT90LS8535单片机的I/O接口 2. 1. 4 AT90LS8535单片机的内部资源 2. 1. 5 AT90LS8535单片机的时钟电路 2. 1. 6 AT90LS8535单片机的系统复位 2. 1. 7 AT90LS8535单片机的节电方式 2. 1. 8 AT90LS8535单片机的芯片引脚 2. 2 AT90LS8535单片机的指令系统 2. 2. 1 汇编指令格式 2. 2. 2 寻址方式 2. 2. 3 伪指令 2. 2. 4 指令类型及数据操作方式 2. 3 应用程序设计 2. 3. 1 程序设计方法 2. 3. 2 应用程序举例 第3章 AT90LS8535单片机的C编程 3. 1 支持高级语言编程的AVR系列单片机 3. 2 AVR的C编译器 3. 3 ICCAVR介绍 3. 3. 1 安装ICCAVR 3. 3. 2 设置ICCAVR 3. 4 用ICCAVR编写应用程序 3. 5 下载程序文件 第4章 数据类型. 运算符和表达式 4. 1 ICCAVR支持的数据类型 4. 2 常量与变量 4. 2. 1 常量 4. 2. 2 变量 4. 3 AT90LS8535的存储空间 4. 4 算术和赋值运算 4. 4. 1 算术运算符和算术表达式 4. 4. 2 赋值运算符和赋值表达式 4. 5 逻辑运算 4. 6 关系运算 4. 7 位操作 4. 7. 1 位逻辑运算 4. 7. 2 移位运算 4. 8 逗号运算 第5章 控制流 5. 1 C语言的结构化程序设计 5. 1. 1 顺序结构 5. 1. 2 选择结构 5. 1. 3 循环结构 5. 2 选择语句 5. 2. 1 if语句 5. 2. 2 switch分支 5. 2. 3 选择语句的嵌套 5. 3 循环语句 5. 3. 1 while语句 5. 3. 2 do…while语句 5. 3. 3 for语句 5. 3. 4 循环语句嵌套 5. 3. 5 break语句和continue语句 第6章 函数 6. 1 函数的定义 6. 1. 1 函数的定义的一般形式 6. 1. 2 函数的参数 6. 1. 3 函数的值 6. 2 函数的调用 6. 2. 1 函数的一般调用 6. 2. 2 函数的递归调用 6. 2. 3 函数的嵌套调用 6. 3 变量的类型及其存储方式 6. 3. 1 局部变量 6. 3. 2 局部变量的存储方式 6. 3. 3 全局变量 6. 3. 4 全局变量的存储方式 6. 4 内部函数和外部函数 6. 4. 1 内部函数 6. 4. 2 外部函数 第7章 指针 7. 1 指针和指针变量 7. 2 指针变量的定义和引用 7. 2. 1 指针变量的定义 7. 2. 2 指针变量的引用 7. 2. 3 指针变量作为函数参数 7. 3 数组与指针 7. 3. 1 指向数组元素的指针变量 7. 3. 2 数组元素的引用 通过指针 7. 3. 3 数组名作为函数参数 7. 3. 4 指向多维数组的元素的指针变量 7. 4 字符串与指针 7. 4. 1 字符串的表示形式 7. 4. 2 字符串指针变量与字符数组的区别 7. 5 函数与指针 7. 5. 1 函数指针变量 7. 5. 2 指针型函数 7. 6 指向指针的指针 7. 7 有关指针数据类型和运算小结 7. 7. 1 有关指针的数据类型的小结 7. 7. 2 指针运算的小结 第8章 结构体和共用体 8. 1 结构体的定义和引用 8. 1. 1 结构体类型变量的定义 8. 1. 2 结构体类型变量的引用 8. 2 结构类型的说明 8. 3 结构体变量的初始化和赋值 8. 3. 1 结构体变量的初始化 8. 3. 2 结构体变量的赋值 8. 4 结构体数组 8. 4. 1 结构体数组的定义 8. 4. 2 结构体数组的初始化 8. 5 指向结构体类型变量的指针 8. 5. 1 指向结构体变量的指针 8. 5. 2 指向结构体数组的指针 8. 5. 3 指向结构体变量的指针做函数参数 8. 6 共用体 8. 6. 1 共用体的定义 8. 6. 2 共用体变量的引用 第9章 A190LS8535的内部资源 9. 1 I/O 口 9. 1. 1 端口A 9. 1. 2 端口B 9. 1. 3 端口C 9. 1. 4 端口D 9. 1. 5 I/O口的编程 9. 2 中断 9. 2. 1 单片机的中断功能 9. 2. 2 AT90LS8535单片机的中断系统 9. 2. 3 1CCAVRC编译器的中断操作 9. 2. 4 中断的编程 9. 3 串行数据通信 9. 3. 1 数据通信基础 9. 3. 2 AT90LS8535的同步串行接口 9. 3. 3 AT90LS8535的异步串行接口 9. 4 定时/计数器 9. 4. 1 定时/计数器的分频器 9. 4. 2 8位定时/计数器0 9. 4. 3 16位定时/计数器1 9. 4. 4 8位定时/计数器2 9. 5 EEPROM 9. 5. 1 与EEPROM有关的寄存器 9. 5. 2 EEPROM读/写操作 9. 5. 3 EEPROM的应用举例 9. 6 模拟量输入接口 9. 6. 1 模数转换器的结构 9. 6. 2 ADC的使用 9. 6. 3 与模数转换器有关的寄存器 9. 6. 4 ADC的噪声消除 9. 6. 5 ADC的应用举例 9. 7 模拟比较器 9. 7. 1 模拟比较器的结构 9. 7. 2 与模拟比较器有关的寄存器 9. 7. 3 模拟比较器的应用举例 第10章 AT90LS8535的人机接口编程 10. 1 键盘接口 10. 1. 1 非矩阵式键盘 10. 1. 2 矩阵式键盘 10. 2 LED显示输出 10. 2. 1 LED的静态显示 10. 2. 2 LED的动态扫描显示 10. 2. 3 动态扫描显示专用芯片MC14489 10. 3 LCD显示输出 10. 3. 1 字符型LCD 10. 3. 2 点阵型LCD 10. 4 ISD2500系列语音芯片的编程 10. 4. 1 ISD2500的片内结构和引脚 10. 4. 2 ISD2500的操作 10. 4. 3 ISD2500和单片机的接口及编程 10. 5 TP-uP微型打印机 10. 5. 1 TP-uP打印机的接口和逻辑时序 10. 5. 2 P-uP打印机的打印命令和字符代码 10. 5. 3 AT90LS8535与TP-uP系列打印机的接口及编程 10. 6 IC卡 10. 6. 1 IC卡读写装置 10. 6. 2 IC卡软件 第11章 AT90LS8535的外围扩展 11. 1 简单I/O扩展芯片 11. 1. 1 用74LS377扩展数据输出接口 11. 1. 2 数据输入接口 11. 2 模拟量输出 11. 2. 1 D/A转换器简介 11. 2. 2 8位数模转换器DAC0832 11. 2. 3 8位数模转换器与单片机的接口及编程 11. 2. 4 12位数模转换器DACl230 11. 2. 5 12位数模转换器与单片机的接口及编程 11. 3 可编程I/O扩展芯片8255A 11. 3. 1 8255A的引脚和内部结构 11. 3. 2 8255A的工作方式 11. 3. 3 8255A的控制字 11. 3. 4 AT90LS8535和8255A的接口 11. 4 带片内RAM的I/O扩展芯片8155 11. 4. 1 8155的引脚和内部结构. 11. 4. 2 8155的I/O口工作方式 11. 4. 3 8155的定时/计数器 11. 4. 4 8155的命令和状态字 11. 4. 5 AT90LS8535与8155的接口及编程 11. 5 定时/计数器芯片8253 11. 5. 1 8253的信号引脚和逻辑结构 11. 5. 2 8253的工作方式 11. 5. 3 8253的控制字 11. 5. 4 AT90LS8535与8253的接口及编程 11. 6 实时时钟芯片DS1302 11. 6. 1 DS1302的引脚和内部结构 11. 6. 2 DS1302的控制方式 11. 6. 3 AT90LS8535与DS1302的接口与编程 11. 7 数字温度传感器DS18B20 11. 7. 1 DSl8B20的引脚和内部结构 11. 7. 2 DS18B20的温度测量 11. 7. 3 AT90LS8535与DS18B20的接口与编程 第12章 AT90LS8535的通信编程 12. 1 串口通信 12. 1. 1 异步串口UART通信 12. 1. 2 同步串口SPI通信 12. 2 I2C总线 12. 2. 1 I2C总线协议 12. 2. 2 采用AT90LS8535的并行I/O口模拟I2C总线 12. 3 CAN总线 12. 3. 1 CAN总线的特点 12. 3. 2 CAN协议的信息格式 12. 3. 3 CAN控制器SJA1000 12. 3. 4 AT90LS8535与SJA1000的接口及编程 12. 4 AT90LS8535单片机与PC的串行通信 12. 4. 1 基于VC 6. 0的PC串口通信 12. 4. 2 应用实例 第13章 系统设计中的程序处理方法 13. 1 数字滤波处理 13. 1. 1 平滑滤波 13. 1. 2 中值滤波 13. 1. 3 程序判断滤波 13. 2 非线性处理 13. 2. 1 查表法 13. 2. 2 线性插值法
上传时间: 2013-11-04
上传用户:元宵汉堡包
AVRPRO烧录器,是针对ATMEL公司的90系列AVR精简指令单片机设计的专用烧录工具该产品只有软件部分,无需硬件支持,仅仅只需4根线,将计算机并口和用户板相连,这都是因为采用了ISP串行编程。软件支持擦、写、校验、写保护位以及批处理。使用极其方便。 该产品的最大优点有: 1. 使用串行编程,达到了在线编程,节省了购买万用编程器和适配器的费用(万用编程器需2千元左右,适配器需3、4百元,并各个芯片和封装需不同适配器)。用户板也无需在焊插座(带来可靠性下降),而且为软件升级带来了极大的便利。 2. 使用方便,无需硬件,给现场调试带来了极大的便利,不用再带笨重的编程器,而且为AVR单片机的使用上带来了方便。 3. 价格实在太便宜,为您省了不少钱。 硬件使用说明: 并口和用户板连接说明 并口2脚<―――>用户板单片机MOSI 并口3脚<―――>用户板单片机SCK 并口12脚<―――>用户板单片机MISO 并口25脚<―――>用户板单片机GND 软件使用说明: 软件名是AVRPRO.EXE,支持DOS,WIN9x,支持.hex(intel)格式,可直接运行AVRPRO.EXE,也可以键入AVRPRO.EXE 目录\文件名.HEX,直接运行时可进入菜单,可选择擦、写、校验、写保护位以及批处理。键入文件名时,软件运行批处理,自动完成擦、写、校验、写保护位
上传时间: 2014-12-27
上传用户:zhang97080564
ISP下载线 mega16开发板 联系 杨迪 15336417867 0531-55508458 QQ:1347978253 http://www.easyele.cn Mega16开发板 ISP下载线是AVR学习开发群体的生产工具。以mega16为核心,集成仿真器和ISP编程器功能与一体。不用再买ISP编程器,不用再买仿真器,就可以开始学习强大的AVR单片机。Mega16开发板 ISP下载线用户只需要再拥有一台计算机即可进行系统方便的学习。相对于价格,我们更关注Mega16开发板 ISP下载线的品质和服务。精致的说明书:让您事半功倍,深入了解单片机电路的设计,找到好工作没问题,详细介绍电路设计和如果学习开发等内容,即使不买板子也值得你收藏。说明书下载:EasyAVR-M16-SK-3in1.pdf Mega16开发板 ISP下载线的特点:1.集成常用资源:LED、按键、七段数码管、RS232、LCD接口等 2.信号调理电路,输入0~10V,轨至轨信号调理 3.板载资源丰富。Mega16开发板 ISP下载线的最突出的地方是集成了AVR JTAG ICE仿真器和AVR ISP编程器。同时Mega16开发板 ISP下载线集成常用资源:LED、按键、七段数码管、RS232、LCD接口,信号调理电路,输入0~10V,轨至轨信号调理。其货号:EasyAVR-M16。单价298/套。 Mega16开发板 ISP下载线的部分实验例程: 模数转换(AD): 单通道AD采集,七段数码管显示结果 双通道分时采集,利用串口将结果传至PC 蜂鸣器: 按键检测,蜂鸣器鸣叫 PCF8563定时,蜂鸣器1s鸣叫一次 键盘: 按键检测,蜂鸣器鸣叫 按键检测,LED显示 LED: 跑马灯程序 按键检测,LED显示等等 Mega16开发板 ISP下载线详细的资料,让您学习起来更加得心应手,专业公司运作,解决后顾之忧! 开发板系列我公司还出售: mega128四合一开发板 498/套 ATMEL 原装 ATSTK500开发板 750/块 ATmega8 开发板 学习板 Mini Mega8 核心板 87/块 ATmega48 开发板 学习板 Mini Mega48 核心板 84/块 ATMega88 开发板 学习板 mini mega88 核心板 91/块 ATmega16 开发板 AVR学习板 Mega16 核心板 106/块 ATmega32 开发板 学习板 Mini M32 核心板 116/块 ATmega128 开发板 学习板 Mini M128 核心板 147/块 ATmega64 开发板 学习板 Mini M64 核心板 144/块
上传时间: 2014-12-27
上传用户:invtnewer
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
介绍了基于51单片机的网络连接控制器的软硬件设计方案,主要采用Atmel公司的8 b单片机AT89C51作为核心处理器,采用RealTek公司的RTL8O19AS芯片接入以太网。同时讨论了精简的TCP/IP协议栈的分层次实现,实现了可靠的UDP数据通信。
上传时间: 2013-11-22
上传用户:alex wang