AM335x这款处理器,TI官方有针对其开发对应的裸机程序,由于u-boot和kernel本质还是对寄存器和外设的操作,所以打算简单分析下自带的裸机程序,大致了解下AM335x的工作机制,这样以后开发调试u-boot和kernel会顺手很多,这里打算对裸机加载uart程序进行完整分析,因为其涉及到AM335x多方面,包括:时钟、中断、内存分布等等,这一篇会首先简单介绍下怎么使用AM335x这个裸机程序,以SD卡启动、uart程序为例。
1.安装编译器
下载arm-2009q1-161-arm-none-eabi.bin,然后运行./arm-2009q1-161-arm-none-eabi.bin -i console,如果安装过程中出错,请尝试下面链接操作https://developer.ridgerun.com/wiki/index.php/Code_Sourcery_ARM_toolchain_2009q1-203,按照操作步骤来即可
2.bootloader的编译
cd build/armv7a/gcc/am335x/sbc8600/bootloader
make clean ; make BOOT=MMCSD
编译完将产生boot_ti.bin,将其重命名为MLO后复制到SD卡
3.app的编译
cd build/armv7a/gcc/am335x/sbc8600/uart
make clean ; make
编译完将产生uart.bin,将其重命名为app后复制到SD卡
4.启动单板
将SD卡查到单板,选择启动方式为SD卡,然后看到打印
这里只是以uart为例,其他的各个程序,只需要按照第三步编译app的方式,然后复制到SD卡即可