博文
四个经典故事(2005-09-24 20:41:00)
摘要:
四个经典故事
点击数:7 发布日期:2005-9-24 14:19:00 【评论】【打印】【收藏此页到365Key】
Tag: 四个经典故事
1.误会:
早年在美国阿拉斯加地方,有一对年轻人结婚,婚后生育,他的太太因难产而死,遗下一孩子。
他忙生活,又忙于看家,因没有人帮忙看孩子,就训练一只狗,那狗聪明听话,能照顾小孩,咬着奶瓶喂奶给孩子喝,抚养孩子。
有一天,主人出门去了,叫它照顾孩子。
他到了别的乡村,因遇大雪,当日不能回来。第二天才赶回家,狗立即闻声出来迎接主人。他把房门开一看,到处是血,抬头一望,床上也是血,孩子不见了,狗在身边,满口也是血,主人发现这种情形,以为狗性发作,把孩子吃掉了,大怒之下,拿起刀来向着狗头一劈,把狗杀死了。
之后,忽然听到孩子的声音,又见他从床下爬了出来,于是抱起孩子;虽然身上有血,但并未受伤。
他很奇怪,不知究竟是怎么一回事,再看看狗身,腿上的肉没有了,旁边有一只狼,口里还咬着狗的肉;狗救了小主人,却被主人误杀了,这真是天下最令人惊奇的误会。
注:误会的事,是人往往在不了解、无理智、无耐心、缺少思考、未能多方体谅对方,反省自己,感情极为冲动的情况之下所发生。
误会一开始,即一直只想到对方的千错万错;因此,会使误会越陷越深,弄到不可收拾的地步,人对无知的动物小狗发生误会,尚且会有如此可怕严重的后果,这样人与人之间的误会,则其后果更是难以想象。
2.钉子:
有一个男孩有着很坏的脾气,于是他的父亲就给了他一袋钉子;并且告诉他,每当他发脾气的时候就钉一根钉子在后院的围篱上。
第一天,这个男孩钉下了37根钉子。慢慢地每天钉下的数量减少了。他发现控制自己的脾气要比钉下那些钉子来得容易些。
终于有一天这个男孩再也不会失去耐性乱发脾气,他告诉他的父亲这件事,父亲告诉他,现在开始每当他能控制自己的脾气的时候,就拔出一根钉子。
一天天地过去了,最后男孩告诉他的父亲,他终于......
vb接收GPS数据源码全!(2005-09-24 10:59:00)
摘要:VERSION 5.00
Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "MSCOMM32.OCX"
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form frmRDDF_Record
Caption = "RDDF Saver"
ClientHeight = 6795
ClientLeft = 60
ClientTop = 345
ClientWidth = 9540
LinkTopic = "Form1"
ScaleHeight = 453
ScaleMode = 3 'Pixel
ScaleWidth = 636
StartUpPosition = 3 'Windows Default
Begin VB.CommandButton cmdMarkCone
Caption = "Mark Cone"
Height = 315
Left = 6600
TabIndex = 11
Top = 3360
Width = 1215
End
Begin VB.CommandButton cmdSave
Caption = "Save To"
Height = 315
Left = 8640
TabIndex = 10
Top = 3360
Width = 795
End
Begin MSC......
无线数据传输系统的实现(2005-09-24 09:00:00)
摘要:
无线数据传输系统的实现
[ 作者:山东大学信息科学与工程学院 | 转贴自:本站原创 | 点击数:2087 | 更新时间:2002-12-5 | 文章录入:admin ]
从我国目前情况来看,广泛应用的大量VHF/UHF电台多为模拟话音电台,通信手段仍以短波、超短波话音通信为主,不能适应当前数字化数据传输的要求,限制了现在众多的电台发挥更大的作用。本文提出了一种方案,利用无线调制解调器芯片MSM6948做成的MODEM与电台的话音接口连接,同时还可与主控计算机或其他具有标准RS-232接口的数据设备相连,从而实现数据通过现有的电台进行无线传输,有效地利用了现有设备,在一定程度上满足了日益增长的高速数据传输的要求.
系统总体框图及其原理
系统框图如图1所示,作为数据的双向传输系统,每一方都必须具有数据的发送和接收功能,因此通信双方的结构是等价的。它们都是由RS-232电平转换电路、单片机电路、无线调制解调器和超短波电台组成的。计算机发送数据时,首先由RS-232电平转换电路将计算机串口发送数据的RS-232电平转换为单片机所能接收的TTL电平,单片机接收到数据后,在单片机的控制下将数字信号送入无线调制解调器芯片进行调制,调制后的模拟信号送往超短波电台的发送语音通道,并由超短波电台发射出去。接收方的超短波电台收到发射方的发射信号后,电台内的鉴频输出端将输出恢复后的模拟信号,此信号送到调制解调器芯片,解调出数字信号,将此信号送入单片机进行处理,在单片机的控制下,将收到的数字信号依次经RS-232电平转换电路将TTL电平转换为计算机串口所需的RS-232电平,并由计算机对收到的信号进行处理.
图1 系统框图
图2 MSM6948原理框图
图3 硬件电路
图4 控制板与电台的连接
图5 软件流程图
硬件电路设计
在硬件电路中,单片机是整个系统的核心,它决定了整个系统的总体结构和可升级能力。在本系统中,单片机采用ATMEL公司的AT90系列单片机AT90S8515。无线调制解调器采用OKI公司的MSM6948芯片,RS-232电平转换电路采用MAX232。......
VC通过串口收发短消息1(2005-09-24 07:47:00)
摘要:
通过串口收发短消息(上) 选择自 bhw98 的 Blog
关键字
短消息,串口,SMS,PDU,Unicode
出处
Q 用串口连接GSM手机发送和接收短消息,在应用程序中如何编程实现?
Q 我们打算开发一个基于GSM短消息方式的GPS系统,如何利用SMS进行数据通信?
A 首先,我们要对由ESTI制订的SMS规范有所了解。与我们讨论的短消息收发有关的规范主要包括GSM 03.38、GSM 03.40和GSM 07.05。前二者着重描述SMS的技术实现(含编码方式),后者则规定了SMS的DTE-DCE接口标准(AT命令集)。
一共有三种方式来发送和接收SMS信息:Block Mode, Text Mode和PDU Mode。Block Mode已是昔日黄花,目前很少用了。Text Mode是纯文本方式,可使用不同的字符集,从技术上说也可用于发送中文短消息,但国内手机基本上不支持,主要用于欧美地区。PDU Mode被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式。Text Mode比较简单,而且不适合做自定义数据传输,我们就不讨论了。下面介绍的内容,是在PDU Mode下发送和接收短消息的实现方法。
PDU串表面上是一串ASCII码,由‘0’-‘9’、 ‘A’-‘F’这些数字和字母组成。它们是8位字节的十六进制数,或者BCD码十进制数。PDU串不仅包含可显示的消息本身,还包含很多其它信息,如SMS服务中心号码、目标号码、回复号码、编码方式和服务时间等。发送和接收的PDU串,结构是不完全相同的。我们先用两个实际的例子说明PDU串的结构和编排方式。
例1 发送:SMSC号码是+8613800250500,对方号码是13851872468,消息内容是“Hello!”。从手机发出的PDU串可以是
08 91 68 31 08 20 05 05 F0 11 00 0D 91 68 31 58 81 27 64 F8 00 00 00 06 C8 32 9B FD 0E 01
对照规范,具体分析:
分段
含义
说明
08
SMSC地址信息的长度
共8个八位字节(包......
GPS串口数据接收程序实例(2005-09-24 07:34:00)
摘要:
GPS串口数据接收程序实例
文章作者:巩志民
摘 要:目前GPS(全球定位系统)定位应用市场日趋成熟,正在进入应用的高速发展时期。本文以一款EverMore公司的GM-X205GPS接受模块为例,介绍了其数据格式,以及应用PIC16F874单片机RS232串口进行数据接收的程序。
关键词:GPS、NMEA格式、PIC16F874、串口数据接收
1、 GPS应用简介
近年来GPS系统,已经在大地测绘、海上渔用、车辆定位监控、建筑、农业等各个领域得到广泛应用。从九十年代我国引进GPS定位技术开始,经过十多年的市场培育,GPS定位应用进入了发展的最好时机,未来十年基于GPS的应用将会改变我们的生活和工作方式。
目前市场上的大部分GPS接受模块都是通过RS232串口与MCU进行数据传输的。这些数据包括经度、纬度、海拔高度、时间、卫星使用情况等基本信息。开发人员再依据这些基本数据,进行数据处理来完成整套的定位系统软件。
2、 GM-X205模块数据格式
在进行数据接受编程之前,先介绍一下该模块的数据格式。它支持NMEA-0183输出格式。信息如下:
GGA位置测定系统定位资料(Global Positioning System Fix Data)
GSV 导航卫星资料(GNSS Satellites in View)
RMC导航卫星特定精简资料(Recommended Minimum Specific GNSS Data)
VTG 方向及速度等相关资料(Course Over Ground and Ground Speed)
由于文章......
VB.NET 入门教程8(2005-09-24 07:31:00)
摘要:
作者:未知 文章来源:microsoft 点击数:
33059 更新时间:2004-9-27
补遗:关于 QuickSort VISUAL BASIC .NET为了示范 QuickSort Visual Basic .NET 示例应用程序实际是如何运行的,我们提供了编译好的可执行文件
。您可以通过编译这些项目文件来创建自己的可执行文件。单击 Quicksort_Visual_Basic_.NET.exe,下载源
代码项目文件和可执行文件包。
使用应用程序启动 Command Prompt(从 Start 菜单运行"cmd.exe")。使用 CD 命令将目录更改为可执行文件所在的目录。
然后运行"quicksort.exe"。程序将提示您提供输入和输出文件的名称。任何包含多行的文本文件均可使用。如果
需要,可以使用记事本来创建一个此类文件。然后,该程序将对输入文件的内容进行排序,并且将其写入输出文件。
示例程序输出下面是来自此 QuickSort Visual Basic .NET 应用程序的一个实例的输出。此示例演示了 QuickSort 算法,方法是读取
输入文件、对文件的内容进行排序,然后将其写入新的文件。用户输入的文本以下划线标记。您可以查看下面的示例输入文件 'example.txt' 和输出文件 'output.txt'。QuickSort Visual Basic .NET Sample Application
Copyright (c)2001-2002 Microsoft Corporation. All rights reserved.
MSDN ACADEMIC ALLIANCE [http://www.msdn.microsoft.com/academic]
This example demonstrates the QuickSort algorithm by reading an input file,
sorting its contents, and writing them to a new file......
VB.NET 入门教程7(2005-09-24 07:30:00)
摘要:
作者:未知 文章来源:microsoft 点击数:
33058 更新时间:2004-9-27
补遗:QuickSort VISUAL BASIC .NET 的源代码
下面是 QuickSort Visual Basic .NET 示例应用程序的完整源代码。您可以复制、使用和分发这些代码(无版权费)。注意,这些源代码以"原样"提供并且不作任何保证。'
' QuickSort Visual Basic .NET Sample Application
' Copyright 2001-2002 Microsoft Corporation. All rights reserved.
' MSDN ACADEMIC ALLIANCE [http://www.msdn.microsoft.com/academic]
' This sample is part of a vast collection of resources we developed for
' faculty members in K-12 and higher education. Visit the MSDN Academic Alliance Web site for more!
' The source code is provided "as is" without warranty.
'
' Import namespaces
Imports System
Imports System.Collections
Imports System.IO
' Declare application class
Module QuickSortApp
' Application initialization
Sub Main()
'Print startup banner
Console.WriteLine()
Console.WriteLine("QuickSort Visual Basic .NET......
VB.NET 入门教程(2005-09-24 07:30:00)
摘要:
作者:未知 文章来源:microsoft 点击数:
33057 更新时间:2004-9-27
步骤 8. 使用调试器
调试器是诊断程序问题的一个必不可少的工具。我们觉得有必要在本入门指南中对其进行介绍。这最后一步将向您展示如何走查程序和使用诸如 QuickWatch 这样的功能。
设置断点
当程序在调试器中运行时,断点会暂停程序的执行,从而使开发人员能够控制调试器。要设置断点,请右键单击您想要程序暂停的行,然后单击 Insert Breakpoint,如下所示。
注:带有断点的行以红色突出显示。通过再次右键单击该行并选择 RemoveBreakpoint 可以删除断点。
单步调试程序
既然设置了断点(最好是在前面所示的行中),就让我们在调试器中运行程序。在 Debug 菜单中,选择 Start 而不是同前面一样选择 Start Without Debugging。这样就在调试器中启动了程序,并因而激活了断点。
一旦程序遇到断点,调试器便会接收程序的控制。这时会有一个箭头指向当前执行的行。
[Caption]
要单步调试一行代码,可以选择 Debug | Step Over 并观察光标是否移到下一行。Debug | Step Into 命令允许您单步执行将要调用的函数。进行两次 Step Over 之后的屏幕如下所示。
如果想要程序在遇到下一个断点、遇到异常或退出之前继续执行,请从菜单中选择 Debug | Continue。
检查变量值
当您可以控制调试器时,可将鼠标指针移到变量上以获得它的基本值。
您也可以右键单击变量,然后从上下文菜单中选择 QuickWatch。QuickWatch 将为您提供关于某些变量(如 ArrayList 对象)的更多详细信息。
其他调试器工具
Visual Studio 调试器具有许多其他工具(例如 Call Stack 查看器)的功能,可以使用此调试器来查看到此为止调用的函数。还可以获得内存转储和关于......
VB.NET 入门教程5(2005-09-24 07:29:00)
摘要:
作者:未知 文章来源:microsoft 点击数:
33056 更新时间:2004-9-27
步骤 7. 创建函数
最后一步就是创建一个函数来在字符串数组中运行 QuickSort。我们将此函数放到应用程序类 QuickSortApp 之中。
修改源代码
更改 Visual Basic 源文件 (module1.vb),如下面以斜体突出显示的 代码所示。其他的差异(如类名)可忽略不计。' Import namespaces
Imports System
Imports System.Collections
Imports System.IO
Module Module1
Sub Main()
... ... ...
' Pass to QuickSort function
QuickSort(szContents, 0, szContents.Count - 1)
... ... ...
End Sub
' QuickSort implementation
Sub QuickSort(ByRef szArray As ArrayList, ByVal nLower As Integer, _
ByVal nUpper As Integer)
' Check for non-base case
If nLower < nUpper Then
' Split and sort partitions
Dim nSplit As Integer
nSplit = Partition(szArray, nLower, nUpper)
QuickSort(szArray, nLower, nSplit - 1)
QuickSort(szArray, nSplit + ......
VB.NET 入门教程4(2005-09-24 07:28:00)
摘要:
作者:未知 文章来源:microsoft 点击数:
33055 更新时间:2004-9-27
步骤 6. 文件输入/输出
现在,让我们来实现读取输入文件和写入输出文件。我们将每一行读取到一个字符串数组中,然后输出该字符串数组。在下一步中,我们将使用 QuickSort 算法来对该数组进行排序。
修改源代码
更改 Visual Basic 源文件 (module1.vb),如下面以斜体突出显示的代码所示。其他的差异(如类名)可忽略不计。 ' Import namespaces
Imports System
Imports System.Collections
Imports System.IO
Module Module1
Sub Main()
... ... ...
' Read contents of source file
Dim szSrcLine As String
Dim szContents As ArrayList
Dim fsInput As FileStream
Dim srInput As StreamReader
szContents = New ArrayList()
fsInput = New FileStream(szSrcFile, FileMode.Open, FileAccess.Read)
srInput = New StreamReader(fsInput)
szSrcLine = srInput.ReadLine()
While Not IsNothing(szSrcLine)
' Append to array
szContents.Add(szSrcLine)
szSrcLine = srInput.ReadLine()
......