C语言梆定ActiveX事件

我的博客里写的关于C语言访问COM的一些文章帮助了一些朋友,感到非常高兴。最近有几个朋友发邮件问过我C梆定ActiveX事件的方式,解答后感觉好像也有段时间没有写文章了,所以就详细地来写一篇关于C梆定和监听ActiveX事件的文章。 对C访问COM不是很了解的朋友,可以看我博客里的这些文章: C语言使用ActiveX控件 C语言访问Windows COM组件函数 本文链接: http://www.hoverlees.com/blog/?p=1793

RTL8019as的网络接口选型

最近打算做新的网络控制板,总结了以前做的RTL8019as网络板子,觉得常用的RTL8019as+20F001N+RJ45比较占用空间,所以就尝试去寻找集成网络变压滤波的RJ45接口。而RTL8019as我还有很多库存,所以它是必用芯片。 以前用过HanRun的HR911105A,知道这是一种集成的接口,但不知道它能否用于RTL8019as。所以就下了HanRun的文档来看,从文档中可以看出它的结构: 果然是集成了网络变压器的,同时它还集成了led,很不错。为了确保它能否支持rtl8019as,我再看了20F001N的文档,它的电路图确是如下结构:

Ejecta

最近发现一个类似于cocos 2D的游戏引擎,Ejecta,它是一个使用JavascriptCore加上OpenGL和OpenAL实现HTML5标准的canvas和audio元素的游戏引擎,可以让HTML5游戏高速地跑在手机平台上,目前有支持ios和andoroid和windows平台的版本。 该引擎只支持HTML5的canvas和audio,使得系统变得小巧,对canvas的支持比较丰富,同时支持2D和WebGL的API。 Ejecta使用MIT Open Source License,这就意味着使用授权比较宽松,几乎可以做任何使用。 官方地地址 http://impactjs.com/ejecta github地址 https://github.com/phoboslab/Ejecta https://github.com/yoyeung/Ejecta-android https://github.com/Wizcorp/Ejecta-X

DS1302使用心得

第一次使用时间芯片,选的DS1302,原因是在一个电脑主板上看到的,纽扣电池和圆柱晶振(32768)连接的芯片就是这个,估计它就是时间芯片了,网上一搜,果然是它,就决定用它了。32K的晶振在以前的电子表上也很常用,所以很容易想到它连接的芯片可能是时间芯片。 驱动编写也挺顺利,毕竟总线通信时序简单。只是在调试时遇到CPU经常拿到的秒数为85的情况,通过延长CLK切换时间可以有点效果,但效果都不明显,最后觉得可能是IO总线变化太慢导致,从而给IO总线加了一个10K的上拉电阻,果然效果很好,立马解决了时间读到85的问题。 另外值得一提的是DS1302手册中提到秒的字节最高位为芯片工作开关,当最高位为1时,芯片不工作,最高位为0时,芯片开始计时。一开始通电时,读到的秒数最高为1,这时需要将最高位设置到0,DS1302就会开始计时了。 DS1302可以用纽扣电池,保证在断电时仍然计时。

PHP的Ajax跨域转发程序

Ajax有一个安全特性就是跨域访问的限制问题,虽然有很多解决的方法,但都没有使用代理的方式简单。 后来发现一个更简单的,就是给chrome浏览器添加 –allow-file-access-from-files –disable-web-security 启动参数,即可实现关闭安全检查的功能。 它的这个特性过份到访问同一个域下的不同端由都做了限制。有时候做测试开发很不方便。所以我就自己写了一个php的代理程序,由php接收ajax请求并转发到其他域的服务器,并将结果返回。 proxy.php代码如下:

nodejs的纯js版websocket服务器程序

nodejs使得做客户端的人也可以做服务器开发,比较可惜的是目前HTML5客户端支持的WebSocket协议nodejs自身不支持。不过也有很多完善的模块提供使用。 我写这个模块的目的只是为了体验下nodejs的服务器开发而已,打算自己以后写得玩的就用这个算了。其中websocket.js是Websocket服务器模块,server.js是测试代码,跟以前写的一样,模块不支持大于65535的数据包发送和接收。 首先是server.js,用法跟客户端类似: