嵌入式学习56-ARM5(linux驱动启动程序)

时间:2024-04-21 10:06:17

知识零碎:                                                                                                                                     

 bootm:                                                         启动内核同时给内核传参                                       setenv:                                                          添加环境变量 

setenv serverip    设置服务器IP                   saveenv   保存            uImage    linux内核程序

 

 chmod 使用权限 : 所有使用者 

 minicom指令:                                                       Ctrl+A+Q  退出                                                ?    查看minicom指令 

        md    0x30000000  内存查看命令                                  md.b  0x30000000                                            md和md.b内存产看区别(第一行数据)           

nb.b  0x30000000    内存修改(不自增)

mm.b  0x30000000         地址自增修改

                                                          

boot  loader  裸机程序                                                                                                                                                      作用: 一个引导程序,对硬件设置,调试

字处理软件   <-  office                                                                                                                         bootloder     <-   u-boot

u-boot:                                                                                                                                                          1. nor flash  启动      --------------tftp协议                                                                                            2. nand  flash 启动         

32位系统  2^32 = 4GB               寻址空间 4GB       使用空间  1GB

(左)Nor flash启动:                                                                                                                        1.从ROM地址0x00000000处 ,把uboot烧录到Nor flash                                                                   2.  uboot作为引导程序,引导cpu到Nor flash中运行                                                                

(右)Nand  flash启动: 从IRAM地址0x00000000处启动

IRAM大小为4KB,        SRAM(垫脚石)                                                          (可能会问)

Nand   flash 启动

1.启动时,uboot会将ROM和IRAM初始化0x00000000 

把uboot烧录进Nand flash,把Nand flash的uboot拷贝到IRAM中                                                       uboot作为引导程序,引导cpu到IRAM中运行,此时运行的就是uboot

 2.uboot初始化掉SDRAM,uboot将Nand拷贝到SDRAM(64MB)中(避免在IRAM中放不下)

  3.将pc指针挪到SDRAM中,在SDRAM中运行uboot

启动流程  ubuntu搭建TFTP服务器_ubuntu tftp-****博客     

              sudo service  tftpd-hpa  start                                ?

              1.重复开关ARM2440,出现倒计时页面,回车                                                                                  2.printenv  (打印出所有环境变量)     

              3.  setenv serverip '192.168.1.171'                 (设置服务器ip)                                                                                            saveenv                                                                                                        4.ipaddr(setenv ipaddr 192.168.1.200 saveenv)     (板子ip自己的设置或者自动生成)

              5. ping 192.168.1.171                                                                                                                           sudo apt-get install tftp-hpa tftpd-hpa  (安装tftp-hpa和tftpd-hpa配置文件)                                    chmod  0777 uImage -R  (递归所有文件)                      

               6. tftp  0x30008000 uImage                                                                                                               7. bootm 0x30008000