SylixOS龙芯1C适配总结

1.龙芯1C简介

1.1龙芯1C简介

      龙芯 1C300(以下简称 1C)芯片是基于 LS232 处理器核的高性价比单芯片系统,可应用于指纹生物识别、物联传感等领域。1C 包含浮点处理单元,可以有效增强系统浮点数据处理能力。支持 8-bit SLC NAND 或 MLC NAND FLASH,提供高容量的存储扩展接口。

      1C 为开发者提供了丰富的外设接口及片上模块,包括 Camera 控制器, USB OTG 2.0 及 USB HOST 2.0 接口, AC97/I2S 控制器, LCD 控制器, ADC 控制器,高速 SPI 接口,全功能 UART 接口等,提供足够的计算能力和多应用的连接能力。片上集成 RTC 功能,可用于实时显示时间。

 

1.2PMON简介

      PMON是一个兼有BIOS和BootLoader部分功能的开放源码软件,多用于嵌入式系统。与BIOS相比功能不足,与常见的BootLoader相比,功能要丰富的多。基于龙芯的系统采用PMON 作为类BIOS 兼BootLoader,并做了很多完善工作。

 

1.3龙芯1C主要功能

处理器核

  • 单核心 LS232, MIPS32 指令集兼容,主频 300MHZ

  • 支持高效双发射(一个时钟节拍执行两条指令)技术

  • 支持寄存器重命名、动态调度、转移预测等乱序发射、乱序执行技术

  • 五级流水线(取指、译码、发射、执行并写回、提交)微体系结构16KB 数据 CACHE 和 16KB 指令 CACHE

  • 集成 64 位浮点处理部件,支持全流水的 64 位浮点加法和浮点乘法运算,硬件实现浮点除法运算

 

主要功能

  • SDRAM 控制器

  • SRAM/NOR FLASH 控制器

  • NAND 控制器

  • 时钟发生器

  • I2S 控制器

  • AC97 控制器

  • LCD 控制器

  • Camera 接口

  • MAC 控制器

  • USB2.0 控制器

  • SPI 控制器

  • I2C 控制器

  • UART 控制器

  • GPIO(最多支持105个GPIO)

  • PWM 控制器

  • RTC(精确到0.1秒)

  • CAN 控制器

  • SDIO 控制器

  • ADC 控制器

 

2.龙芯1C开发环境搭建

2.1硬件开发环境搭建

  • 将智龙开发板的串口与电脑串口连接好

  • 用网线把智龙开发板和PC机连接起来(可以通过路由器和交换机)

  • 给智龙开发板通电

 

    串口引脚如图 2-1所示,三个脚从左到右分别是:TX2、RX2、GND

图 2-1串口引脚

      搭建好后如图 2-2所示:

图 2-2 接线图

 

2.2烧写BSP程序

2.2.1通过TFTP更新BSP

      PMON中内置TFTP协议,据此可以采用TFTP对PMON进行更新。采用TFTP更新方式,首先需要宿主机存在TFTP服务端软件。

      1.首先配置PMON的IP地址如图 2-3所示:

      指令:set ifconfig syn0:192.168.2.204

图 2-3配置PMON的IP地址

      重启后,能ping通宿主机ip地址即可,如图 2-4所示:

      指令:ping 192.168.2.180

图 2-4测试网络是否通畅

 

      2.在宿主机上启动Tftpd32程序,如图 2-5所示:

图 2-5打开宿主机的Tftpd32程序

 

      3.将需要烧写的文件存放到Tftpd32指定的目录下,如图 2-6所示:

图 2-6 Tftpd32目录

      4.擦除NandFlash

      如果不擦除,可能导致文件系统挂载不正确。

      指令如下:

      mtd_erase /dev/mtd0    

      mtd_erase /dev/mtd1

      mtd_erase /dev/mtd2

 

      执行效果如图 2-7所示:

图 2-7擦除NandFlash

 

      5.将程序烧写到NandFlash中,如图 2-8所示:

      指令:devcp tftp://192.168.2.180/bspls1c.bin /dev/mtd0

图 2-8将bsp烧录到mtd0中

 

      6.设置每次从/dev/mtd0加载,并重启,如图 2-9所示:

      指令:set al "-r -o80200000 /dev/mtd0;flush -di;g -e 80200000"

图 2-9配置从mtd0加载并启动程序

    

      7.此时,正常启动。启动后的效果如图 2-10所示:

图 2-10启动后的效果

 

2.3烧写PMON程序

      1.准备烧写工具

      烧写工具主要分为硬件和软件。硬件为基于CH341A芯片的USB烧写器。CH341A芯片如下图 2-11所示,此芯片经常用于烧写程序、串口数据转换等环境中。

图 2-11烧写工具

 

 

 

 

      2.安装驱动

      驱动主要是USB转TTL的驱动和编程器芯片的驱动。安装驱动的时候记得将烧写器插到电脑上。如图 2-12所示:

图 2-12驱动程序

 

      点击安装即可安装CH341A的驱动。如图 2-13所示:

图 2-13安装驱动

 

      3.将SPI Flash芯片拔下来插到烧写器上(注意避免损伤引脚)。如图 2-14所示:

图 2-14将SPI Flash拆下并装到烧写器上

 

      4.将烧写器插到电脑上。如图 2-15所示:

图 2-15将烧写器连接到电脑

 

      5.按软件检测按钮检测不到或者型号不一致就手动选择你的型号,显示检测到芯片W25X40,如图 2-16所示:

图 2-16检测到SPI Flash型号为W25X40

 

      6.擦除SPI Flash芯片内的数据。

      点击"擦除"。芯片完成数据清除后,点击"读取",你会发现芯片内的数据全是"FF"。如图 2-17所示:

图 2-17擦除SPI Flash

      7.烧写bin文件

      点击"打开",选择gzrom.bin文件。最后点击"自动",PMON就会被烧写到SPI Flash中。如图 2-18所示:

图 2-18加载PMON文件

 

      烧写完成后,将SPI Flash装回,上电后顺利进入系统,并且网卡附近的LED也亮了。

 

3进入SylixOS后的环境配置

3.1网络配置

      SylixOS启动时会读取ifparam.ini文件中的网络配置信息。关于ifparam.ini更多详细信息可参考《SylixOS设备IP的设置》。配置后,如图 3-1所示:

 

图 3-1网络配置

 

 

3.2部署

      需要部署的文件如图 3-2所示:

图 3-2部署文件

 

    4.LED测试

      控制效果:LED1闪烁,效果如图 4-1所示:

图 4-1 LED灯测试

 

    5.RTC测试

      测试效果如图 5-1所示:

图 5-1 RTC测试

    6.SPI Flash测试

      首先加载驱动模块,加载后如图 6-1所示:

图 6-1加载SPI Flash驱动

      加载之后,就可以读写SPI Flash了,效果如图 6-2所示:

图 6-2SPI Flash读写测试

 

7.参考资料

博客:

<ahref=""http://www.openloongson.org/forum.php?mod=viewthread&tid=146">http://www.openloongson.org/forum.php?mod=viewthread&tid=146

文档:

      《1c300_user_manual_v1.4_draft.pdf》

      《1C开发板用户手册V1.3.pdf》

      《SylixOS设备IP的设置.doc》

 

转载于:https://my.oschina.net/u/3690543/blog/1539762

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值