新唐nuc980学习笔记一开发入门介绍

nuc980是新唐的一款arm9微处理器,这个芯片具有几个不同型号,我这里使用的是nuc980DK61Y,这个芯片内部包含了64M字节的DRM,处理器能到300MHZ,能从 norflash nandflash sd卡 usb启动,详细可以参考官网的资料:

  1. TRM_NUC980_Series_EN_Rev1.01 数据手册非常详细的介绍各种外设
  2. NUC980 NuWriter User Manual CHT 讲解nuc980的程序烧写与启动流程
  3. NUC980 U-Boot v2016_11 User Manual CHT uboot的编译以及修改启动设备
  4. NUC980 Linux 4.4 BSP User Manual CHT linux编译以及配置说明
  5. NUC980 Programming Guide CHT 编程指南相当于数据手册的简介

        nuc980启动先执行内部rom的引导程序,它会根据设定的 boot引脚到相应设备读取程序到内存相应地址去执行,在NUC980 NuWriter User Manual CHT这个文档中有详细说明。

        可以从 gitee 搜索新唐开源 nuc980代码,使用 git clone 获取 uboot linux buildroot,使用以下方法编译系统相关代码:

    1.nuc980的uboot从gitee下载后需要按照NUC980_Linux-4.4_BSP_v1.03.000/Documents/
文件夹里面的NUC980 U-Boot v2016_11 User Manual CHT.pdf进行修改,nuc980_defconfig 这个配置是不能从spi flash启动的,需要进行一定的修改,有配置的修改和代码的修改,默认是支持nandflash的代码。
    修改后使用:
    make distclean
    make nuc980_defconfig
    make
    编译即可使用
    
    2.关于根文件系统最好从gitee克隆后使用 nuvoton_nuc980_defconfig 这个配置编译,编译在output文件夹有一个rootfs.tar,复制到跟内核代码的上个目录,同一目录建立的rootfs目录里面使用tar解压到这个目录:
    sudo tar -xvf rootfs.tar
    sudo rm rootfs.tar
    cd ..
    sudo chmod 777 -R ./rootfs/
    注意:使用特权级别操作rootfs
    
    3.nuc980的linux最好从gitee使用git clone 克隆,然后可以使用nuc980_defconfig这个配置编译既可以使用,在编译之前
需要内核源码的上个目录有一个    image文件夹      和    rootfs根文件系统 。使用命令编译:
    make distclean
    make nuc980_defconfig
    make
    在目录image里面就有一个980uimage就是可以使用uboot启动的内核文件
    
    4.烧录内核一般在windows使用 NuWrtier.exe usb方式连接开发板,注意板子拨码和安装驱动, 烧写uboot和内核把uboot内核使用Loader方式烧录,软件中有默认位置,(NUC980 NuWriter User Manual CHT.pdf  这个文档有关于烧录详细说明)内核使用Data方式烧录,内核烧录在 0x200000 也就是 norflash 2M 这个位置,烧录完成之后拨码,复位启动板子使用命令启动:
    sf probe 0 50000000
    sf read 0x7fc0 0x200000 0xa00000
    bootm 0x7fc0
    至此内核启动了,如果要增加linux启动时执行命令,把命令写在根文件系统 etc/init.d/rcS 这个文件里面的最后几行即可    shell 的 wait 可以等待命令顺序执行,等待命令返回,再执行新命令。
    
    5.烧录loader时有一个 image execute address 这个窗口填写的执行地址,也是代码开始存放到dram的地址NUC980 NuWriter User Manual CHT.pdf 这个文档有详细说明。
    
    烧写完成之后连接 uart0 ,上位机使用调试助手MobaXterm设置 115200 波特率 ,输入uboot命令把 uImage 读取到内存 0x7fc0 这个位置然后启动内核可以与linux内核进行交互了。

这里需要注意:

  1. 默认配置不含有 nfs 需要配置内核包含nfs客户端,
  2. 网卡可能没有打开需要使用 ifconfig eth0 up 打开网卡
  3. 挂载nfs文件系统使用 mount -t nfs 192.168.199.165:/nfsroot /mnt/nfsroot -o nolock
  4. 烧录程序时注意boot拨码是否正常,连接NuWriter时需要拨码到usb启动
  5. 开发板和串口不是使用同一供电时最好跟串口的地连接起来

        本文为nuc980学习的开始,后续会添加裸机开发,uboot分析, linux内核分析相关文章。在进行开发之前,仔细查阅官方的相关文档再使用开发板,不要一来就直接开发,这样效率会很低,在开发中遇到的问题基本都在文档中有详细说明。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值