嵌入式开发之 入门篇(文件传输、交叉编译)
一、连接示意图
二、实际拍摄的板卡连接照片
三、器材列表
- pc-Duino一块
- 一根micro-USB线
- 一根网线
- pcDuino电源线
pcDuino启动
下载PuTTY,根据端口号配置PuTTY,速度设置为115200.
成功通过串口连接上acadia板子后,在Putty界面会输出板子的启动信息。
下面是Acadia的启动信息(非常之长):
U-Boot 2009.08 (Dec 25 2014 - 21:37:33) //U-Boot启动内核
CPU: Freescale i.MX6 family TO1.2 at 792 MHz //CPU型号
Thermal sensor with ratio = 175//热传感器
Temperature: 32 C, calibration data 0x5574cb69 //CPU温度
mx6q pll1: 792MHz //
mx6q pll2: 528MHz
mx6q pll3: 480MHz
mx6q pll8: 50MHz
ipg clock : 66000000Hz //各类时钟的频率
ipg per clock : 66000000Hz
uart clock : 80000000Hz
cspi clock : 60000000Hz
ahb clock : 132000000Hz
axi clock : 264000000Hz
emi_slow clock: 132000000Hz
ddr clock : 528000000Hz
usdhc1 clock : 198000000Hz
usdhc2 clock : 198000000Hz
usdhc3 clock : 198000000Hz
usdhc4 clock : 198000000Hz
nfc clock : 24000000Hz
Board: i.MX6Q-SABRESD: unknown-board Board: 0x63012 [POR ]
Boot Device: MMC //Boot设备为MMC闪存
I2C: ready
DRAM: 1 GB //运行内存1GB
MMC: FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3
In: serial //串口输入
Out: serial //串口输出
Err: serial //串口输出错误信息
config_ipu_di_clk: freq = 148500000.
wait for pll5 lock.
config_ipu_di_clk: set pll5 clock to 297000000Hz.
Found PFUZE100! deviceid=10,revid=11
Net: got MAC address from IIM: 00:00:00:00:00:00
FEC0 [PRIME]
Hit any key to stop autoboot: 0 //按任意键停止自动启动
mmc3(part 0) is current device //
MMC read: dev # 3, block # 2048, count 10240 ... 10240 blocks read: OK
## Booting kernel from Legacy Image at 10800000 ... //从10800000处开始装载内核映像文件
Image Name: Linux-3.0.35-2666-gbdde708
//映像名:Linux-3.0.35-2666-gbdde708
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4422312 Bytes = 4.2 MB
Load Address: 10008000 //装载地址
Entry Point: 10008000 //入口地址
Verifying Checksum ... OK //
Loading Kernel Image ... OK //内核映像装载成功
OK
Starting kernel ... //内核启动
Uncompressing Linux... done, booting the kernel. //解压Linux…完成,装载内核
Linux version 3.0.35-2666-gbdde708 (root@ubuntu) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #218 SMP PREEMPT Thu Dec 18 22:32:36 PST 2014 //系统版本
CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d //CPU信息
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: Freescale i.MX 6Quad/DualLite/Solo Sabre-SD Board
Memory policy: ECC disabled, Data cache writealloc
CPU identified as i.MX6Q, silicon rev 1.2
PERCPU: Embedded 7 pages/cpu @8c008000 s5472 r8192 d15008 u32768
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 194560
Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait fec_mac=4c:53:09:1e:71:d4 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 fbmem=28M
PID hash table entries: 4096 (order: 2, 16384 bytes)
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 512MB 256MB = 768MB total
Memory: 764648k/764648k available, 283928k reserved, 0K highmem
Virtual kernel memory layout: //虚拟内核内存信息
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xf4600000 - 0xffe00000 ( 184 MB)
vmalloc : 0xc0800000 - 0xf2000000 ( 792 MB)
lowmem : 0x80000000 - 0xc0000000 (1024 MB)
pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
.init : 0x80008000 - 0x8003e000 ( 216 kB)
.text : 0x8003e000 - 0x80b93ca8 (11608 kB)
.data : 0x80b94000 - 0x80bff600 ( 430 kB)
.bss : 0x80bff624 - 0x80c58d0c ( 358 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
Preemptible hierarchical RCU implementation.
NR_IRQS:624
MXC GPIO hardware
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms
arm_max_freq=1GHz //最大频率
MXC_Early serial console at MMIO 0x202000