自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Fan Ruitian的博客

http://fanruitian.cn

  • 博客(27)
  • 资源 (5)
  • 收藏
  • 关注

原创 Java, C++同时实现SocketServer功能 程序比较

前面已经写了Java, C++同时实现SocketClient功能 程序比较,比较了java,c++写TcpClient程序的不同,今天比较TcpServer程序的不同分别用java,C++写了2个程序,程序实现功能相同,都是socket服务器通信,主要的功能就是对收到的数据进行转发。‘服务器转发模式在一些网络服务中非常常见,可以说是一些网络通信服务器的基础,它的通讯模式一般如下图:

2015-11-30 17:11:38 1815

原创 MFC tcpserver转发数据 编程思想

正常两个独立的类之间是不能相互访问的,如果一个类的对象想访问另一个类的对象中的方法或者成员,最容易想到的方法就是类里面创建静态方法或者静态成员,还有一种方法就是通过访问调用这2个类的类对象,例如在MFC中通过调用成员CTcpServerApp theApp;发现了一个更方便的方法,就是把当前对象的指针传给另一个类,这样在另一个类中通过指针可以随意的访问。以TcpServer为例,这个

2015-11-30 12:06:50 1591

原创 Java, C++同时实现SocketClient功能 程序比较

分别用java,C++写了2个程序,程序实现功能相同,都是socket通信,在Tcp的基础上对接收和发送的数据进行封装处理。UI尽可能的相同,如下图主要功能简介,以C++为例:1.连接到服务器后,当没有发现终端的时候,点击终端一行的按钮提示“还没有发现终端”2。发现终端后,自动添加终端的短地址到下拉框里面,点击按钮后,发送相应的指令,并且红字更新解释收到的信息

2015-11-27 14:32:33 1703

原创 MFC 在其他的类中引用Dlg类方法

不能直接引用,因为类方法是非static的。 ((CtcpclientDlg*)theApp.GetMainWnd())->addLog(str);

2015-11-27 09:33:09 3090 2

原创 MFC slider滑动条OnNMCustomdrawSlider(NMHDR *pNMHDR, LRESULT *pResult)事件

鼠标拖动滑动条的时候,触发事件OnNMCustomdrawSlider(NMHDR *pNMHDR, LRESULT *pResult)但是在窗体被其他页面遮挡重新显示在屏幕最前面的时候也会触发这个事件,例如最小化重新最大化的时候。网友对三种消息类型的解释:NM_CUSTOMDRAW,是子控件通知其父控件它已经完成重画功能,对Slider来说也就是我们每次鼠标按住滑块移动一下就

2015-11-26 16:21:35 6923

原创 MFC 修改对话框rc文件 资源符号 ID

修改工程目录下resource.h//{{NO_DEPENDENCIES}}// Microsoft Visual C++ generated include file.// Used by tcpclient.rc//#define IDM_ABOUTBOX 0x0010#define IDD_ABOUTBOX

2015-11-26 12:44:17 4606

原创 宽字符转 Byte WideCharToMultiByte

