void send_data( long data)
{
SBUF=data;
while (TI== 0 );
TI= 0 ;
}
data是一个16位数,这个程序发送有问题吗?

这样怎么行啊。SBUF是8位的你发16位的。。。建议你分两次发,首先发高8位,然后发低八位,接收到后吧高8位向左移8位即A<<8。。。B是低8位这样就出来了DATA=A<<8|B.

有问题 SBUF寄存器是8位的 分2次才可以

一般来说你何必要这么发送呢,采用一个char型的8位数不是更好吗?
但是不一定出错,很多单片机都提供了促发传送的功能,也就是说,有一个FIFO队列,你可以一次写入2个或4个字节,这样的话就可以提高传送的效率和速度了,现在的单片机一般都带这个功能,所以说对于错很麻烦,光看这点东西是不行的

相当有问题,这么一来data的高8位被自动截掉了,确实得要分两次 ,如:对于1000,0XE8---低8位,0X03---高8位!


U8 a,b;
U16 c;
a = c|0x00ff;
c >>= 8;
b = c|0x00ff;
点击在新窗口中浏览此图片



00000011  :高位 十六进制:3  十进制:3
11111101  :地位 十六进制:FD  十进制:253

十六进制的高位+十六进制的低位 = 3FD  ===》转为:十进制等于:1021
1021/2047*70-10 = 24.91450903度



temp_value_height = ((temp_value >> 8) & 0xff) &0x7;

解释:
回忆未来(372647693)  19:09:29
我学php的。哈哈
石涛(47957728)  19:09:36
temp_value >> 8, 将高八位移位到低八位
回忆未来(372647693)  19:09:50
那低八位到哪儿去了?
石涛(47957728)  19:09:59
那个你就不用管了
石涛(47957728)  19:10:03
因为你不需要
回忆未来(372647693)  19:10:10
嗯,然后呢?
回忆未来(372647693)  19:10:30
& 0xff  ??
石涛(47957728)  19:10:31
& 0xff是将现在的数值的高8位清0
石涛(47957728)  19:11:01
& 0x7,就是取现在的数的低3位
回忆未来(372647693)  19:11:03
也就是刚才高八位移到低8位后高还是有东西的?
石涛(47957728)  19:11:56
因为移位之后是将原来的24~16位的移位到8~15了
石涛(47957728)  19:12:18
如果你的temp_value是个32位数的话








http://zhidao.baidu.com/question/110038192.html
36转十六进制是多少?
验算怎么验?全要过程?
36 除以 16 等于 2 余 4  
故 24H

验算过程

2乘以16的一次方 加上 4乘以16的0次方 等于 36.
当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信


一、串口通信原理 串口通讯对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。
提示某个位置的xml文件有问题,到目录下一看:
C:\Documents and Settings\jackxiang\Application Data\Adobe\Dreamweaver CS4\zh_CN\Configuration\Workspace
重新命名:
Designer Compact.xml
新名字:
Designer Compact.xml.bak

然后,重新绿化了下,相当于把那个文件给重新生成了一次,再打开,O了!

编辑器之痛

WEB2.0 jackxiang 2010-3-25 19:17
#ZendStudio# 太重, #Editplus# 太丑, #Notepad++# 不支持sftp, #sublime# 没有PHP代码补全; #Textmate# 不能正常显示中文, #Espresso# 远程写文件错误没有反馈, #coda# 不能折叠代码.这个世界就不能有一个完美点的编辑器么 ..
语法:
const char *c_str();
c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同.
这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。
注意:一定要使用strcpy()函数 等来操作方法c_str()返回的指针
比如:最好不要这样:
char* c;
string s="1234";
c = s.c_str(); //c最后指向的内容是垃圾,因为s对象被析构,其内容被处理

应该这样用:
char c[20];
string s="1234";
strcpy(c,s.c_str());
这样才不会出错,c_str()返回的是一个临时指针,不能对其进行操作

