只需java编程,就可实现工业自动化控制的Android工业平板电脑开发

产品特性

品牌:深圳扬创科技有限公司
液 晶 屏:10.4" TFT真彩液晶屏(4:3比例),分辨率 800×600
触摸规格: 100万次以上(笔尖0.8m㎡打键荷重250克力,打键速度2次/秒)
中央处理器:Cortex A8 嵌入式ARM低功耗CPU,主频1G Hz
内  存: 512MB DDR2 SDRAM
存储设备:512MB Flash电子盘
扩展存储: SD卡存储最大支持扩展到32G

实测功耗:4.68W (未接任何外设,12V输入,实测390mA);
电源输入:DC 9V-24V宽压输入,建议DC 12V或者24V输入;

接  口:
2路RS-232接口;(带隔离),,1路调试串口RS-232(可开放给客户使用)
1路RS-485接口;(带隔离)
  2路USB 主口;
1路USB 从口;
1路网络接口;
8路 24V IO输入,带光电隔离;(选配)
8路 24V IO输出,带光电隔离;(选配)

其它:
内置RTC实时时钟(可断电保护)
看门狗管理(可调节看门狗时间)
内置蜂鸣器,提供函数控制发声;
防浪涌、防雷击、防反接、过流保护、宽电压;
应用环境
工作温度:-10℃-60℃
存储温度:-20℃-70℃
工作湿度:20%RH –95%RH,不可结露
产品规格
结  构:工业塑料结构
安  装:嵌入式
重 量: 1kg
1.3 软件规格
Android系统4.0.3版本,Linux内核版本采用3.0.8。
在ePC-A中编写应用程序,需要用到光盘中的库文件libycapi.so(在文件系统/system/lib下面存放有此文件)和com文件夹(为了用户使用方便和快速进入开发,编写了类文件YcApi.java),位置:光盘目录“testApp”->“ycapi”。用户使用Eclipse新建一个工程后,库文件的具体调用方法如下:
(1)在工程根目录下会生成一个libs目录,然后进入libs目录,在下面创建armeabi目录,拷贝光盘中提供的libycapi.so到armeabi目录下。
(2)拷贝光盘中提供的com文件夹到工程的src目录下。使用eclipse打开工程,选中工程,按F5刷新即可看到库文件和com文件夹已经添加到工程当中。
(3)库文件中函数的引用
引用库文件的接口,首先要在代码中导入YcApi类:



然后就可以直接调用YcApi提供的Api函数。例如调用蜂鸣器打开可以用:

2.4.1设置背光的功能
(1)booleanSetBackLight(int dx)
说明:设置背光亮度函数
参数:
intdx: 亮度从0~255,亮度依次增加。
(2)int GetBackLight()
说明:得到当前的背光亮度
参数:无
返回值:返回值为当前的背光亮度值
2.4.2看门狗功能
(1)int SetWDog(byte timeInterval)
说明: 设置看门狗超时值
参数:byte timeInterval:这里的范围是 0 < timeInterval <= 30 ,单位是秒 
(2)int StartWDog()
说明: 启动看门狗
参数:无 
(3)int FeedWDog()
说明:喂看门狗
参数:无 
(4)int StopWDog()
说明: 停止看门狗
参数:无
2.4.3蜂鸣器开关功能
intSetBeep(boolean flag)
参数说明:
booleanflag:蜂鸣器打开:true
蜂鸣器关闭:false
2.4.4状态灯功能
ePC-A产品前面板总共有三个灯,此处控制的是中间的灯。
int SetLed(boolean flag)
参数说明:
booleanflag:状态灯打开:true
状态灯关闭:false
2.4.5 EEPROM读写功能
(1)String ReadE2PROM(intsubaddr, int len)
参数说明:
int subaddr:读的地址,0-255
intlen:读到的字符串
(2)int WriteE2PROM(int subaddr, String buf, intlen)
参数说明:
int subaddr:写的地址,0-255
String buf:
int len:写的字符串
Note:最大长度是255个字节
2.4.6进入系统后的开机画面更新功能
boolean UpdateLogo(int flag)
参数说明:
intflag:0:代表更新的是u盘中的logo,1:代表更新的是sdcard中的logo
注意:这里更新的logo是andorid启动时运行的动态logo,logo名称必须是bootanimation.zip,并且必须放在U盘或者SD卡的根目录。
2.4.7串口的打开和关闭
(1)FileDescriptor openCom(String path, int baudrate ,int databit,int paritybit,int stopbit)
参数说明:
a)String path:
ycapi.ttySAC0 :打开串口0,此串口为标准串口
ycapi.ttySAC1 :打开串口1,此串口为标准串口
ycapi.ttySAC3 :打开串口3,此串口为RS485
ycapi.ttySAC2 :串口2为DEBUG调试串口,供内部测试用

