单车之家-BikeHome.net

标题: 求助下~~ 有哪位计算机达人,懂得计算机c语言和汇编语言的~~进来看下,能否帮个忙 [打印本页]

作者: jimmylee1123    时间: 2007-3-5 22:21
标题: 求助下~~ 有哪位计算机达人,懂得计算机c语言和汇编语言的~~进来看下,能否帮个忙
女朋友的毕业论文   碰到了不熟悉的东西~~
希望有朋友能相助~~
小弟 在此口头先谢过了~~~    

   麻烦了~~   应该是需要什么OS2系统的   只求,相助 做个实验~~~   测试什么的

时间也比较急~~ 4月初就要的~~~

小弟无以为报~~~ 如事情顺利圆满~~ 可以考虑“自宫”8-9新 deore 自行车零件一个作为酬谢~~~~  

可以加本人qq 祥聊~~~ 30928449
msn: jameslee1123@msn.com  

具体东西 如下~~

  

目录

第1 章GPRS/GPS 实验.......................................................................................
1


1.1.1 GPS 实验..........................................................................................................
1
1.1.2 GPRS 实验........................................................................................................
3
i



第1章 GPRS/GPS 实验

1.1.1 GPS 实验
1. 实验目的
通过实验,能够使用GPS 驱动中间件来获取GPS 地理信息。

2. 实验设备
.. 硬件:PC 机一

SmartARM2200 教学实验开发平台一

GPS 模块一



.. 软件:Windows98/XP/2000 系统,ADS 1.2 集成开发环

μC/OS-II 操作系统(V2.52),GPS 驱动中间



3. 实验内容
使用GPS 驱动中间件,先初始化GPS ,然后启动GPS,发送相关命令,等待接收地理
数据,获取的信息被保存到GPS_DATA 这个结构体变量中,用户可以在变量窗口中观察该
变量的值。

4. 实验预习要求
仔细阅读参考文献[1]第5.11节的UART的内容,了解GPS驱动中间件。
仔细阅读参考文献[2]第1章的内容,了解SmartARM2200 开发平台的硬件结构。

5. 实验步骤
(1)启动ADS 1.2 ,使用ARM Executable Image for UCOSII(for lpc2200) 工程模板,在
uCOSII 目录下建立一个工程GPS。
(2)将GPS 驱动中间件gps_handle 与ARM 、ARM_PC、SOURCE 等文件,一起拷贝到
uCOSII 目录下,如图 1.1 所示。其中gps_handle 、ARM 和ARM_PC文件夹见产品配套光盘。
SOURCE文件夹应该包含uC/OS-II v2.52源代码。
图 1.1 GPS 项目目录结构




(3)在ADS的工程中添加GPS组,并将uCOSII\gps_handle 目录下的GPS_HANDLE.C 和
GPS_CPU_PORT.C文件添加到GPS组中。在项目中的config.h文件中加入“#include
"..\gps_handle\gps_handle.h" ”。其中GPS驱动中间件gps_handle文件夹见产品配套光盘。
(4)更改GPS\src\Os_cfg.h文件,配置OS_MAX_EVENTS为20。
(5)在工程的target 组的irq.s文件最后,增加UART中断服务程序的汇编语言部分代码
“Uart0_Handler HANDLER IRQ_UART ”。
(6)在工程的target 组的target.c 文件中的VICInit 函数,添加向量中断的初始化代码,如
程序清单 1.1所示。
程序清单 1.1 UART0 中断初始化代码

extern void Uart0_Handler(void);
VICVectAddr11 = (uint32)Uart0_Handler;
VICVectCntl11 = (0x20 | 0x06);
VICIntEnable = 1 << 6;

(7)打开工程窗口user 组中的main.c 文件,编写实验程序并保存,程序代码如程序清
单 1.2所示。
(8)将SmartARM2200 教学实验开发平台上的JP10跳线选择Bank0-RAM,Bank1-Flash,
把GPS的串口和开发平台上的CZ2串口插座连接起来。GPS模块串口上的J2分
别与开发平台上J5(GPIO插针)的+5V和GND相连,如图 1.2所示。
UART0 串口线
J1 CZ2
GPRS SmartARM2200

interface

J2

+5V
GND
+5V
GND
J5

图 1.2 GPS 与开发板的接线简图

(9)选用DebugInExram 生成目标,然后编译链接工程。之后选择【Project】->【Debug 】,
启动AXD进行JTAG 仿真调试。
(10)全速运行程序,在运行几秒钟后停下来,观察GPS_DATA 这个结构体变量,察
看对应所获取的数据。
6. 实验参考程序
GPS 实验参考程序如程序清单 1.2所示。