再举个例子
c_str() 以 char* 形式传回 string 内含字符串
如果一个函数要求char*参数,可以使用c_str()方法:
string s = "Hello World!";
printf("%s", s.c_str()); //输出 "Hello World!"
在浏览器输入 g ,然后按下shift+回车即可。,我用chrome浏览器,直接在地址栏输入就可以搜索,现在呢?.hk能访问啊。可能不行了喔!
点击在新窗口中浏览此图片
linux 串口读取数据被截断,怎样一次全部接收?阅读全文
原创  端口扫描程序实现原理 收藏

以前看过很多网络相关方面的程式源码, 但时间长了都忘了怎么实现的了, 因此,想将以后看过的源码实现方式记录下来, 以免下次再得找资源!

其实端口扫描程式的原理很简单, 利用socket连接指定IP的端口, 根据其返回值就可以得知目标机器是否开启了这个端口,

实现步骤如下:

1. 创建socket

    c_socket = socket ( AF_INET, SOCK_STREAM, 0 );
    if ( c_socket == SOCKET_ERROR )
    {
         printf (" create socket fault!\n ");
         return -1;
    }
2. 连接目示机器

    struct sockaddr_in remoteaddr;
    struct hostent*    remotehost;
    remoteaddr.sin_family = AF_INET;
    remoteaddr.sin_addr.s_addr   = inet_addr ( Address );
    remoteaddr.sin_port          = htons ( cPort );

    //连接
    if  ( connect ( c_socket, (SOCKADDR*) &remoteaddr, sizeof ( struct sockaddr_in ) ) == SOCKET_ERROR )
    {
         printf ("< %3d >  connect port %5d  ...\n",ThreadID,cPort ) ;
         closesocket( c_socket);
         return -1;
    }
    closesocket( c_socket);

    printf ("< %3d >  connect port %5d  succeed\n",ThreadID,cPort ) ;

也可以利用多线程技术实现, 只要给每个线程分配好指定的扫描端口段就可以了

来源:
http://blog.csdn.net/study_live/archive/2009/09/28/4604673.aspx

RSA算法是一种基于公钥和私钥的加密算法, 是由Ronald Rivest, Adi Shamir和Len Adleman三人在Diffie-Helman指数密钥交换算法的

基础上于1977年设计出来的,Rivest设计的加密系统利用了数学领域的一个事实,那就是虽然把两个大素数相乘生成一个合数是件很容易

的事, 但要把一个合数分解为两个素数却十分困难。
RSA的安全性依赖于大数分解,公钥和密钥都是两个大素数(大于100个十进制位)的函数。据猜测,从一个密钥和密文推断出明文的难度

等同于分解两个大素数之积。
密钥对的产生,选对两个大素数p和q,计算
    n=p*q
然后随机选择加密密钥e, 要求e和(p-1)*(q-1)互质,最后,利用Euclid算法计算解密密钥d,满足
    (e*d) mod ((p-1)*(q-1))=1
其中n和d也要互质, 数e和n是公钥,d是私钥.现在两个素数p和q可以丢弃不再需要,不要让任何人知道.
加密信息m(二进制表示)时,首先把m分成等长数据块m1,m2....mi,块长s,其中2^s<=n, s尽可能地大.对应的密文是:
    ci=mi^e (mod n)            (a)
解密时作如下计算:
    mi=ci^d (mod n)            (b)
RSA可用于数字签名,方案是用(a)式签名,(b)式验证.具体操作时考虑到安全性和m信息量较大等因素,一般先作hash运算.

RSA算法示例:
(1) 选择两个素数:p=7, q=17
(2) 计算n=p*q=7*17=119
(3) 计算φ(n)=(p-1)*(q-1)=96
(4) 选择e,e为φ(n)=96的相对素数,要比φ(n)小,本例中e=5
(5) 决定d,使(d*e) mod 96=1,且d<96,正确值为d=77,因为77*5=385=4*96+1.