b)int baudrate:波特率
110 300 600 1200 2400 4800 9600 14400 19200
38400 43000 56000 57600 115200 128000 256000:代表支持的波特率
c)int databit: 数据位
5 6 7 8 : 代表数据位
d)int paritybit:校验位
这里默认是0(无校验),暂时不支持其他校验方式
e)int stopbit: 停止位
1 2 :代表停止位为1 和 2
返回值:FileDescriptor:返回打开串口的文件句柄,为Java的读写函数提供句柄参数。
(2)void closeCom()
说明:关闭串口
参数:无
用户编写串口程序时需要用到上面的函数来打开和关闭串口,串口的读写使用Java标准的文件输入输出流,如下图所示:


2.4.8 IO输入输出功能(此功能选配)
总共有16路IO口,默认配置为8路输入和8路输出。
(1)8路输出
boolean SetIO(int level , int ioNum);
参数说明:
int level: 0:低电平 1:高电平
int ioNum: 0-7 (分别代表要输出的IO口号:OUT0~ OUT7)
(2)8路输入
a) boolean SetIoMode(int ioNum,int ioMode ,int triggeredMode)
参数说明:
intioNum: 0-7 :分别代表要设置的IO口号:IN0 ~ IN7;0xf:代表设置所有的8路输入口为某种方式。
intioMode: IO_POLLING_MODE(查询模式)
IO_INTR_MODE (中断模式)
inttriggeredMode: IO_INTR_LOW_LEVEL_TRIGGERED 低电平触发
IO_INTR_HIGH_LEVEL_TRIGGERED 高电平触发
IO_INTR_FALLING_EDGE_TRIGGERED 下降沿触发
IO_INTR_RISING_EDGE_TRIGGERED 上升沿触发
IO_INTR_BOTH_EDGE_TRIGGERED 双沿触发
函数说明:
SetIoMode是设置8路输入口的接收方式,分为查询方式和中断方式,可以对每一个口单独配置为查询或者中断。
在配置为查询模式后此函数的第三个参数不起作用,可以设置为任意的整数。
在配置为中断模式后此函数的第三个参数来设置中断触发的模式,总共分为以上5种。
注意:系统中默认使用的8路输入IO口全是查询模式,可以通过以上函数设置为中断方式。 
b) int GetIO(int ioNum,int flag) 
参数说明:
int ioNum 0-7(分别代表要得到的IO口号:IN0 ~ IN7)
intflag: IO_POLLING_MODE(查询模式)
IO_INTR_MODE (中断模式)
返回值说明:
int:返回值是参数ioNum对应的IO口的高低电平。
c) 8路输入IO口使用说明
查询模式:系统默认8路输入IO全是查询模式,所以如果用户不需要中断模式,则可以直接通过GetIO函数来得到相应输入口的值为高电平还是低电平,不需要用到SetIoMode函数。
中断模式:系统默认8路输入IO全是查询模式,所以如果用户需要中断模式,则需要通过SetIoMode函数来设置相应IO口为中断模式,并且设置相应的中断触发方式。设置完成后,新起一个线程,调用GetIO函数,没有来中断之前一直阻塞,一旦系统收到中断,立即返回。
注意:以上所有函数的具体详细的用法,请参看光盘中的示例源码,目录:光盘/测试例程/ testApp / ychmi /
2.4.9有线网络的Mac地址设置
boolean SetMacAddr(String macAddr)
参数说明:
String macAddr:物理地址的设置,例如:00:09:c0:ff:ec:48
2.4.10命令调用功能
boolean SendCmd(String cmd)
参数说明:
String cmd:命令行的输入,例如:cp aa /data/local,就可以拷贝aa到/data/local目录下,无须考虑root权限问题。
2.4.11获得设备ID
importandroid.provider.Settings.Secure;
调用下面的函数得到ID,必须引用上面的文件。
Secure.getString(getBaseContext().getContentResolver(),Secure.ANDROID_ID)
返回值:
String类型的设备ID。
注意:此函数是Android的标准API函数,无须调用扬创的封装库(libycapi.so)来执行。
2.4.12隐藏和显示状态栏
Android4.0以上对平板全屏没有相应的支持,扬创为你提供了两种方式来支持你的应用全屏显示。
(1) 发送广播消息来显示和隐藏状态栏
隐藏状态栏:
sendBroadcast(new Intent("android.intent.action.HIDE_STATUS_BAR")); 
显示状态栏:
sendBroadcast(new Intent("android.intent.action.DISPLAY_STATUS_BAR"));
(2) 全屏隐藏状态栏
首先在全屏应用的AndroidMainfest.xml中的语句android:theme中添加Fullscreen

你可能感兴趣的:(只需java编程,就可实现工业自动化控制的Android工业平板电脑开发)