程序清单 1.2 GPS 实验参考程序

#include "config.h"
#include "stdlib.h"
#define TaskStkLengh 64 //Define the Task0 stack length 定义用户任务0 的堆栈长度
OS_STK TaskStk [TaskStkLengh]; //Define the Task0 stack 定义用户任务0 的堆栈
void Task0(void *pdata); //Task0 任务0

int main (void)
{

OSInit ();




OSTaskCreate (Task0,(void *)0, &TaskStk[TaskStkLengh - 1], 2)
;
OSStart ()
;
return 0;


}
/*******************************************************************************************

** Task0 任务0
*******************************************************************************************/
void Task0 (void *pdata)
{
pdata = pdata;
TargetInit ();
ZLG_GPS_Initial(); //GPS 初始化
ZLG_GPS_START_Command(); //发送GPS 启动命令
ZLG_GPS_Send_AAC_Command(); //发送AAC 命令
while (1)
{

OSTimeDly(10);
}
}

7. 思考
分析GPS驱动中间件的ZLG_GPS_Initial()函数是如何初始化GPS任务的?

1.1.2 GPRS 实验
1. 实验目的
通过实验,能够使用GPRS驱动中间件来进行GPRS远程通讯。

2. 实验设备
.. 硬件:PC 机一

SmartARM2200 教学实验开发平台一

GPRS PACK 及手机卡一



.. 软件:Windows98/XP/2000 系统,ADS 1.2 集成开发环

μC/OS-II 操作系统(V2.52),GPRS 驱动中间



3. 实验内容
使用GPRS驱动中间件,先初始化GPRS,然后进行拨号实验。

4. 实验预习要求
仔细阅读参考文献[1]第5.11 节的UART1 的内容,及GPRS 驱动中间件。
仔细阅读参考文献[2]第1 章的内容,了解SmartARM2200 教学实验开发平台的硬件结
构,注意Modem 接口部分的电路。
仔细阅读GPRS 的使用手册及AT 指令集的相关资料。


5. 实验原理
本实验是通过SmartARM2200 教学实验开发平台的CZ3 与GPRS PACK 连接,程序首
先初始化GPRS,初始化成功后进行拔号,实现手机拨号的实验。

GPRS 驱动中间件提供的API 函数以及资源占用情况如下:

API 函数:初始化GPRS,通过GPRS 拔号,GPRS 发送短信,GPRS 读取短信,GPRS
接电话等。

外设资源占用:LPC2210 的UART1

μC/OS-II 资源占用:3 个信号量

6. 实验步骤
(1) 启动ADS 1.2 ,使用ARM Executable Image for UCOSII(for lpc2200) 工程模板,并在
UCOSII 目录下建立一个GPRS_T 工程。
(2) 打开工程窗口user 组中的main.c 文件,编写实验程序并保存, 将ARM 和SOURCE
文件,一起拷贝到UCOSII 目录下。如图 1.3 所示。
图 1.3 GPRS 项目目录结构

(3) 更改GPRS_T\src\Os_cfg.h 文件,配置OS_MAX_EVENTS 为20。
(4) 将GPRS 驱动中间件的两个文件GPRS.c、GPRS.h 复制到GPRS_T\src 目录下,然
后将GPRS.c 添加到工程的user 组中。在项目中的config.h 文件中加入“#include
"GPRS.h"”。并修改config.h 文件,删除“#include "../arm_pc/pc.h" ”这行。(该程序没有使
用pc.h 文件)。其中GPRS 驱动中间件的GPRS.c、GPRS.h 文件见产品配套光盘。
(5) 在工程的target 组的irq.s 文件最后,增加UART1 中断服务程序的汇编语言部分代
码“UART1_Handler HANDLER UART1_Exception”。
(6) 在工程的target 组的target.c 文件中的VICInit 函数,添加UART1 向量中断的初始
化代码,如程序清单 1.3 所示。
程序清单 1.3 GPRS 通讯实验—UART1 向量中断初始化

extern void UART1_Handler(void)
;
VICVectAddr14 = (uint32)UART1_Handler;
VICVectCntl14 = (0x20 | 0x07)
;
VICIntEnable = 1 << 7;


(7) 将SmartARM2200 教学实验开发平台上的JP1、JP8 断开,JP3 短接,JP10 跳线选
4



123