1.定义函数int CtcpclientDlg::WChar2MByte(LPCWSTR srcBuff, LPSTR destBuff, int nlen){ int n = 0; n = WideCharToMultiByte(CP_OEMCP, 0, srcBuff, -1, destBuff, 0, 0, FALSE); if (

2015-11-25 14:18:57 840

原创 java array数组是不是类

参考oracle官网:https://docs.oracle.com/javase/tutorial/reflect/special/array.htmlArraysAn array is an object of reference type which contains a fixed number of components of the same type; the

2015-11-25 11:08:09 1046

原创 zigbee网关 CC2530 zstack用手机显示终端传来的lm75a温度传感器的值

参考zigbee网关 zstack CC2530添加温度传感器lm75a,下载相应的代码到协调器和终端,上电参考zigbee网关 android客户端编写温度计功能,打开手机客户端打开服务器软件:打开pc客户端,用于检测内容温度上升是因为刚刚用手摁了一会。android手机点击开始连接按钮,不知道什么原因,点2次才能点上成功

2015-11-20 13:33:48 1265

原创 zigbee网关 android客户端编写温度计功能

参考如何在Android手机上画温度计?但是不符合想要的需求。需求是温度是外界控制的,通过tcp传进来的;并且温度计的量程也太小了,最好在室温以内;最好能添加显示当前温度;温度计你最好在画面中间显示;经过修改后的画面如下:布局文件:<manifest xmlns:android="http://schemas.android.com/apk/res/android

2015-11-20 13:15:22 1969

原创 zigbee网关 zstack CC2530添加iic温度传感器lm75a

lm75a已经裸机驱动起来,下一步准备添加在zstack中zigbee网关 cc2530裸机驱动温度传感器LM75A把iic.c, iic.h, lm75a.c, lm75a.h拷贝到zigbeeGateWay工程中的source目录下右击app选择添加source把iic.c和lm75a.c添加进来在协调器的workspace中分别选中iic.c和lm75a.c右击选择option把

2015-11-19 16:40:47 4638 2

原创 zigbee网关 cc2530裸机驱动温度传感器LM75A

LM75A,数字温度传感器,IIC接口,读取简单,只需要读取2个寄存机的值就可计算出来温度手里里有个贴片的LM75A,在一块废弃的pcb板上利用0805电阻脚把lm75a的sda和scl脚焊好,其它的引脚用插针焊好现在lm75a对外有4个引脚,分别是VCC,GND,SDA,SCL把5,6,7,8,脚焊在了一起,这样根据pdf介绍它的iic地址为1001111,即

2015-11-19 15:48:48 3215

原创 zigbee网关 CC2530 zstack用手机控制1602显示

在zigbee工程里面ZigbeeGateWay.h增加一个CLUSTERID#define ZIGBEEGATEWAY_LCD_UPDATE_CLUSTERID 9这样CLUSTERID的数量变成了9个#define ZIGBEEGATEWAY_MAX_CLUSTERS 9在ZigbeeGateWay.c的全局静态变量初始化也应该相应的改一下

2015-11-18 16:34:59 3643 1

原创 zigbee网关 android客户端添加设置液晶显示功能

现在layout里面添加一个edittext和button用于填写lcd将要显示的内容和发送按钮 <EditText android:id="@+id/textlcd" android:layout_width="match_parent" android:layout

2015-11-18 10:58:30 1480

原创 Zigbee网关 cc2530 zstack添加1602驱动

1602的驱动已经写好了,但是发现不怎么稳定,走了很多弯路,一直以为是自己的指令没有用好,最后实在没辙放出了大招,用逻辑分析仪查看波形,发现波形很乱,尤其是E的下降沿之后的延迟时间非常短,因此简单的进行了修改修改的主要位置是函数 void LCD_en_write(void) { //EN由高电平跳变到低电平时液晶使能 LCD

2015-11-17 18:08:41 2729 4

转载 解决CC2540 XDATA内存不足

Reference:http://e2e.ti.com/support/low_power_rf/f/538/t/95098.aspxhttp://blog.sina.com.cn/s/blog_4c8287230100d5hx.htmlhttp://e2e.ti.com/support/low_power_rf/f/538/t/163680.aspxhttp://www.

2015-11-17 10:55:39 1549

原创 Zigbee网关 CC2530驱动1602显示屏

根据文章zigbee网关 CC2530网关开发板之终端开发板可用的IO点击打开链接目前开发板可用的IO为P0_4,P0_5,P0_6,P0_7 -- 空P1_0,P1_1,P1_2 -- 空而1602的管脚为明显IO不够用,为了能够驱动决定采用4线驱动为了尽可能的减少杜邦线的数量,我对我对1602进行的改造偏压信号用电阻分压的形式直接

2015-11-16 13:55:03 6386 1

原创 zigbee网关 CC2530网关开发板之终端开发板可用的IO

CC2530网关开发板之终端开发板可用的IO插针引出了P0与P1,但并不是每个IO都可以随意当做用户IO使用的,其中P0:P0_0,P0_1 -- led灯,led指示灯,若设置输入,led指示灯对此io弱上拉P0_2--PL2303 TXDP0_3--PL2303 RXDP0_4,P0_5,P0_6,P0_7 -- 空P1:P1_0,P1_1,

2015-11-16 10:55:48 2826

原创 Zigbee网关 Zstack开启AES加密

1.将f8wConfig.cfg文件中设置为-DSECURE=1,2.将ZGlobals.c中的uint8 zgPreConfigKeys = FLASE;修改为uint8 zgPreConfigKeys = TRUE.3.准备一个key,这个可以在函数nwk_global.c中修改:CONST uint8 defaultKey[SEC_KEY_LEN] ={#if defined

2015-11-13 13:31:20 3047

原创 STM32 FOC SDK 上电电机自动旋转

默认的STM32F  FOC SDK提供的工程文件下载到STM32以后不会电机不会自动转,想要让电机转,必须通过串口上位机ST Motor Control Workbench这个软件想要电机上电自动旋转,需要在main函数里面调用电机启动函数UI_ExecCmd (oUI, MC_PROTOCOL_CMD_START_MOTOR);根据UM1052 User man

2015-11-12 13:28:01 9462 1

原创 Zigbee网关 上电时Zstack串口乱码

Zstack定义定义宏ZTOOL_P1的时候,系统开机的时候回输出一串乱码,用16进制显示试试乱码的十六进制字符串是 FE 06 41 80 01 02 00 02 04 00 C2 后经查找该字符串找到原因,这时开机的时候系统认为上次重启ZTOOL返回的状态信息见http://www.ti.com.cn/cn/lit/an/swra444/

2015-11-11 13:22:13 2185

原创 Zigbee网关 Zstack增加串口功能2-修改应用层APP/ZigbeeGateWay.c

1.定义串口消息结构体typedef struct{ osal_event_hdr_t hdr; uint8 data; // } UartRx_t;2.在初始化函数中添加 MT_UartInit (); // SPIMgr_RegisterTaskID( task_id ); MT_UartRegisterTaskID(ZigbeeGateW

2015-11-11 10:03:03 1895

原创 Zigbee网关 Zstack增加串口功能1-修改底层驱动MT/MT_UART.c

ZigbeeGateWay工程协调器用了串口, 对于协调器,uart接到了P1口(USART1),P0口用作跟以太网芯片通讯。P1_6 --> TXDP1_7 --> RXD这正好与zstack定义宏ZTOOL_P1初始化的串口的引脚相同

2015-11-11 09:38:07 5452

原创 Zigbee网关作为tcpclient示意图

注意:服务器的IP打错了。应该是192.168.1.254更多资料请参考 http://web.nenewind.com/upload/read.php?tid=14

2015-11-10 14:06:27 2502

原创 能用微信控制的插座SmartSwitch 0.1 开源手册

2、SmartSwitch0.1硬件2.1、SmartSwitch0.1 PCB1、  COM:220V公共端2、  IN:220V输入端3、  OUT:220V输出端4、  P2插针:无短路帽:正常运行模式和模块lua文件下载模式有短路帽:固件下载模式5、  P1插针:         TX,GND,RX,+5V为下载串口,固件等通过此

2015-11-10 13:13:28 6707

原创 zigbee网关 利用现有的网络实现全球控制

一、测试WAN口IP是否是独立IP利用现有的网络实现全球控制首先有一个大前提,就是您的网络服务商提供的IP是真正独立的IP,不是类似小区那种局域网IP。 请按如下方法测试您的IP是不是真正的独立IP。1.打开路由器配置主页查找wan口IP,并记下来。我测试用的路由器是最普遍的比较低等的wr340G,测试用的宽带是中国联通电话线ADSL,查看路由器的IP是 119.X

2015-11-06 10:58:11 2158

原创 Zigbee有线网络转zigbee网关API

1.1编译选项对话框的位置1.在项目名称是右击选择options2.找到C/C++ Complier选项卡,通过单击右侧红方框的右箭头找到Preprocessor,在Definedsymbols中就是需要增加的宏,每个宏一行以回车代表当前宏结束,有关ZStack的宏的说明请参考\ZStack-CC2530-2.4.0-1.4.0\Documents\Z-Stack Compil

2015-11-05 16:13:14 4957

thinkandroid源码

2017-04-26

Sitronix ST7920 12864液晶资料

12864液晶,ST7920驱动资料

2015-12-09

SocketServer

SocketServer实现数据转发,java,C++程序

2015-11-30

Zigbee终端控制台

Zigbee终端控制台,相同的程序分别用c++和java编写

2015-11-27

android客户端源码ZigbeeClient.rar

用此APP控制zigbee网关,包含源码

2015-11-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除