Linux 现在主板没蜂鸣器 蜂鸣器 LED灯 ADC驱动

单片机、电路板
连接器、接插件
其他元器件
ARM-Linux驱动--ADC驱动(中断方式)
ARM-Linux驱动--ADC驱动(中断方式)
硬件平台:FL2440内核版本:2.6.28主机平台:Ubuntu 11.04内核版本:2.6.39原创作品,转载请标明出处:http://blog.csdn.net/yming0221/archive//6568937.aspx这个驱动写了好久,因为原来的Linux内核编译的时候将触摸屏驱动编译进内核了,而触摸屏驱动里的ADC中断在注册的时候类型选择的是IRQF_SAMPLE
硬件平台:FL2440内核版本:2.6.28主机平台:Ubuntu 11.04内核版本:2.6.39原创作品,转载请标明出处:http://blog.csdn.net/yming0221/archive//6568937.aspx这个驱动写了好久,因为原来的Linux内核编译的时候将触摸屏驱动编译进内核了,而触摸屏驱动里的ADC中断在注册的时候类型选择的是IRQF_SAMPLE_RANDOM,不是共享类型,所以,自己写的ADC驱动在每次open的时候,总提示ADC中断注册失败。解决方案:重新配置内核,选择触摸屏驱动以模块的形式编译,而不是直接编译进内核,这样Linux在启动的时候不会自动加载触摸屏驱动,当然,IRQ_ADC中断号不会被占用。这样可以测试自己写的ADC驱动了。以下是驱动源代码:#include#include#include#include/*创建设备节点*/#include#include/*定义DECLARE_WAIT_QUEUE_HEAD*/#include/*定义了irqreturn_t等*/#include/*request_irqdisable_irqenable_irq*/#include#include#include/*其中包含了#include"mach/irqs.h"*/#include#include#defineADC_MAJOR102#defineADC_NAME"my_adc"#defineSUCCESS0staticintadc_open(structinode*,structfile*);staticintadc_release(structinode*,structfile*);staticint__initadc_init(void);staticint__exitadc_exit(void);staticssize_tadc_read(structfile*,char*,size_t,loff_t*);volatileunsignedlongadc_unsignedlongadc_dat0;//等待任务完成标志//存放转换完成的数据//声明等待队列DECLARE_WAIT_QUEUE_HEAD(adc_wait);structclk*adc_staticirqreturn_tadc_interrupt(intirq,void*dev_id)//中断处理程序{if(flag==0){buf=(readw(adc_dat0)&0x3ff);//读取转换完成的数据flag=1;wake_up_interruptible(&adc_wait);//唤醒等待其上的进程printk("Readvalueis%ld/n",buf);}returnIRQ_HANDLED;}structfile_operationsadc_ops={.owner=THIS_MODULE,.read=adc_read,.open=adc_open,.release=adc_release,};staticint__initadc_init(void){adc_clk=clk_get(NULL,"adc");//获取时钟clk_enable(adc_clk);//使能时钟ret=register_chrdev(ADC_MAJOR,ADC_NAME,&adc_ops);//注册设备if(ret<0){printk("registerdevicefail/n");}adc_con=(unsignedlong)ioremap(0x);adc_dat0=(volatileunsignedlong)ioremap(0xC2410_ADCDAT0,4);if(!(adc_con&adc_dat0)){printk("Failedtoioremap/n");}printk("Initialized.../n");returnSUCCESS;handle:unregister_chrdev(ADC_MAJOR,ADC_NAME);return-1;}staticintadc_open(structinode*inode,structfile*file)//打开设备函数{//注册中断//disable_irq(IRQ_ADC);//enable_irq(IRQ_ADC);ret=request_irq(IRQ_ADC,adc_interrupt,IRQF_SHARED,ADC_NAME,1);//注册中断IRQ_ADC在mach/irqs.h中定义if(ret<0){printk("IRQ%dcannotrequest/n",IRQ_ADC);}returnSUCCESS;}staticintadc_release(structinode*inode,structfile*file)//关闭设备函数{free_irq(IRQ_ADC,1);//释放中断returnSUCCESS;}staticssize_tadc_read(structfile*file,char*buffer,size_tlength,loff_t*offset)//设备读取函数{writew((1<<14)|(0x31<<6),adc_con);//设置ADCCONwritew((readw(adc_con)|0x1),adc_con);//启动AD转换wait_event_interruptible(adc_wait,flag);flag=0;}staticint__exitadc_exit(void)//驱动卸载函数{iounmap(adc_con);iounmap(adc_dat0);unregister_chrdev(ADC_MAJOR,ADC_NAME);clk_disable(adc_clk);clk_put(adc_clk);printk("Theadcisunintialized/n");returnSUCCESS;}module_init(adc_init);module_exit(adc_exit);MODULE_LICENSE("GPL");
型号/产品名
深圳市东星卓越科技有限公司
深圳佳名兴电容有限公司
深圳市福田区贸盛兴电子商行扫一扫,手机浏览020-TI系列您的位置: >&&产品名称:TQ335XBv2开发平台产品价格:679.00 元产品属性品牌: 天嵌
CPU型号: TI 335X
架构: Cortex_A8
主频: 1GHz
内存: 512MB DDR3
存储: 1GB SLC Nandflash浏览次数:4519
&& TQ335X_COREB核心板主要由MPU(AM335xBZCZA100)、内存(DDR3,512MB)、NandFlash,RTC及其它外围电路组成。核心板使用引出功能最多的ZCZ封装的MPU,并引出了AM335x芯片的所有功能,留有各种应用的接口于底板上,满足学习或者是产品开发的所有要求。部分端口多达7种功能复用,可通过对端口资源的灵活配置,匹配不同的接口底板,快速实现产品的多样化。
&核心板尺寸
&50*41*7mm
&核心板层数
&PCB采用6层沉金工艺,布局、布线充分考虑EMC、EMI
&核心板引脚数
&160pin,采用B2B高速接口
&TI AM335X ARM Cortex A8
&512MB,DDR3 512M*1pcs
&Nandflash
&1GB Nandflash
&核心板工作功耗
&5伏 300毫安
&-40℃~80℃
其中&CPU&部分电气特性如表所示:
&GPIO&输入电压范围
&ADC&输入电压范围
&USBx_VBUS&输入电压范围
&RTC&电池电压范围
&警告:请勿使核心板 GPIO 端口工作在 3.6V 以上,ADC 端口输入信号峰值不得大于2.1V,否则将造成核心板损坏!
&183*116mm(不含接口尺寸)
&9-24&伏&1A&电源输入
&1路&USB_OTG 2.0&下载接口
&4路&USB_HOST 2.0&输出
&1路 PHONE,2 路输出
&2路千兆网口,10/100M/1000M
&最多支持6路,UART1引出RS232(DB9座子)和TTL电平;
&UART2~5可选RS232/TTL电平;UART6输出TTL电平;
&UART2 /3 /4分别与CAN2/485_1 /485_2复用
&RTC&备用电池
&4路12位ADC
&板载&E2PROM芯片AT24C02
&标准10PIN简牛座(2*5,2.0&间距)
&1路复位按键
&2路,与UART3/4复用,通过跳帽选择;预留隔离保护电
&2路,CAN2与UART2复用,通过跳帽选择;
&LCD&类型选择
&24bit&色,底板支持电容屏/电阻屏自由切换,通过跳帽选择
&扩展口引出部分&USB、UART、GPIO&和&SPI&引脚
天嵌科技在原生的 u-boot 中添加了 SD 卡的驱动,完善了 Nand Flash 的 ECC 校验,让 Nand Flash 的读写更加安全,添加了 FAT32 协议的驱动,实现了开机自动烧写镜像, SD 卡烧写支持大于内存容量的文件系统的烧写,完善了环境变量的保存方式。
u-boot 功能对照表
SD&自动更新固件
无需与&PC&有任何连接,使量产和更新更快捷
SD&手动更新固件
无需与&PC&有任何连接,现场升级更方便,通过&LCD&交互
需要连接网络,串口线。有烧写菜单,&支持“一键烧写镜像”。
支持&LCD&手动切换
不需要更换&u-boot,即可以让&u-boot&支持天嵌科技的所有&LCD
LCD&上显示信息
无需接串口,既可以在&LCD&看到开发板的内存和&nand&信息
启动&linux&系统
支持内核动态调整&LCD
启动&android&系统
支持内核动态调整&LCD
下面列出各种驱动在内核中的位置:
Linux-3.2&源码驱动分布表格
在内核中的源码位置
系统中的设备名称
drivers/mtd/nand/
(*表示数字)
drivers/video/da8xx-fb.c
电阻触摸屏驱动
drivers/input/touchscreen/ti_tsc.c
/dev/event*
电容触摸屏驱动
drivers/input/touchscreen/(模块化)
/dev/event*
drivers/usb/
drivers/mmc/host/omap_hsmmc.c
Drivers/tty/serial/omap-serial.c
/dev/ttySAC*
sound/soc/codecs/stgl5000.module(模式化)
/dev/snd/*(/dev/dsp)
sound/soc/davinci/tq_sgtl5000_evm.module(模式化)
drivers/i2c/busses/i2c-omap.c
/dev/i2c-*
背光灯驱动
drivers/video/backlight/pwm_bl.c
sys/class/backlight/pwm-backlight/brightness
drivers/rtc/rtc-pcf8563.c
看门狗驱动
drivers/watchdog/omap_wdt.c
/dev/watchdog
USB转串口驱动
drivers/usb/serial/
(内核选择了generic.c)
/dev/ttyUSB0
USB的3G驱动
drivers/usb/serial/
/dev/ttyUSB0~3
drivers/mfd/ti_tscadc.c
/sys/bus/platform/devices/tiadc/iio:device0/in_voltage*
drivers/net/can/d_can/*
drivers/net/ethernet/ti/*
交叉编译器版本
Arm-linux-gcc-4.4.6
Uboot支持功能
SD手动更新固件:无需连接电脑即可更新,方便现场升级,通过LCD界面操作,简单方便
开源,基本功能都开源,部分功能不开源。
SD自动更新固件:无需连接电脑即可更新,一卡在手,升级无忧!
TFTP烧录更新:不需要更换u-boot,即可以让u-boot支持天嵌科技的所有LCD
支持LCD手动切换:可以在LCD看到开发板的内存和nand信息
LCD上显示信息:支持内核动态调整LCD
多文件格式支持:EXT4、UBIF、YAFFS2
启动Android系统:支持内核动态调整LCD(根据uboot参数变化而变化)
系统内核支持功能
版本:Linux 3.2
Flash驱动:S34ML01G1
提供源代码, 内核自带
模块化, 天嵌添加
提供源代码, 内核自带
触摸驱动(电阻和电容)
模块化, 天嵌添加
提供源代码, 内核自带
提供源代码, 内核自带
串口驱动:2个
提供源代码, 天嵌移植
音频驱动(声卡SGTL5000)
模块化, 天嵌添加
提供源代码,内核自带
提供源代码, 天嵌移植
背光灯驱动
提供源代码, 天嵌添加
蜂鸣器驱动
提供源代码, 天嵌添加
看门狗驱动
提供源代码, 内核自带
USB转串口驱动
提供源代码, 内核自带
提供源代码, 内核自带
网卡驱动(100M/1000M)
模块化, 天嵌添加
实用测试程序功能列表
提供源代码,天嵌移植
3G制式切换功能
天嵌提供,apk程序
天嵌提供,apk程序
交叉编译器版本
Arm-linux-gcc-4.4.6
Uboot支持功能
SD手动更新固件:无需连接电脑即可更新,方便现场升级,通过LCD界面操作,简单方便
开源,基本功能都开源,部分功能不开源。
SD自动更新固件:无需连接电脑即可更新,一卡在手,升级无忧!
TFTP烧录更新:不需要更换u-boot,即可以让u-boot支持天嵌科技的所有LCD
支持LCD手动切换:可以在LCD看到开发板的内存和nand信息
LCD上显示信息:支持内核动态调整LCD
多文件格式支持:EXT4、UBIF、YAFFS2
启动Android系统:支持内核动态调整LCD(根据uboot参数变化而变化)
系统内核支持功能
版本:Linux 3.2
Flash驱动:S34ML01G1
提供源代码, 内核自带
模块化, 天嵌添加
提供源代码, 内核自带
触摸驱动(电阻和电容)
模块化, 天嵌添加
提供源代码, 内核自带
提供源代码, 内核自带
串口驱动:2个
提供源代码, 天嵌移植
音频驱动(声卡SGTL5000)
模块化, 天嵌添加
提供源代码,内核自带
提供源代码, 天嵌移植
背光灯驱动
提供源代码, 天嵌添加
蜂鸣器驱动
提供源代码, 天嵌添加
看门狗驱动
提供源代码, 内核自带
USB转串口驱动
提供源代码, 内核自带
提供源代码, 内核自带
网卡驱动(100M/1000M)
模块化, 天嵌添加
设置功能测试
设置开机自动运行
提供源代码
网卡参数配置(支持无线网络配置)
提供可执行程序
提供源代码
提供源代码
提供源代码
天嵌科技测试程序
提供源代码
网卡测试(ping)
提供源代码
提供源代码
提供源代码
液晶屏三色
提供源代码
测试串口通信
提供源代码
应用程序测试
提供源代码
提供源代码
网络数据收发(socket)
提供源代码
CoreB核心板
Board V2底板
交叉串口线
相关产品335XB CoreB核心板CortexA8工控板核心板335X CoreC核心板CortexA8工控板核心板TQ335XB v1开发板CortexA8工控板核心板手机网站020-分享到:
热门产品:,,,,,,,,,,& Copyright@ 天嵌科技All Rights& Reserved粤ICP备号通往物联网的桥梁 物联网世界先锋目 录第 1 章 使用环境和硬件基础 ......................................................................................................... 1 1.1 本实验教程的使用范围和目标 ......................................................................................... 1 1.2 本实验教程需要基础和技术知识 ..................................................................................... 1 1.3 指导教程配备电子文档和光盘(或者 U 盘)使用 ........................................................ 2 1.4 本教程硬件环境................................................................................................................. 3 1.4.1 系统介绍.................................................................................................................. 3 1.4.2 感知 RF2 平台主板介绍 ......................................................................................... 4 1.4.3 关于感知 RF2 平台系统的更多信息 ..................................................................... 5 第 2 章 体验感知 2 平台运行 LINUX ........................................................................................... 6 2.1 如何启动感知 RF2 平台 .................................................................................................... 6 2.2 体验感知 RF2 的 Linux ..................................................................................................... 6 2.2.1 触摸屏校正 .............................................................................................................. 6 2.2.2 系统自动测试实验 .................................................................................................. 7 第 3 章下载 Linux 至网关主板 ..................................................................................................... 10 3.1 硬件连接........................................................................................................................... 10 3.2 软件安装........................................................................................................................... 10 3.2.1 安装 USB 转串口驱动 .......................................................................................... 10 3.2.2 安装 USB 驱动 ...................................................................................................... 12 3.3 设置超级终端................................................................................................................... 17 3.4 功能主菜单说明............................................................................................................... 20 3.5 安装 Linux 系统 ............................................................................................................... 20 3.5.1 制作 SD 卡启动盘................................................................................................. 21 3.5.2 格式化 Nand Flash ................................................................................................ 25 3.5.3 安装 bootloader...................................................................................................... 26 3.5.4 安装 Linux 内核 .................................................................................................... 27 3.5.5 安装根文件系统 .................................................................................................... 29 第 4 章 建立 linux 开发环境 ........................................................................................................ 33 4.1 安装 Ubuntu...................................................................................................................... 33 4.2 设置为 root 用户自动登录 .............................................................................................. 39 4.3 设置 Ubuntu 网络参数 ..................................................................................................... 40 4.4 常用应用程序:Linux 终端 ............................................................................................ 43 4.5 建立交叉编译器............................................................................................................... 43 4.6 Linux 内核源及文件映象等 ............................................................................................ 45 第 5 章 Linux 开发 ......................................................................................................................... 48 5.1 基于感知 RF2 平台驱动实验 .......................................................................................... 48 5.1.1 实验 1:编写 Hello 驱动 ...................................................................................... 48 5.1.2 实验 2:ADC ........................................................................................................ 51 5.1.3 实验 3:LED ......................................................................................................... 54 5.1.4 实验 4:Button ...................................................................................................... 57 5.1.5 实验 5:IIC-EEPROM .......................................................................................... 59 5.1.6 实验 6:touchscreen.............................................................................................. 60 5.2 基于感知 RF2 基础程序 .................................................................................................. 61无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 5.2.1 预备实验:设置超级终端 .................................................................................... 62 5.2.2 实验 1:HELLO.................................................................................................... 62 5.2.3 实验 2:LED ......................................................................................................... 63 5.2.4 实验 3:button ...................................................................................................... 64 5.2.5 实验 4:tty 串口.................................................................................................... 64 5.2.6 实验 5:IIC-EEPROM .......................................................................................... 65 5.2.7 实验 6:ADC ........................................................................................................ 66 5.2.8 实验 7:FrameBuffer ............................................................................................ 67 5.2.9 实验 8:C++.......................................................................................................... 68 5.2.10 实验 9:time........................................................................................................ 69 5.2.11 实验 10:process ................................................................................................. 70 5.2.12 实验 11:thread ................................................................................................... 70 5.2.13 实验 12:file ....................................................................................................... 71 5.2.14 实验 13:UDP ..................................................................................................... 72 5.2.15 实验 14:TCP ..................................................................................................... 73 5.2.16 实验 15:webserver ............................................................................................ 74 第 6 章使用 Linux 开发物联网应用 ............................................................................................. 76 6.1 物联网概述....................................................................................................................... 76 6.2 实验前准备....................................................................................................................... 76 6.3 系统自动测试实验 ........................................................................................................... 77 6.4 无线传感实验................................................................................................................... 78 6.4.1 移动网络 3G 实验 ................................................................................................. 78 6.4.3 低功耗 Wi-Fi 传感实验 ........................................................................................ 90 6.4.4ZigBee 传感网络 .................................................................................................. 100 6.4.5 多网络互联 .......................................................................................................... 125 6.5RFID 实验 ....................................................................................................................... 132 6.5.1 RFID 技术............................................................................................................ 132 6.5.2RFID 实验............................................................................................................. 133 第 7 章 使用 QT 编程入门 ......................................................................................................... 149 7.1 获得 Qt4 源代码............................................................................................................. 149 7.2 交叉编译 Qt4.................................................................................................................. 149 7.3 安装 Qt Creator.............................................................................................................. 149 7.4 用 Qt Creator 创建 Qt4 程序 .......................................................................................... 151 7.5 设置 Qt Creator 使其支持交叉编译 .............................................................................. 157 7.6 交叉编译 Qt4 程序 ......................................................................................................... 158 7.7 将 Qt4 程序部置到感知 RF2 上运行 ............................................................................ 160 7.8QT 例程序实验 ............................................................................................................... 160 7.8.1QT 下 HelloQt 程序实验...................................................................................... 160 7.8.2QT 下对话框实验 ................................................................................................ 161 7.8.3QT 下信号与插槽实验 ........................................................................................ 162 7.8.4QT 下板载 LED 程序实验 ................................................................................... 164 7.8.5QT 下板载 ADC 程序实验 .................................................................................. 165 7.8.6QT 下板载串口程序实验 .................................................................................... 166无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 1 章 使用环境和硬件基础1.1 本实验教程的使用范围和目标作为一本和感知 RF2 物联网教学科研平台(以下简称感知 2 平台)配套的实验指导教 程,本书的目的的支持和辅导读者,能够使用感知 2 平台在 LINUX 操作系统下,完成一系列 基础和基本的实验,而实验的重点是物联网和高级嵌入式设计相关的实验。1.2 本实验教程需要基础和技术知识为了完成这些实验,建议读者了解和掌握下面的的基础知识: ARM 体系结构和接口技术基础。 C 语言编程基础和相关技术基础。 单片机和无线单片机等技术基础。 物联网入门技术基础,包括 ZigBee,低功耗无线技术,Wi-Fi,蓝牙,GSM、3G/GPRS 网络等知识基础。 LINUX 和 QT 软件开发技术基础知识。 目前通过网络查询和可以发现很多公开出版物, 教程, 已经比较容易获得这些教程和资 源。 无线龙科技集团通过数年努力, 也编辑出版了很多相关物联网的教材和教学资源, 下图 是部分无线龙科技集团已经正式出版的教材和书籍:无线龙科技集团编辑的部分物联网相关教材 1无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 同时考虑到物联网技术开发中涉及的嵌入式设计技术的复杂性和知识的广阔性, 无线龙 科技集团也正在编辑出版一套全面融合物联网基础技术的嵌入式设计基础技术丛书, 这套丛 书将全面包括 3 大主流嵌入式操作系统和 ARM 处理器,软件开发等涉及的基础技术知识, 使广大读者能够使用感知 2 平台, 全面实现基础知识学习和入门, 相信这套嵌入式基础技术 丛书,很快会和读者见面。1.3 指导教程配备电子文档和光盘(或者 U 盘)使用因为本使用指导教程包括大量的软件(系统软件,实验代码和工程,实用工具,电子文 档) ,这些软件必须使用本书附带的光盘(或者 U 盘) ,LINUX 实验指导手册包括的文件内 容如下图所示。LINUX 实验指导手册光盘电子文档请读者务必注意: 1、 软件和安装 凡是软件和安装,实验手册都会提示从那个目录下,进行安装,并且有相应的截图来提 示安装是否成功,以确保软件正确运行。 2、 实验和实验代码 每个实验都会在实验步骤中,明确提示使用的光盘中的目录,然后指导打开相关实验代 码或者工程文件,一步一步完成实验。 3、 物联网相关应用实验 物联网相关实验,因为涉及比较复杂的知识基础,所以很多部分是体验实验,即采用预 装软件,进行实验,这部分实验是执行代码,可以随时下载和升级。 4、 上位机软件和实验 部分物联网实验需要连接一个 PC 电脑,这部分运行在 PC 上的,也集成在光盘中,需 要按照指定目录安装到 PC 电脑中,请注意使用电脑的兼容性和串口,USB 接口的兼容性。 5、 光盘的升级和更新 请随时关注无线龙科技集团相关网页,获得升级和更新你的光盘文档。2无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋1.4 本教程硬件环境 1.4.1 系统介绍感知 RF2 教学科研平台是以实验箱结构构成的一体化物联网教学科研平台,系统组成 结构如下:感知 RF2 物联网教学科研平台系统结构平台硬件主板采用不同的 ARM 核心板构成,覆盖了主流的 ARM 处理器。平台配置见 下表。 项目 主板处理器(可以更换) 处理器主频 核心模块存储器 感知 RF26410 三星 ARM1176JZF-S 533MHz RAM 256MByte Flash 2GByte 可以更换核心模块 三星 Cortex-A8 三星 2440 主要通讯接口 操作系统 以太网,USB,串口 WinCE6.0 Linux ANDROID 物联网实验/表演 GUI 软件 WinCE3感知 RF2210 三星 Cortex-A8 1GHz RAM 256MByte Flash 256MByte 三星 ARM1176JZF-S 三星 2440 以太网,USB,串口 WinCE6.0 Linux ANDROID WinCE感知 RF22440 三星 ARM9 400MHz RAM 64MByte Flash 64MByte 三星 Cortex-A8 三星 ARM1176JZF-S 以太网,USB,串口 WinCE5.0 WinCE6.0 Linux WinCE无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 Linux QT 物联网嵌入式无线通讯 Wi-Fi 蓝牙 电讯网络 IEEE802.11 B/G Bluetooth? v2.1 3G/WCDMA,GPRS IEEE802.11 B/G Bluetooth? v2.1 3G/WCDMA,GPRS IEEE802.11 B/G Bluetooth? v2.1 3G/WCDMA,GPRS Linux QT Linux QT感知 RF2 物联网教学科研平台配置1.4.2 感知 RF2 平台主板介绍感知 2 主板由处理器核心板(可以更换)和外部接口(USB,以太网,232 接口,SD 卡) , 触摸键盘,无线模块等组成,主板结构如图所示。4无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋感知 RF2 主板结构介绍提示: 在进行相关物联网实验时,一定要注意使用的是那个接口,准备好相关电缆,一部分是 感知 2 平台附带的电缆,一部分是需要用户自己采购的标准电缆,例如 USB,以太网等, 用户在采购这些电缆和配件时,一定要注意质量,一保证实验顺利进行。 相关感知 2 平台有关电路原理图和电气资料,请参考光盘中的《硬件用户手册》 。1.4.3 关于感知 RF2 平台系统的更多信息如果需要详细了解感知 2 平台的更多详细信息, 请参考光盘中的教学幻灯片 《感知 RF2 物联网教学可以平台》 共计 62 页。 还可以访问无线龙科技集团网页:http://www.c51rf.com。5无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 2 章 体验感知 2 平台运行 LINUX2.1 如何启动感知 RF2 平台通过 9V 电源(下图左)把感知 RF2 的网关主板连接起来,如下图右所示。把电源开关拔向“ON”,感知 RF2 的网关主板液晶屏显示如下图所示。2.2 体验感知 RF2 的 Linux请按照第 3 章介绍中的方法和步骤下载烧写您所需要的系统, 安装完毕, 请把开发板的 J1 开关设置为 Nand 启动系统。2.2.1 触摸屏校正缺省安装的 Linux 系统的触摸屏校正参数一般适用于感知 RF2 的 LCD,但因为每个触 摸屏的物理特性不同,有时可能不太准确,特别是不同尺寸的时候,这时就需要重新校正。 下载烧写您所需要的系统,安装完毕,第 1 次开机需要触摸屏校正。 如果是下载内核后第 1 次启动系统, 则会出现如下提示来校准触摸屏, 根据屏幕显示触6无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 摸 5 次“+”光标即可。 使用触摸笔依次点击屏幕中的正中央。一共点击五次,每次触摸的点会不一样。五点点 击完毕后即可。校准注意事项:在校准时,尽可能准确的使用触摸笔依次点击“+”屏幕中的正中央。2.2.2 系统自动测试实验在感知 2 主板屏幕上点击“Stylesheets” ,如下图所示。进入界面,如下图所示。7无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋点击不同颜色按键,显示不同背景颜色系统,如下图所示。8无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋如果选择 Khaki,屏幕会显示下面图像。9无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 3 章下载 Linux 至网关主板3.1 硬件连接1)感知 RF2 的启动模式选择通过拨动开关 J1(J1 在液晶屏下面的转接板上)来决定。根 据目标板提示,J1 接到 SDBOOT 标识一侧时,系统将从 SDBOOT 启动;J1 接到 Nand Flash 标识一侧时,系统将从 Nand Flash 启动。 出厂的时候开发板的 Nor Flash 和 Nand Flash 已经烧入了相同的 BIOS,J1 已经被接 到 NandFlash 一侧,系统一开机就从 Nand Flash 启动运行系统。 2)用我们提供的 9V 电源适配器连接到感知 RF2 网关主板上的 9V 输入插座。3)请使用我们提供的 USB 转串口线连接感知 RF2 网关主板的 J33(3PIN 插座,位于液 晶屏右侧,触摸按键的左侧)。4)用 USB 电缆连接 PC 到感知 RF2 网关主板 D 型头 USB(液晶屏左侧,RS232 串口 接口与音频接口之间) 。3.2 软件安装 3.2.1 安装 USB 转串口驱动点击“PL-2303 Driver Installer”开始安装,如下图所示。10无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋点击“完成”,完成驱动安装。 在计算机设备管理器中,你也可以看到相关的 USB 转串口驱动信息,如图:11无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋3.2.2 安装 USB 驱动此处安装的 USB 驱动仅在 BIOS 模式下有用, 它需要配合 dnw.exe 软件使用, 进入 Linux 或者 WinCE 系统都不会使用到该驱动。 说明:安装 USB 驱动不需要连接感知 RF2 网关主板,该安装是独立进行的。 双击运行光盘中的“FriendlyARM USB Download Driver Setup_”安装程序,开 始安装 USB 驱动。12无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋出现如图安装界面:点“下一步”继续:此时会跳出警告信息提示:13无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋点“仍然继续”,USB 下载驱动会很快安装完毕,如图:下面我们检测一下 USB 驱动: 首先设置感知 RF2 网关主板的拨动开关 J1 为 Nor Flash 启动,连接好附带的 USB 线和 电源(可以不必连接串口线)。 打开电源开关 J1,如果您是第一次使用,Windows XP 系统会提示您发现了新的 USB 设备,并出现如图界面,在此选择“否,暂时不(T)”,点“下一步”继续。14无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋出现如图提示,选择“自动安装软件”,点“下一步”继续出现如图警告界面,点“仍然继续”15无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 至此,第一次使用 USB 下载驱动的步骤就结束了。此时打开光盘中的 dnw.exe 下载软件,可以看到 USB 连接 OK,如图。在计算机设备管理器中,你也可以看到相关的 USB 下载驱动信息,如图:16无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋3.3 设置超级终端为了通过串口连接感知 RF2 网关主板,必须使用一个模拟终端程序,几乎所有的类似 软件都可以使用, 其中 MS-Windows 自带的超级终端是最常用的选择, 当你安装 Windows9x 时需要自定义选择安装该项,Windows2000 及更高版本则已经缺省安装。 一般桌面版 Linux 系统也自带了类似的串口终端软件,叫 minicom,它是基于命令行的 程序,使用比较复杂一些,感兴趣的用户可以在网上找一下这方面的介绍。 在此着重介绍一下 Windows 自带的超级终端程序并以 WindowsXP 为例,或许其他 Windows 版本的程序界面有所不同。 超级终端程序通常位于 “开始-&程序-&附件-&通讯” 中, 选择运行该程序,一般会跳出如图所示窗口,询问你是否要将 Hypertrm 作为默认的 telnet 程序,此时你不需要,因此点“否”按钮。接下来,会跳出如下窗口,点“取消”。此时系统提示“确认取消”, 点“是”即可, 接着点提示窗口的“确定”, 进入下一步。17无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 超级终端会要求你为新的连接取一个名字,如图所示,这里我们取“ttyS0”,Windows 系统会禁止取类似“COM1”这样的名字,因为这个名字被系统占用了。当命名完以后,又会跳出一个对话框,你需要选择连接感知 RF2 网关主板的 J16USB 转 串口, 由于 1.2.1 介绍安装 USB 转串口驱动后显示端口是“COM9”, 因此我们选择“COM9”, 如图所示:18无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋最后,最重要的一步是设置串口,注意必须选择无流控制,否则,或许你只能看到输出 而不能输入,另外感知 RF2 网关主板工作时的串口波特率是 115200,如图所示。当所有的连接参数(3.1 节介绍)都设置好以后,打开电源开关,系统会出现 vivi 启动 界面。19无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋选择超级终端“文件”菜单下的“另存为?”, 保存该连接设置, 以便于以后再连接时 就不必重新执行以上设置了。3.4 功能主菜单说明以下通过 USB 下载的功能均配合 DNW 这个程序使用。(1)对 Nand Flash 进行格式化,对应命令[f]。 (2)安装 Bootloader,对应命令[v]。 (3)安装内核文件,对应命令[k]。 (4)安装目标文件系统(yaffs2 或 ubifs 格式),对应命令[y]或[u]。3.5 安装 Linux 系统说明:安装 Linux 所需要的文件位于光盘的 images 目录中。 安装 Linux 系统主要有以下步骤:20无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 (1)对 Nand Flash 进行分区。 (2)安装 bootloader。 (3)安装内核文件。 (4)安装文件系统。 下面是详细的步骤。3.5.1 制作 SD 卡启动盘完全空白的 SD 卡是不能直接启动感知 RF2 的网关主板的,必须先在 PC 上使用特殊的 下载软件把 BIOS(也可以称为 bootloader)写入 SD 卡才可以,并且写入的这个 BIOS 是无法 在电脑上直接看到的。提供了这样下载程序:SD-Flasher.exe,你可以在光盘中找到它。 注释 1:一般市场上买到的 SD 卡为全盘 FAT32 格式,如果卡中存放了很多数据,强制 烧写(下载)就可能会不知不觉中破坏这些数据;基于此原因考虑,我们在 Vista/Winows7 中, 先把 SD 卡自动分割为普通的 FAT32 格式区(自动命名卷标为“FriendlyARM)和无格式区 (占 130M)两部分,烧写软件将会依据卷标名称作为标志,把 bootloader 烧写(下载)到无 格式区,这样就不会破坏普通 FAT32 格式区中的数据了。 实际上,Vista/Windows7 系统本身的安全性很高,普通用户是无法在 Vista/Windows7 系统上强制烧写(下载) SD 卡的,因此必须要先分割才能写入;另一方面,鉴于使用 WindowsXP 的用户可能会嫌麻烦不想升级为 Windows7,根据一些网上的调查数据,这部分 人还是占很大数量的, “嫌麻烦”也表明这部分用户凡事都希望尽快搞定, 因此我们并没有 在 WindowsXP 中采用“先分割,再烧写(下载)”这种更加安全的做法,而是根据习惯,采 用了“强制烧写(下载)”的模式。 注意:有用户反映有些笔记本自带的 SD 读卡器无法正常烧写,我们尚未遇到过这样的 情况,因此无法得知原因,在这种情况下,你可以使用普通的 USB 读卡器试试。 另外, SD-Flasher.exe 会分割 130M 空间作为空白区域, 因此有些小于 256M 的 SD 卡是无法使用的, 我们推荐使用至少 4G 的 SD 卡,因为稍后拷贝的安装文件比较大。 Step1: 打开光盘中的 SD-Flasher.exe 烧写软件, 如图, 请注意, 此时软件中的“ReLayout” 和“ReFormat”按钮是失效的,因为我们特意在 WindowsXP 系统中关闭了此功能。21无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋Step2: 点按钮找到所要烧写的 superboot (注意不要放在中文目录下),如图22无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 Step3: 把 FAT32 格式的 SD 卡插入笔记本的卡座,也可以使用 USB 读卡器连接普通的 PC,准备就绪,点“Scan”,找到的 SD 卡就会被列出,如图Step4: 再点“Fuse”,superboot 就会被烧写到 SD 卡中了。23无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋Superboot 被写入 SD 卡后是无法看到的,该如何检测呢?很简单,把 SD 卡插到开发板 上,并把开发板上 J1 开关设置为“SDBOOT”模式,开机后,就可以看到核心板(液晶屏下 面)上的 LED1 在不停的闪烁,这就说明 Superboot 已经正常运行了。 如果你没有看到 LED1 闪烁,或串口也没有输出,说明没有烧写成功。 以下几种原因均有可能导致不行,并有解决方法: 1. 使用了笔记本自带的读卡器,建议使用外接的 usb 读卡器,注意,有的外接 usb 读卡 器也是不行的。 2. 使用了山寨的 SD 卡,请使用正品,最好是 4G 或以上的 SDHC。 3. 使用了 microSD/TF 卡+卡套,请使用普通的 SD 卡,因为卡套的方式非常容易导致 接触不良。 4. SD 卡启动功能是 6410 本身就带的, 里面的代码是固定死的, 它有可能无法识别某些 卡,因此有些卡可能不行,建议多试几张。 5. 因接触不良导致无法使用 SD 卡启动的可能性比较大, 建议多插拔几次试试, 这包括 (1)核心板和底板的接触,(2)SD 卡座本身的接触。 6. 6410 从 SD 卡启动时, 要把 superboot 或其他 bootloader 烧写到 SD 卡高位地址起始处, 如果你的卡在此处损坏了,也是无法启动的(虽然你可以在普通电脑上使用);烧写工具是无 法检测你的卡是否损坏的。24无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋3.5.2 格式化 Nand Flash根据 3.1 节介绍设置好硬件连接。 J1 接到 SDBOOT 标识一侧。 并把 SD 卡启动盘按插 到感知 RF2 的网关主板的 SD 卡座上。注意:本小节假定您已经安装好了 USB 驱动,并把开发板设置 SD 启动;请先连接好 串口,打开超级终端,上电启动开发板,进入 BIOS 功能菜单。 提示:格式化将会擦除 Nand Flash 里面的所有数据。 连接好串口,打开超级终端,上电启动开发板,进入 BIOS 功能菜单,选择功能号[f] 开始对 Nand Flash 进行分区,如图所示。说明:有的 Nand Flash 分区时会出现坏区报告提示,因为 Supervivi 会对坏区做检测记 录,因此这将不会影响板子的正常使用。 普通的 Nand Flash 并不能保证所有扇区都是完好 的,如果有坏区,系统软件会对它们做检测处理,而不会影响整个软件系统的使用。保证完25无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 全无坏区的 Nand Flash 另有型号,而且订货周期长,价格昂贵,一般场合很少用到;其他 品牌的 Nand Flash 也与此类似。 打开 DNW 程序, 接上 USB 电缆到开发板 D 型头 USB, 如果 DNW 标题栏提示[USB: OK],说明 USB 连接成功。3.5.3 安装 bootloader在系统中,我们使用的 Bootloader 为 U-boot.bin,因为 Nboot 并不能自动识别 LCD 类 型,根据不同型号的 LCD,和不同容量的内存配置,有不同的映像文件(源代码中有相应的 配置项)。 (1)打开 DNW 程序,接上 USB 电缆,如果 DNW 标题栏提示[USB:OK],说明 USB 连 接成功,这时根据菜单选择功能号[V]开始下载 U-boot.bin(2)点击“USB Port-&Transmit”选项,并选择打开文件 U-boot.bin 开始下载。26无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋(3)下载完毕,BIOS 会自动把 U-boot.bin 烧写到 Nand Flash 分区中,并返回到主菜单。3.5.4 安装 Linux 内核(1)在 BIOS 主菜单中选择功能号[k],开始下载 Linux 内核。27无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋(2) 点 击 “USB Port-&Transmit/Restore” 选 项 , 并 选 择 打 开 相 应 的 内 核 文 件 zImagewxl 开始下载。(3) 下载完毕,BIOS 会自动烧写内核到 Nand Flash 分区中,并返回到主菜单,整个过 程串口信息如下图:28无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋3.5.5 安装根文件系统目前 Superboot 可以支持 yaffs2 和 ubifs 两种格式的文件系统映像烧写到 SLC Nand Flash,并支持把 ubifs 格式文件系统映像烧写到 MLC2 Nand Flash,根据文件系统的压制类 型。 下面以烧写 UBIFS 格式的文件系统映像为例,介绍一下烧写的步骤,对于烧写 yaffs2 格式的文件系统,你只要更改一下命令和烧写的文件名就可以了,不再赘述。 注意:因映像文件的内部组织结构不同,Superboot 并不支持 yaffs2 格式的 MLC2 Nand Flash 烧写。 (1)在 BIOS 主菜单中选择功能号[u],开始下载 UBIFS 根文件系统映象文件。29无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋(2) 点击“ USB Port-&Transmit/Restore ”选项,并选择打开相应的文件系统映象文件 rootfs_qtopia_qt4_wxl.ub (该文件位于光盘的 images 目录)开始下载。30无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋(3)下载完毕,BIOS 会自动烧写文件系统映像到 Nand Flash 分区中,同时 Linux 启动参 数也被修改,以便启动 UBIFS 系统。提示:此过程大概需要 2-10 分钟,下载的文件越大,下载和烧写的时间就会越长。 注意:下载完毕,请拔下 USB 连接线,如果不取下来,有可能在复位或者启动系统的 时候导致您的电脑死机。 在 BIOS 主菜单中选择功能号[b],将会启动系统。31无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋此时,关闭感知 RF2 的网关主板电源,从 J33 拔出串口,把 SD 卡从 SD 卡座拔出,核 心板(液晶屏下方)J1 拔向 Nand。 然后打开感知 RF2 的网关主板电源开关,感知 RF2 即从 Linux 启动。32无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 4 章 建立 linux 开发环境开发环境是开发人员在开发过程当中, 所需的软硬件。 开发环境并不是一个固定的样式, 在这里,我们详细讲解一个嵌入式 Linux 开发环境搭建的方法。您已经对嵌入式开发非常了 解的话,可以按照自己的需求来搭建环境。 如果和本手册环境不一样而产生报错, 您可以从国内一些大 Linux 论坛和网站搜索相关 的信息来解决。 本册介绍的环境经过无线龙的测试, 如果对嵌入式开发不是非常熟悉的朋友, 希望您按照我们提供的方法来搭建环境。 各位朋友可以放心按照本手册说明的方法来搭建开 发环境。4.1 安装 UbuntuUbuntu 是一个以桌面应用为主的 Linux 操作系统。Ubuntu 拥有很多优点。相对于其他 版本的 Linux,Ubuntu 也有着自己的优势。首先,安装系统非常简单,只需要非常少的设置 即可, 完全可以和 Windows 桌面系统想媲美; 其次, 图形界面很人性化, 模仿了在 WindowsXP 下常用的快捷键; 还有, 安装和升级程序时, 可以通过网络, 由系统自行安装依赖的文件包, 从此不必再为 Linux 系统的依赖关系大伤脑筋。综合考虑大家的使用习惯和学习的需要,我 们选用 Ubuntu Linux。 Linux 桌面系统版本众多,目前所有实验和源码在 Ubuntu9.10 版本测试可以通过。使用 其他版本 Linux 桌面系统,可能会出现 gcc 编译器和库文件相关的问题。碰到类似问题,可 以在 Linux 系统发行商的官方论坛上咨询和查询。如果对 Linux 不熟悉的用户,强烈建议使 用无线龙介绍的方法。 Ubuntu 官网:1H1Uhttp://www.ubuntu.org.cnH 可下载各个版本的 Ubuntu。当然,官网能找到各种关于 Ubuntu 的信息。 Ubuntu 官方论坛:1H1Uhttp://forum.ubuntu.org.cn/H 可以找到大量的实用的 Ubuntu 资源,中文论坛。Ubuntu 也有官方的英文论坛。 步骤 1.首先准备一张 Ubuntu9.10 的安装光盘。将光盘插入光驱,在 PC 的 bios 中把 PC 启动方式设置为光驱启动,启动 PC。 步骤 2.启动 PC 后,安装盘会提示选择安装语言种类。使用 PC 键盘的方向键选择在安 装过程中显示的语言,在这里我们选择简体中文。33无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋步骤 3.选择“安装 Ubuntu” 。步骤 4.选择操作系统语言,点击前进。可根据自己的需求选择语言,Ubuntu 支持多种 语言,也可以在安装 Ubuntu 完成后更新语言包。34无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋步骤 5.系统自动同步操作系统时间。如果不能同步时间,可以点击”跳过” ,进入后面 的操作。步骤 6.选择所在地,因为只有上海可选,所以选择了上海。35无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋步骤 7.选择键盘布局。选择默认。步骤 8.硬盘空间以及挂载点的分配。这里选择默认。也可根据个人需要来进行设置。36无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋步骤 9.填写用户名及用户密码,将启动方式选择为“自动登录” 。步骤 10.最后是显示一些安装的配置信息。点击“安装” 。37无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋开始安装系统了。步骤 11.安装完成,点击”现在重启” 。38无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋4.2 设置为 root 用户自动登录嵌入式交叉编译, 经常需要 root 用户的权限。 把登录系统后的终端的默认用户改为 root。 如果编译过程当中出现类似权限的问题,要注意查当前用户权限。 在 Ubuntu 中新建一个终端,输入: #sudo –s #sudo passwd 输入要设置的密码,这样以后我们就可以用 root 用户登录了。 在终端中输入: #sudo gedit /etc/gdm/custom.conf 这时会弹出文本编辑器,将‘custom.conf’内容修改成下面所示内容(若原来文件为空 的话就输入这些内容) ,保存关闭,重新启动 Ubuntu 就会发现已经自动用 root 用户登录了。 [daemon] TimedLoginEnable=true AutomaticLoginEnable=true TimedLogin=root AutomaticLogin=root TimedLoginDelay=3039无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋4.3 设置 Ubuntu 网络参数因为每个 PC 的网络环境都不一定一样, 所以需要您根据自己的实际情况来设置 Ubuntu 的网络,如果设置不成功,可以去 Ubuntu 的官方论坛上咨询。接下来,为您提供一种网络 的设置方法,仅供参考。 步骤 1.启动 Ubuntu,在桌面上端的网络图标上点击右键,选择”编辑连接” ,弹出网络 设置窗口。步骤 2.在其”网络连接”面板上选中 Auto eth0 然后点击右边的”编辑” 。接下来在”正 在编辑 Auto eth0”窗口上的”Ipv4 设置”面板上设置网络参数。40无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋图中设置是一个例子,地址、子网掩码、网关、DNS 等信息需要根据个人的实际环境 来设置。设置好以后点击”应用” 。41无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋步骤 3.修改配置后,需要输入 root 密码来授权,如图。至此,就完成了 Ubuntu 的网络连接设置。42无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋4.4 常用应用程序:Linux 终端在 Ubuntu 中,点击应用程序-&附件-&终端是启动 Linux 终端的一种方法。Linux 终端的 作用不再介绍,网络上很多,而且在后面的实验中,会经常用到终端。终端的使用方法,还 是需要掌握的。4.5 建立交叉编译器在 Linux 平台下,要为开发板编译内核,图形界面 Qtopia,还有其他一些应用程序, 均需要交叉编译工具链。 这里我们把交叉编译器统一为 arm-linux-gcc-4.5.1-v6-vfp-.tar, 下面是它的安装 设置步骤 将光盘目录 linux\ 中的 arm-linux-gcc-4.5.1-v6-vfp-.tar 复制到某个目录下如 tmp\,然后进入到该目录,执行解压命令: #cd /tmp #tar arm-linux-gcc-4.5.1-v6-vfp-.tar 改变目录的意思。43–C /C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母,在此是无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 执行该命令,将把 arm-linux-gcc 安装到/usr/loca/arm/4.5.1 目录。为了使用方便,还可以编辑/etc/environment 文件添加把编译器路径到环境变量 PATH 中,只要在这个文件中添加下面,路径请按实际情况修改:44无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 重启电脑,后再输入: arm-linux-gcc –v 如果输出下面的信息则表面设置成功:4.6 Linux 内核源及文件映象等本小节将解压安装开发学习过程所用到的全部源代码以及其他一些小工具,包括: -Linux 内核源代码 -目标文件系统目录 -目标文件系统映象制作工具 所有的源代码均使用统一的编译器 arm-linux-gcc-4.3.2 编译(见上一节)。下面是详 细的解压安装过程,并有简要的介绍。 解压安装源代码,首先创建工作目录/opt/WXL/wxl6410, 在命令行执行: #mkdir –p /opt/WXL/wxl6410, 后面步骤的所有源代码都会解压安装到此目录中。 (1)准备好 Linux 源代码包 从光盘中复制文件到 wxl6410 (2)解压安装 Linux 内核源代码 在工作目录/opt/WXL/wxl6410 中执行: #cd /opt/WXL/wxl6410 linux-2.26.38wxl.tar45#tar xvzf无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 将创建生成 linux-2.6.38 目录,里面包含了完整的 Linux-2.6.38 内核源代码。 (3)解压安装嵌入式图形系统 qtopia 源代码 在工作目录/opt/WXL/wxl6410 中执行: #cd /opt/WXL/wxl6410 #tar xvzf rootfs_qtopia_qt4wxl.tar 将创建目录,内含相应的全部源代码。 (4)解压安装文件系统映像工具 执行以下命令: #tar xvzf mktools-.tar.gz –C / 将会在/usr/sbin 目录下创建生成相应的工具集。 注意: C 是大写的, C 后面有个空格, C 是改变解压安装目录的意思 (5) 定制 linux 内核及制作文件系统 使用缺省配置文件配置和编译内核,进入目录 #cp config_mini6410_a70 .config; a70 后面有个空格,然后有个“.”开头的 config 然后执行“make menuconfig” ,出 现配置内核界面:这里不用做任何更改, 在主菜单里选择&Exit&退出, 这样做是为了生成相应配置的头文 件。 输入以下命令,开始编译内核: #make zImage 编译结束后,会在 arch/arm/boot 目录下生成 linux 内核映象文件:zImage46无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋可以把 zImage 下载到感知 RF2 网关主板上进行测试。 制作目标板文件系统映象,在此,我们以制作测试用的 root_qtopia.ub 文件系统映象 为例,来介绍 文件系统映象的制作。 进入/opt/WXL/wxl6410 工作目录,执行以下命令: #cd /opt/WXL/wxl6410 rootfs_qtopia_qt.ub # mkubimage-mlc2 rootfs_qtopia_qt4可以看到,已经在当前目录下生成了 root_qtopia.ub 映象文件,使用前面章节介绍的 烧写方法,可以通过 USB 把 root_qtopia.ub 烧写到目标板。47无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 5 章 Linux 开发5.1 基于感知 RF2 平台驱动实验5.1.1 实验 1:编写 Hello 驱动实验内容: 编写最简单内核模块 HELLO。 实验步骤: 在内核源码的“drivers/char/”目录下新建一个名为“wxl_hello.c”的文件。 #include &linux/module.h& #include &linux/miscdevice.h& #include &linux/init.h& #include &linux/fs.h& #include &linux/interrupt.h& #include &linux/irq.h& #include &linux/sched.h& #include &linux/pm.h& #include &linux/sysctl.h& #include &linux/proc_fs.h& #include &linux/delay.h& #include &linux/platform_device.h& #include &linux/input.h& #include &linux/gpio_keys.h& #include &mach/gpio.h& #include &plat/gpio-cfg.h& #include &mach/regs-gpio.h& MODULE_LICENSE(&GPL&); static int __init WXL_hello_init(void) { printk(&&1&\n Hello,WXL!\n&); printk(&&1&\nThis is first driver program.\n\n&); return 0; } static void __exit WXL_hello_exit(void) { printk(&&1&\n Exit!\n&);48无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 printk(&&1&\nGoodbye WXL!\n\n&); } module_init(WXL_hello_init); module_exit(WXL_hello_exit); 在内核源码中添加对 hello 驱动的支持,修改同目录下的“Kconfig”文件,添加如下内 容: (红色部分所示) 。config WXL6410_HELLO_MODULE tristate &WXL6410 module sample& depends on CPU_S3C6410 help WXL6410 module sample. 修改同目录下的“Makefile”文件。49无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋obj-$(CONFIG_WXL6410_HELLO_MODULE) += wxl6410_hello_module.o 配置内核,然后输入 make menuconfig,然后配置如下:将其选择为“M” (模块) ,然后保存配置,编译出内核镜像烧写到开发板中。然后再使50无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 用命令#make modules ,然后编译出驱动模块,在内核目录下面的“drivers/char/”目录下 面,名为:wxl_hello.ko,将其复制到开发板中(可以使用 U 盘中转;也可以使用 NFS,直 接将其放到 NFS 里面;也可以使用 FTP;还可以使用串口) ,然后加载该驱动模块和卸载 该驱动模块,截图如下。 实验结果。5.1.2 实验 2:ADC实验内容: 编写 ADC 驱动程序 实验步骤: 在内核源码的“drivers/char/”目录下新建一个名为“wxl6410_adc1.c”的文件,在内核 源码中添加对 ADC 驱动的支持,修改同目录下的“Kconfig”文件。51无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋修改同目录下的“Makefile”文件。52无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋配置内核,然后输入 make menuconfig,然后配置如下。将其选择为“M” (模块) ,然后保存配置,编译出内核镜像烧写到开发板中。然后再使53无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 用命令#make modules ,然后编译出驱动模块,在内核目录下面的“drivers/char/”目录下 面,名为:wxl6410_adc1.ko,将其复制到开发板中(可以使用 U 盘中转;也可以使用 NFS, 直接将其放到 NFS 里面;也可以使用 FTP;还可以使用串口) ,然后加载该驱动模块和卸 载该驱动模块,截图如下: 实验结果:5.1.3 实验 3:LED实验内容: Led 驱动添加到内核。 实验步骤: 在内核源码的“drivers/char/”目录下新建一个名为“wxl6410_leds.c”的文件,在内核 源码中添加对 wxl6410_leds 驱动的支持,修改同目录下的“Kconfig”文件。54无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋修改同目录下的“Makefile”文件。配置内核,然后输入 make menuconfig,然后配置如下。55无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋将其选择为“M” (模块) ,然后保存配置,编译出内核镜像烧写到开发板中。然后再使 用命令#make modules ,然后编译出驱动模块,在内核目录下面的“drivers/char/”目录下 面,名为:wxl6410_leds.ko,将其复制到开发板中(可以使用 U 盘中转;也可以使用 NFS, 直接将其放到 NFS 里面;也可以使用 FTP;还可以使用串口) ,然后加载该驱动模块和卸 载该驱动模块,截图如下: 实验结果:56无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.1.4 实验 4:Button实验内容: button 驱动添加到内核。 实验步骤: 在内核源码的“drivers/char/”目录下有一个名为“wxl6410_buttons.c”的文件,修改同 目录下的“Kconfig”文件。修改同目录下的“Makefile”文件。57无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋配置内核,然后输入 make menuconfig,然后配置如下。将其选择为“M” ,然后保存配置,编译出内核镜像烧写到开发板中。实验结果:58无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.1.5 实验 5:IIC-EEPROM实验内容: IIC 驱动添加到内核。 实验步骤: 输入 make menuconfig,然后配置如下。59无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋将其选择为“Y” ,然后保存配置,编译出内核镜像烧写到开发板中。将驱动编译进内 核 make zimage,下载内核文件到感知 RF2 主板上。5.1.6 实验 6:touchscreen实验内容: touchscreen 驱动添加到内核 实验步骤: 输入 make menuconfig,然后配置如下。60无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋将其选择为“M” ,然后保存配置,编译出内核镜像烧写到感知 RF2 主板中。实验结果:5.2 基于感知 RF2 基础程序61无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.1 预备实验:设置超级终端请使用我们提供的 USB 转串口线连接感知 RF2 网关主板的 J33(3PIN 插座, 位于液晶屏 右侧,触摸按键的左侧)。根据 3.3 节介绍进行实验。5.2.2 实验 1:HELLO实验内容: 编写一个简单的 HelloWorld 程序;编写修改相应的 Makefile 文件。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 然后,使用命令行进行手工交叉编译示例程序。 #arm-linux-gcc –o hello main.c 或者借助编译脚本进行编译 #make 最后将生成 hello 可执行文件,使用 file 命令可以检查你生成的 hello 可执行文件是否 为 ARM 体系和格式版本,能在感知 RF2 主板上正常运行的可执行文件一般如图所示将编 译好的可执行文件下载到目标板目前主要四种方式: 第一种:复制到介质(如 U 盘)。 第二种:通过网络传送文件到感知 RF2 主板(推荐使用)。 第三种:通过串口传送文件到感知 RF2 主板。 第四种:通过 NFS(网络文件系统)直接运行。 实验结果:62无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.3 实验 2:LED实验内容: 编写一个简单的 LED 程序。 编写修改相应的 Makefile 文件。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果: 分别控制四个 LED 亮、灭。 ./leds 0 1 ./leds 1 1 ./leds 1 1 ./leds 1 1 ./leds 0 0 ./leds 1 0 ./leds 2 0 ./leds 3 063无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.4 实验 3:button实验内容: 编写一个简单的按键程序。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:5.2.5 实验 4:tty 串口实验内容: 感知 RF2 主板与 pc 机之间通过串口通讯。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 串口测试程序:ttytest 默认使用串口 2,即调试串口。 程序默认打开的端口是/dev/ttySAC2。采用回路测试,也就是你在终端下输入任意字符64无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 后,可以收到你输入的字符。 命令行测试方法:在终端下直接运行 ttytest 命令,实验结果:5.2.6 实验 5:IIC-EEPROM实验内容: 通过 IIC 读写 EEPROM。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 ./iittest 10 88 表示写 0x88 到 10 地址。 实验结果:65无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.7 实验 6:ADC实验内容: 通过 ADC 驱动读出光敏值。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 ./test 实验结果66无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.8 实验 7:FrameBuffer实验内容: FrameBuffer 中文译名帧缓冲,该设备提供了 LCD 控制器的抽象描述。它同时代表了 LCD 控制器上的显存,应用程序通过定义好的接口可以访问 LCD 控制器,而不需要知道底 层的任何操作。 该设备使用特殊的设备节点,通常位于/dev 目录,如/dev/fb*。他是一个字符设备,其 主设备号是 29,次设备号定义帧缓冲的个数。从用户的角度看,帧缓冲设备和其他位于/dev 下面的设备类似。通常,使用如下方式(前面的数字代码次设备号) : 0 = /dev/fb0 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 First frame buffer 使用 Linux 系统 FrameBuffer 驱动提供的 API 函数编写应用程序。67无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋实验结果: 实现在开发平台的液晶中间填充一块颜色。5.2.9 实验 8:C++实验内容: 编译和运行 C++ 程序 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:68无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.10 实验 9:time实验内容: 熟悉 Linux 定时器的使用,使用 Linux 定时器进行定时,定时值到后发出提示信息。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:69无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.11 实验 10:process实验目的: 掌握 Linux 多进程程序编写。 实验内容: 创建一个新进程后,打印各自的 PID 和 PPID。父进程须对子进程退出状态进行检测和 回收。 实验步骤: 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:5.2.12 实验 11:thread实验目的: 掌握 Linux 多线程程序编写。 线程是一种标准化模型, 它用于把一个程序分成一组能够同时执行的任务。 线程是一种 特殊的进程,常称之为轻量级进程(light-weight process)。一个进程的所有线程有独立的执行 线索和堆栈,但共享数据。使用多线程的应用程序,必须包含 pthread.h 文件,同时在链接 程序的时候加上-lpthread 参数。 实验内容: 创建两个线程,各自统计发生次数,主程序监测两个线程的返回值。 实验步骤:70无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 首先进入应用程序源代码目录“\实验文档和源码\例程\linux 应用程序实验\” 。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:5.2.13 实验 12:file实验目的: 掌握 Linux 下文件和目录的基本操作。 文件是 Linux 中非常重要的一个概念,目录也是一种特殊的文件。 实验内容: 在 ARM Linux 的程序运行目录下,创建一个写有内容的文本文件和一个空文件夹。 实验步骤: 首先进入应用程序源代码目录。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:71无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋5.2.14 实验 13:UDP实验目的: 掌握 Linux 下 UDP 通讯编程。 实验内容: 实现实验箱和宿主机 UDP 通讯,向主机发送一个字符串“210 UDP Experiment.”。 实验步骤: 首先在 PC 端运行。 ./listener进入应用程序源代码目录。 #make 得到执行文件,下载到感知 RF2 主板运行。 实验结果:72无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋./talker 192.168.3.204 192.168.3.204 为 PC 地址5.2.15 实验 14:TCP实验目的: 掌握 Linux 下 TCP 通讯编程。 实验内容: 实现实验箱和宿主机 TCP 通讯。主机(服务器)向实验箱(客户端)发送字符信息, 客户端将收到的字符信息打印出来,并统计字符个数。 实验步骤: 首先在 PC 端。 ./server进入应用程序源代码目录。 #make 得到执行文件,下载到感知 RF2 主板运行。 ./client 192.168.3.240 192.168.3.240 为 PC 端地址73无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 实验结果:5.2.16 实验 15:webserver实验目的: 掌握 Linux 下 Webserver 编程方法。 实验内容: 开发平台上构建一个静态 Web 服务器。 实验步骤: 首先进入应用程序源代码目录。 #make 得到执行文件,下载到感知 RF2 主板运行。74无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋实验结果: 在 PC 端 IE 上输入 192.168.3.241:81。192.168.3.241 为感知 RF2 主板 IP 地址75无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋第 6 章使用 Linux 开发物联网应用6.1 物联网概述把所有物品(包含人、动物、植物、物体等)通过射频识别、传感器等信息采集或识别 设备与网络(如互联网、3G 网络)连接起来,实现智能化应用和管理,这就是物联网。图 9.1 物联网物联网把新一代 IT 技术充分运用在各行各业之中,具体地说,就是把感应器嵌入或装 备到电器、电网、商品、终端、动植物、道路、桥梁、隧道、建筑、大坝、油气管道等各种 物体中, 通过物联网实现人类社会与物理系统的整合, 在这个整合的网络当中, 存在智能化、 处理能力超级强大的处理中心,能够对整合网络内的人员、机器、物品、设备和基础设施实 施实时的管理和控制, 在此基础上, 人类以更加精细和动态的方式管理生产和生活, 达到“智 慧”状态,提高资源利用率和生产力水平,改善人与自然间的关系。物联网的实现将能够提 供一种物我合一的生活境界。6.2 实验前准备在使用本章实验前,请用户阅读感知 RF2 硬件用户手册,对相关接口、开关、连接处 有充分了解。 1、 打开感知 RF2 后, 请根据配置清单检查各配件配置是否齐全。 如果与配置清单不符, 请与销售商联系。76无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 2、使用平台配置的电源(输出:直流 9V,mA)把网关主板与 220V/50M 电源连接起来。 3、 通过 USB 连接线把网关主板 (USB 接口) 与计算机连接起来。 为网关主板安装 USB 鼠标(4 个 USB Host 接口,用户可任选其一) 。通过 RS232 串口连接线把计算机与网关主 板(UART 接口)连接起来。5、打开网关主板电源开关。在网关主板液晶屏显示如下开机界面。系统开机界面6.3 系统自动测试实验见 2.2.2 节介绍。77无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋6.4 无线传感实验 6.4.1 移动网络 3G 实验6.4.1.1 实验目的使用感知 RF2 的网关主板的 3G 模块实验移动网络的传感实验,通过感知 RF2 的网关 主板的传感器采集数据,然后通过 3G 移动传输,实现远程监控。6.4.1.2 实验模块介绍感知 RF2 平台使用的 3G 模块是 SIM5218A,详细介绍请查阅“\感知 SensorRF2 教学参 考资源\3G_GPRS_GPS 模块”内介绍。6.4.1.3 实验组成整个 3G 信息传输管理系统由 3G 终端(感知 RF2 平台)、3G 网络、互联网、监控中心等 四部分组成。78无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋6.4.1.43G 实验准备工作在桌面上右击“网络邻居”?选择“属性”打开网络连接(如下图) 。双击“本地连接”在单击“支持”,就可看到 IP 地址(如下图) 。79无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋点击“开始”选择“运行”输入“CMD”,在 DOS 命令状态下输入“ipconfig /all”, 也可查看到本机 IP(如下图所示)。说明如果子网掩码(Subnet Mask)是 255.255.255.0,本机的 IP 是局域网分配的 IP 段(即 C 类 局域网 IP 地址), 也就是说本机的 IP 地址是局域网内的服务器(即路由器)分配的局域网内部 IP 地址,而非 Internet 网络 IP 地址。 由于在 Internet 上的网络是无法访问局域网内部 IP 地址, 因此需要对局域网内的服务器 (即路由器)作一定的设置。80无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 如果本机 IP 地址是非局域网内部 IP 地址,则可略去下一节路由器设置介绍。 下面以 H3C ER3200 为例介绍局域网服务器(路由器)的设置。 打开网页浏览器,在地址栏输入上一节查看本机 IP 地址时,所看到的默认网关(如本例 所介绍的“192.168.1.1”)在按 Enter 确定。 在输入“用户名”,“密码”后按确定键进入路由器设置界面。路由器设置界面(如下图) 。在 此 可 查 看 到 Internet 分 配 给 本 机 所 在 局 域 网 服 务 器 ( 路 由 器 ) 的 IP 地 址 (222.212.95.114) 。映射本机 IP 地址至服务器(路由器)的 IP 地址, 以便 Internet 能直接访问本机(即 NAT)。81无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 单击系统服务(在左边红色框中选项),选择虚拟服务器页面(如下图) 。在虚拟服务器页面中添加虚拟服务器,参数如下图假定为 8005 输入当前 PC 机本地 IP注:确定此端口号没有被应用程序使用。并记录下服务器端口号。输入完成后,按增加按钮 (如上图) 。 添加成功后,单击“确定”,保存设置。82无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋打开感知教学/开发平台 SensorRF2 平台主板电源开关,并打开网关软件选择“3G”图标,进入无线通信选择页面。 选择“服务器 IP”进行 IP 设置。 输入 IP 地址(此 IP 为前面介绍互联网分配给路由器内外网 IP,或直接互联网 IP 而非 局域网 IP) 。 选择“端口”进行端口设置。 输入端口号(此端口号为介绍 IP 映射时的端口号,如显示的 8005) ,如下图所示。83无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋注:此时不要点击“连接服务器” 。6.4.1.5 3G 演示内容打开演示软件,如下图所示,设置好端口,并打开端口开始监听,点击。84无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 在 3G 实验界面,选择“连接服务器”开始实验。此时注意检查 IP 及端口是否设置正 确,查阅 6.4.1.3 节介绍。 此时 3G 演示软件显示如下图所示。注:此时显示 IP 地址及端口是 3G 模块的 IP 地址及端口。先在节点树选择要设定的节点(如上图所示) 。在 RSS 曲线部分中的下拉选择框中选择 需要显示的曲线(如下图) 。点击“开始”按钮, 就可开始显示曲线了(注: 这时“开始”按钮将变为“关闭”按钮)。温度曲线显示图85无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋光敏曲线显示图为了使显示曲线效果明显,可以通过快速改变传感器值(如遮挡光敏传感器)来达到明 显效果。 点击“关闭”按钮,则曲线停止,但曲线不会消失,这时“关闭”按钮将变为“开始”按钮, 这时在点击“开始”按钮会弹出一格对话框(如下图)。清除曲线选择“是”则不清空曲线,继续在图上画曲线。选择“否”则清空曲线,再在图上画曲线。 点击“保存”按钮,可将曲线图以 RSS 格式的数据保存在电脑上(如下图) 。86无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋保存曲线点击“载入”按钮,可以载入保存了曲线数据的 RSS 文件,将曲线显示在曲线图上(如 下图) 。截入曲线要转到“设置与测试”只需单击“设置与测试”的标签(如下图) 。87无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋注:在转至“设置与测试”前,必须关闭网络通信内的曲线显示。通过 下面介绍各命令头含义。 读取从机温度传感器选择需要的设置及测试。RASWD 表示读取当前网关主板温度传感器值,选择“ 点击 读取从机温度值。”RASGM 表示读取当前网关主板光敏传感器值,选择“ 点击 读取从机光敏值。”88无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋TLD 表示控制当前网关主板 LED 灯(蜂鸣器右边 LED 灯 D7) ,选择 “ 控制从机 LED 灯状态。 ”,选择 ,点击89无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋6.4.3 低功耗 Wi-Fi 传感实验WI-FI 全称 Wireless Fidelity,其中 802.11b 标准,传输速度可以达到 11Mbps,另外它的 有效距离也很长,同时也与已有的各种 802.11 DSSS 设备兼容。6.4.3.1 实验目的使用感知 RF2 的网关主板的低功耗 Wi-Fi 模块 GS1010 实验移动网络的传感实验, 通过 感知 RF2 的网关主板的传感器采集数据,然后通过 Wi-Fi 移动传输,实现远程监控。6.4.3.2 实验原理GS1010 SoC 是一个超低功耗解决方案, 利用目前已经广泛部署的 Wi-Fi ( IEEE 802.11 ) 网络这一基础设施,可以任意部署我们的 Wi-Fi 传感器节点,而这些传感器节点与现有的管 理系统都可以无缝集成,包括企业网络管理系统,以及现有的 SCADA 工业和建设自动化系 统等。此外,芯片的电源管理功能提供多年的电池寿命。这样就为 Wi-Fi 许多新的应用产品 打开大门,因为可以降低成本,提高运营效率,是符合目前行业市场发展趋势的。 GAINSPAN GS1010 SOC 是一个真正的片上系统,它支持 802.11B/G 标准、内嵌两个 32 位 ARM7 处理器,一个实时时钟(RTC) ,一个电源管理单元,FLASH 和 SRAM 存储空 间,拥有多种 IO 外设并且支持定位算法。 应用举例: 工业电动机的监测:节省能源和提高效率。 楼宇:为了节省能源,改善室内空气质量,和安全。 食品和药物制造商:监测温度货物通过他们的供应链。 汽车制造厂:追踪车辆的生产过程。 炼油厂:以监控系统,在紧急情况下找到工作人员。 公用事业:自动抄表,监控基础架构设备,并直观的在家庭内部显示便于读取。 市民都会区:监察街及交通灯,并支持应急响应服务。 桥梁:在一个地震之后,自动检测该地区的桥梁设施的安全性,以迅速恢复正常运作。 采矿:为了准确地跟踪实时变动的矿工。 数据中心:监测和控制温度和能源用量。 医院:以跟踪和监控病人,轮椅,诊断设备,人员和工作人员的识别。 标签:跟踪和监测资产。90无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋详细参数如下: ? ? ? ? ? ? ? ? ? ? ? ? ? ? 无线协议: IEEE 802.11 b/g 兼容。 天线端口: 平衡电阻 100 欧姆。 射频工作频率: 2.4~2.497GHZ。 应用处理器: 32 位 ARM 单片机 工作时钟频率 44MHZ。 电源:1.8V 的供电电压。 实时时钟控制器/看门狗定时器:直接工作电池电压 1.2~3.6V。32khz 时钟振荡器。 可编程事件报警定时器。 I/O:GPIO、UART、I2C、SPI、PWM、ADC。 封装:10 毫米 x 10 毫米 x 0.85 毫米,102 针的双列 QFN 封装。 工业适用温度:0℃~70℃。 扩展温度:-40~85° C 。 ROHS(环保认证)。 软件: 固件驱动,嵌入式设备驱动程序, 嵌入式实时操作系统(RTOS),应用层 接口软件, 应用参考软件。 安全机制(802.11i):共享密钥身份验证(WPA2-PSK),AES 硬件加密。 标准:802.11i/k/e/d ,IEEE1588。6.4.3.3 路由器设置实验把无线路由器通过网线与计算机连接起来。 1.路由器设置 1)首先通过网线连接路由器到 PC 机。91无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 2)打开网页浏览器,在地址栏输入 192.168.3.1(根据不同路由器可能有所不同,请查阅 路由器使用说明书)在按 Enter 确定,将出现登陆界面3)输入用户名密码后将进入路由器设置界面,这时在左侧单击“无线设置”,进行无线网 络设置(如下图) 。4)将激活无线打上√,设置无线网络名(无线网络名为 GainSpanDemo) ,设置无线信道 (默认为 11) 。设置完后单击“保存设定”。 2.计算机 IP 地址设置 在打开 Wi-Fi 演示软件前,请先设置本地 IP,方法如下: 1. 在打开 Wi-Fi 演示软件的计算机的桌面上按照右击“网络邻居”?“属性”的顺序打开 网络连接。 (如下图)2. 双击“本地连接”在依次单击“常规”?属性?“Internet 协议(TCP/IP)”,如下图所示。92无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋93无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋3.将“IP 地址”改为 192.168.3.x(x=100~200)(计算机与无线路由器共同所在网段的 IP 段),默认网改关为 192.168.3.1(网段网关 IP)。6.4.3.4Wi-Fi 传感演示实验1、根据 6.4.3.3 节介绍,设置路由器及计算机 IP 地址。94无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋2、打开 Wi-Fi 演示软件,如下图所示。4、在 IP 端口处输入 8005,点击,运行演示软件开始监控 Wi-Fi 网络。注:此时注意计算机的防火墙及杀毒软件的设置,以防防火墙及杀毒软件对 Wi-Fi 演95无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 示软件的影响。 5、把 Wi-Fi 模块安插至网关主板的 Wi-Fi 模块接口上,并把右边开关拔向“ON”,其 它模块接口的开关拔向“OFF”。为 SensorRF2 网关主板连接符合要求电源。 打开 SensorRF 网关驱动软件在选择无线通信选择页面里选择 “Wi-Fi” 图标, 进入 Wi-Fi 实验界面。6、如下图在串口设置下设置好串口为 ttySAC0 之后,单击上面的,若弹出窗口显示“已成功打开/dev/ttySAC0”则表示打开串口成功,单击 OK。然后在下面的服务器模块 中请用户根据自己 PC 的 IP 地址和端口进行更改,修改之后单击设置服务器即可更改,感 知 RF2 主板上 Wi-Fi 模块上的红灯灭代表更改成功。右边的数据显示框中将显示芯片版本 数据等。7、此时 Wi-Fi 演示软件显示如下图所示。96无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋注:此时显示 IP 地址必须与网关液晶板上显示 IP 相同。 曲线显示先在节点树选择要设定的节点(如上图所示) 。在 RSS 曲线部分中的下拉选择框中选择 需要显示的曲线(如下图) 。点击“开始”按钮, 就可开始显示曲线了(注: 这时“开始”按钮将变为“关闭”按钮)。光敏曲线显示图为了使显示曲线效果明显,可以通过快速改变传感器值(如遮挡光敏传感器)来达到明 显效果。 点击“关闭”按钮,则曲线停止,但曲线不会消失,这时“关闭”按钮将变为“开始”按钮, 这时在点击“开始”按钮会弹出一格对话框(如下图)。清除曲线选择“是”则不清空曲线,继续在图上画曲线。选择“否”则清空曲线,再在图上画曲线。97无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋 点击“保存”按钮,可将曲线图以 RSS 格式的数据保存在电脑上(如下图) 。保存曲线点击“载入”按钮,可以载入保存了曲线数据的 RSS 文件,将曲线显示在曲线图上(如 下图) 。截入曲线设置与测试 要转到“设置与测试”只需单击“设置与测试”的标签(如下图) 。98无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋注:在转至“设置与测试”前,必须关闭网络通信内的曲线显示。通过 下面介绍各命令头含义。选择需要的设置及测试。RASGM 表示读取当前网关主板光敏传感器值,选择“ 点击 读取网关主板光敏值。”TLD 表示控制当前网关主板 LED 灯(蜂鸣器右边 LED 灯 D7) ,选择 “ 控制从机 LED 灯状态。 ”,选择 ,点击99无线龙科技集团2012 年夏季 通往物联网的桥梁 物联网世界先锋实验小结要成功完成这个实验,关键是要区分好感知 2 实验箱和你的实验电脑是两套不同的 软件;当你启动感知 2 实验箱的软件后,实验箱上的 ARM 处理器,就受控如实验电脑上的 嵌入式 WIFI 表演软件,当实验电脑发出各种命令时候,感知 2 实验箱主板执行这些命令, 通过嵌入式 WIFI 网络,将采集}

我要回帖

更多关于 主板蜂鸣器不响 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信