认识RPi

一、      实验目的和要求

1.    了解嵌入式板卡一般情况;

2.    熟悉pdDuino的供电等接线方式;

3.    复习Linux启动过程(操作系统课);

4.    复习通过Linux获得硬件数据(操作系统课);

5.    熟练掌握串口在PC上的使用;

6.    熟练掌握Linux的以太网和WiFi配置;

7.    熟练掌握Linux的SSH配置;

8.    熟练掌握PC上的SSH软件。

9.    掌握嵌入式板卡和PC建立文件共享的方式;

10.  寻找和安装交叉编译环境,理解交叉编译;

11.  熟悉嵌入式板卡的Linux下的编程环境;

12.  了解远程访问嵌入式板卡图形桌面的方式。

 

二、      实验内容和原理

1.    在PC上安装好USB串口驱动和串口终端软件;

2.    按照图纸要求,将USB串口线与pcDuino连接好,并连接好以太网(如果打算采用WiFi,可不连接以太 网)。如有条件,接上HDMI线和HDMI显示器;

3.    给pcDuino上电,记录启动过程的输出;

4.    从终端登陆pcDuino的Linux,配置网络和/或WiFi,从pcDuino和PC两端证明网络已连接;

5.    配置pcDuino的SSH,可尝试采用各种不同的认证方式

6.    从PC通过SSH登陆pcDuino;

7.    看到多个不同端口的登陆(本机键盘/屏幕、串口和SSH),并运用Linux的write来互相通信。

8.    配置嵌入式板卡上的SAMBA客户端,使它能访问PC上共享的目录;

9.    尝试各种与嵌入式板卡传递文件的方式并做比较:

10.  通过SAMBA共享;

11.  通过NFS共享(选做);

12.  通过sftp传递;

13.  通过串口XModem协议传递;

14.  通过Dropbox共享(选做)。

15.  选择和安装PC上的交叉编译环境;

16.  交叉编译C语言的浮点运算程序到pcDuino上去运行,证明所编译的程序是ARM的;

17.  尝试嵌入式板卡上的三个语言的开发环境:C/C++、Python和Java;

18.  尝试一种从PC远程访问嵌入式板卡图形桌面的方式:x-window(通过SSH)、RDP或VNC。

 

 

 

 

 

 

 

 

 

三、      实验过程和数据记录

1.    安装USB串口欲动和串口终端软件

a.    实验使用的USb串口线芯片为PL2303,从官网下载Mac对应的驱动。

b.    安装串口程序minicom,使用命令brew install minicom安装,minicom –s命令打开串口程序

Figure 1 minicom启动界面

2.    画出你所实际实施的连接示意图;

                   

Figure 2 树莓派通过串口进行连接

3.    给出实际拍摄的板卡连接照片;

Figure 3 板卡连接照片

4.    给出所用的器材的列表;

a.    RaspberryPi B+

b.    MacOS

c.    DVI显示器

d.    无线路由器一台

e.    Micro-USB线

f.     USB-TTL串口线

g.    HDMI-DVI连接线

h.    USB键盘

i.     5V电源(充电宝)

5.    给出拷贝得到的树莓派启动时的输出文字,并逐行解释;

Uncompressing Linux... done, booting the kernel. # 解压内核并且启动树莓派

[    0.000000] Booting Linux on physical CPU 0xf00

# 树莓派启动CPU

[    0.000000] Initializing cgroup subsys cpu

[    0.000000] Initializing cgroup subsys cpuacct

# 初始化cgroups子系统

[    0.000000] Linux version 3.18.7-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.8.3 20140303 (prerelease) (crosstool-NG linaro-1.13.1+bzr2650 - Linaro GCC 2014.03) ) #755 SMP PREEMPT Thu Feb 12 17:20:48 GMT 2015

# Linux内核版本号,以及交叉编译的访问,用户名和工具链等信息