择Bank0-RAM,Bank1-Flash,GPRS PACK 板接上天线和手机卡,JP3 的1、2 全部短接,
将GPRS PACK 板上的J2 口通过串口延长线与和开发平台上的CZ3 连接,并接上耳机和话
筒。然后在GPRS PACK 板的J10 接上12V 电源,接线简图如图 1.4 所示。按照以上步骤,
应该可以看到GPRS PACK 板上的POW 灯亮,按一下GPRS PACK 板上的上电复位按钮
RST,按完后等待约一秒,应该可以听到蜂鸣器“嘟”的声音,然后继续等待GPRS PACK
板上的LED 灯闪烁(大约需要5 秒)。


J4 ER
J3 MIC
天线接口


GPRS

UART1
串口线
SmartARM2200

interface
CZ3
外接12V电源J10 J2


+12V JP3
GND



图 1.4 GPRS 与开发板接线简图

(8) SmartARM2200 教学实验开发平台上电。
(9) 选用DebugInExram 生成目标,然后编译链接工程。之后选择【Project】->【Debug 】,
启动AXD 进行JTAG 仿真调试。
(10) 全速运行程序,等耳机发出拨号的声音。
7. 实验参考程序
GPRS 通讯实验的参考程序见程序清单1.4 和程序清单1.5。调试时拔号的号码为“1860”,
用户可以根据实际情况修改拨号的号码。

程序清单1.4 GPRS 通讯实验—main()函数

int main (void)

{
OSInit();
OSTaskCreate(Task0, (void *)0, &TaskStk[TaskStkLengh - 1],2);
OSStart();
return 0;

}

程序清单1.5 GPRS 通讯实验—数据接收发送任务

void Task0 (void *pdata)

{
pdata = pdata; /* 避免编译警告 */
TargetInit(); /* 目标板初始化*/
ModemInit(19200);
ModemDialUp("1860"); /* 拨号到1860 */
for (;;)
{

OSTimeDly(200);
}
}

5


8. 思考
分析GPRS 驱动中间件的ModemInit () 函数是如何初始化GPRS 的?

6



参考文献

1. 周立功等编著.ARM 嵌入式系统基础教程.北京航空航天大学出版社,2004 年.
2. 周立功等编著.ARM 嵌入式系统实验教程(二).北京航空航天大学出版社,2005 年.
7
作者: 小白    时间: 2007-3-5 22:22
我只会

IF

THEN

THE END


作者: jimmylee1123    时间: 2007-3-5 22:25
也可以加本人qq 祥聊~~~  30928449  
msn:  jameslee1123@msn.com

      求助了~~~   小弟无以为报~~~  如事情顺利圆满~~  可以考虑“自宫”8-9新 deore 自行车零件~~~~           因为已经被我拖延很久了~~        “领导”怪罪下来了~~     
作者: ranness    时间: 2007-3-5 22:26
电脑白痴飘过~
作者: jimmylee1123    时间: 2007-3-5 22:26
引用第1楼小白2007-03-05 22:22发表的:
我只会

IF

THEN
.......



谢谢你的沙发~~     我自己也会 ... when ...     
作者: 小白    时间: 2007-3-5 22:29
楼上还比我多知道一个单词呀 了不起
作者: 漫游的熊    时间: 2007-3-5 22:32
偶也不懂...and if....
作者: jimmylee1123    时间: 2007-3-5 22:35
引用第6楼漫游的熊2007-03-05 22:32发表的:
偶也不懂...and if....


谢谢参观~~  ~~    



继续求助~~~   
作者: 漫游的熊    时间: 2007-3-5 22:37
偶来帮你顶~~
作者: jimmylee1123    时间: 2007-3-5 22:38
引用第8楼漫游的熊2007-03-05 22:37发表的:
偶来帮你顶~~


谢谢~~  不过别水了哦~~     
作者: 漫游的熊    时间: 2007-3-5 23:19
好吧~
作者: alpha    时间: 2007-3-5 23:27
这个是通讯专业的吧??太专业了。。。。机械专业的路过。。
作者: kalakala    时间: 2007-3-6 08:46
强!不写汇编两年半,不写程序快半年。
这是通信专业的吧?建议到华为中兴那类人扎堆儿的地方去问,老简单了。
作者: zubama    时间: 2007-3-6 09:09
三年前倒是还做过这些。如今已经差不多全部还给师傅了。

可以考虑帮你问问。。呵呵
作者: Ark    时间: 2007-3-6 10:09
没看明白楼主到底要什么?
作者: tanjunqing    时间: 2007-3-6 16:06
做"领导"的手下好麻烦,为领导2肋叉刀~
作者: jimmylee1123    时间: 2007-3-6 22:54
谢谢大家关注~~      

还求着,有愿意帮忙的  加我qq或msn 祥聊~~~  




欢迎光临 单车之家-BikeHome.net (http://bbs.bikehome.net/) Powered by Discuz! X3.2