结果密钥为公钥KU={5, 119}和私钥KR={77, 119}
如输入明文M=19,使用以上密钥加密:
    ci=M^e (mod n)
      =19^5 mod 119
      =2476099 mod 119
      =66
解密由66^77 mod 119=19决定.

《黑客防线---口令破解与加密技术》笔记
来源:http://blog.csdn.net/study_live/archive/2009/12/19/5038828.aspx
这个哥们写的邮件的分析很不错,转载自:http://blog.csdn.net/study_live/archive/2010/01/09/5163639.aspx

阅读全文
             i386,i586,i686几个概念之区分
这几个数据希望能结合rpm包名称考虑,不然会失去有些文字的表达意义。
i386—几乎所有的x86平台,不论是旧的pentium或者是新的pentium-iv与k7系统cpu,都可以正常工作,i指得是intel兼容的cpu,至于386就是cpu的等级。
i586—就是586等级的计算机,包括pentium第一代mmx cpu,amd的k5,k6系统cpu(socket7插脚)等cpu都是这个等级。
i686—pentium 2 以后的intel系统cpu及k7以后等级的cpu都属于这个686等级。
noarch—代表跟硬件体系结构无关。不管是 x86、powerpc,sparc 或者 alpha 系统。
本贴来自天极网群乐社区--http://q.yesky.com/group/review-17826846.html

/usr/ports/misc/cpuid下:
sudo make install clean
后,安装成功后,如何删除此软件呢?因为并没有看到温度。
cd /usr/ports/misc/cpuid
sudo make deinstall

安装Ports成功步骤:



portsnap fetch update.  #https://blog.csdn.net/richardfjf/article/details/106961150
You must run 'portsnap extract' before running 'portsnap update'.

/usr/ports/x11/yeahconsole/
mkdir: /usr/ports/x11: No space left on device
tar: could not chdir to '/usr/ports/x11/yeahconsole/'



1、如何只抓取 tarball?阅读全文


ZMD推出温度传感器 快速响应时间达到0.8s:
TSic具有快速响应时间(63%温度范围内为0.8s,采用SOP-8或e-line封装),3s之内可精确测出水温。用户定制的TSic COF器件测试周期仅为4ms。



http://www.mikrocontroller.net/attachment/27605/tsic.c

德国资料:
TSic 506 FeatureSheet
TSic 506 DataSheet
http://www.zmdi.com/index.php?id=127&L=4


阅读全文
秒的时间转年月日,及年月日转秒的方法互转:
一:PHP date函数参数详解,把时间年月日,变月日年的示例:


二:时间由秒转换成年月日,时分秒的方法:

阅读全文
Google是与众不同的。它的独特不仅仅表现于革新的思维和充满创意的应用 (比如那个大堂里的地球模型),更在于其有别常规的IT策略……

  加利福尼亚州山景城(Mountain View)Google公司(Google,下称Google)总部有一个43号大楼,该建筑的中央大屏幕上显示着一个与Google地球(Google Earth)相仿的世界地图,一个转动的地球上不停地闪动着五颜六色的光点,恍如罗马宫廷的千万烛灯,每一次闪动标志着地球的这个角落一名Google用户发起了一次新的搜索。

  这同时意味着Google又一次满足了人们对未知信息的好奇与渴望。阅读全文

symfony框架

WEB2.0 jackxiang 2010-3-19 13:13
这个框架看似有自己的独到的地方,譬如:Symfony的路由系统是比较不错的!
这个路由在对搜索引擎来说是有很多的好处,而结构和层次上要分明和清楚一些,我们完全可以借鉴它的精华
书籍:http://youa.baidu.com/item/a20ceb130b33b2eada61c10f

symfony

目录[隐藏]

    概况
    什么是框架(framework)?
    什么是symfony?
    symfony适合我吗?

阅读全文
分页: 172/272 第一页 上页 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 下页 最后页 [ 显示模式: 摘要 | 列表 ]