[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d

# CPU型号:ARMv7

[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

# 指令和cache类型

[    0.000000] Machine model: Raspberry Pi 2 Model B

# 树莓派型号:2B

[    0.000000] cma: Reserved 8 MiB at 0x3a800000

[    0.000000] Memory policy: Data cache writealloc

# 数据cache策略为fetch on write

[    0.000000] [bcm2709_smp_init_cpus] enter (8620->f3003010)

[    0.000000] [bcm2709_smp_init_cpus] ncores=4

# CPU4

[    0.000000] PERCPU: Embedded 11 pages/cpu @ba05d000 s12864 r8192 d24000 u45056

[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 239776

[    0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=592 bcm2708_fb.fbheight=448 bcm2709.boardrev=0xa21041 bcm2709.serial=0x3951248f smsc95xx.macaddr=B8:27:EB:51:24:8F bcm2708_fb.fbswap=1 bcm2709.disk_led_gpio=47 bcm2709.disk_led_active_low=0 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

# 内核启动的某些参数,包括CPU、内存以及各个终端

[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)

[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)

# 内核进程、文件缓存哈洗表

[    0.000000] Memory: 940740K/966656K available (5785K kernel code, 377K rwdata, 1760K rodata, 396K init, 771K bss, 25916K reserved)

# 占用内存报告

[    0.000000] Virtual kernel memory layout:

[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)

[    0.000000]     fixmap  : 0xffc00000 - 0xffe00000   (2048 kB)

[    0.000000]     vmalloc : 0xbb800000 - 0xff000000   (1080 MB)

[    0.000000]     lowmem  : 0x80000000 - 0xbb000000   ( 944 MB)

[    0.000000]     modules : 0x7f000000 - 0x80000000   (  16 MB)

[    0.000000]       .text : 0x80008000 - 0x80766748   (7546 kB)

[    0.000000]       .init : 0x80767000 - 0x807ca000   ( 396 kB)

[    0.000000]       .data : 0x807ca000 - 0x808287ec   ( 378 kB)

[    0.000000]        .bss : 0x808287ec - 0x808e96d4   ( 772 kB)

# 内段地址分配

[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1

[    0.000000] Preemptible hierarchical RCU implementation.

[    0.000000] NR_IRQS:480

[    0.000000] Architected cp15 timer(s) running at 19.20MHz (virt).

# ARMcp15处理器,管理cache

[    0.000015] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 3579139424256ns

[    0.000039] Switching to timer-based delay loop, resolution 52ns

[    0.000340] Console: colour dummy device 80x30

[    0.001767] console [tty1] enabled

[    0.001818] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000)

[    0.001901] pid_max: default: 32768 minimum: 301

[    0.002319] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)

[    0.002380] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)

[    0.003661] Initializing cgroup subsys memory

[    0.003747] Initializing cgroup subsys devices

[    0.003806] Initializing cgroup subsys freezer

[    0.003856] Initializing cgroup subsys net_cls

[    0.003920] Initializing cgroup subsys blkio

# 初始化cgroups子系统,内存以及块设备等

[    0.004033] CPU: Testing write buffer coherency: ok

[    0.004151] ftrace: allocating 19969 entries in 59 pages

[    0.053552] CPU0: update cpu_capacity 1024

[    0.053633] CPU0: thread -1, cpu 0, socket 15, mpidr 80000f00

[    0.053670] [bcm2709_smp_prepare_cpus] enter

[    0.053838] Setting up static identity map for 0x536c78 - 0x536cd0

[    0.113528] [bcm2709_boot_secondary] cpu:1 started (0) 17

[    0.113843] CPU1: Booted secondary processor

[    0.113851] [bcm2709_secondary_init] enter cpu:1

[    0.113906] CPU1: update cpu_capacity 1024

[    0.113915] CPU1: thread -1, cpu 1, socket 15, mpidr 80000f01

[    0.133488] [bcm2709_boot_secondary] cpu:2 started (0) 18

[    0.133738] CPU2: Booted secondary processor

[    0.133745] [bcm2709_secondary_init] enter cpu:2

[    0.133775] CPU2: update cpu_capacity 1024

[    0.133784] CPU2: thread -1, cpu 2, socket 15, mpidr 80000f02

[    0.153550] [bcm2709_boot_secondary] cpu:3 started (0) 16

[    0.153789] CPU3: Booted secondary processor

[    0.153796] [bcm2709_secondary_init] enter cpu:3

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值