




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 关于在郑州天道科技发展有限公司工程师助理 的实习报告 一 实习单位及岗位简介 一 实习单位的简介 为了使我能够从理论高度上升到实践高度 更好的实现理论和实践的结合 让自 己的能力得到进一步的提升 为以后的工作和学习奠定基础 同时也为了能够更好的 在找工作大军中找寻自己的立足之地 经学校同意我到了郑州天道科技发展有限公司 实习 郑州天道科技发展有限公司是一家国家高新技术企业 成立于 2000 年 3 月 位于 郑州市政六街 22 号 公司以高科技为依托 与中国科学院 河南省科学院 郑州大学 等单位 有着紧密的技术合作 致力于电力以及相关行业的技术进步 为用户提供完 善的解决方案与服务 主要业务 主要从事电力系统自动化产品的研究 开发 生产以及销售 并承接 工业自动化 楼宇自动化系统项目实施 主营产品 远程用电控制终端 电力参数采集模块 双燃料汽车 ECU 控制器 配网线 损监测仪 变频调速供水设备 二 实习岗位的简介 此次实习 我的岗位是工程师助理 鉴于实际情况 公司是个小公司 对于这 个岗位公司没有具体的规定该去干什么 不该干什么 另外 作为一个新人 公司的 需要就是我的职责所在 所以在这三个月的实习过程中 我做了许多工作 具体如下 1 协助公司研究开发人员完成公司指定项目的开发以及项目的后续工作 作为一 家开发与生产为一体的公司 从研究到生产到最后的安装与调试各个环节都需要有人 去参与 作为一个实习生 很荣幸我参与了其中的几个环节 从帮助开发人员项目的 前期准备工作 到参与制作项目实施过程中所涉及的电路设计和程序的编写 以及试 验品的生产安装以及调试 在这几个环节中分配与我的最主要工作是后续部分即电路 板的焊接以及成品的调试 除此之外 作为新开发的产品我们还要根据调试的结果将 产品的不足以及出现的故障反馈给研究人员 2 接受并完成公司指定的项目和分配的各项任务 为了培养新人 锻炼我们的各 项能力 让我们完成从学生到职员的角色转换 尽快融入到实际工作中来 根据公司 的安排 我主要完成了远程控制器的软件设计与实现这个项目 该项目主要是利用 51 单片机和 GPRS 调制解调器实现远程控制 以此为核心来设计和制作远程控制器 3 协助生产部门完成生产任务 由于公司规模小 业务多 为了能够迅速的完成 生产任务 同时也为了锻炼我们的动手能力和实际操作能力 根据公司的安排 作为 一个实习生 我也承接了一部分生产任务 其主要工作就是焊接安装电路板以及对成 品的调试 4 协助公司员工完成外接工业自动化等工程的装配调试工作 工业自动化 楼宇 自动化系统项目实施也属于公司的主营业务 为了能够使我们的知识面更加广泛 接 受更多的锻炼 在实习的过程中 公司也为我的实习岗位安排了自动化的内容 2 从以上的叙述可以看到 在我们公司 工程师助理这个岗位没有明确的岗位职责 在我看来就是哪里需要我们我们就去哪里 但是在我看来这样的工作更能锻炼一个人 更能去增加和开拓我的知识层面 二 实习内容及过程 在公司实习的几个月中 学到了很多的知识 对在学校所学习到的知识有了更深 了解 从最基本的焊接电路开始做起 到帮助开发人员完成设计再到后来完成公司的 分配的项目 整个实习就是按照这个过程一步一步的进行 以我所做的远程控制器的 软件设计与实现这个项目为例来叙述我这三个月的实习生涯 一 项目分析 GSM Global System for Mobile communication 系统是目前基于时分地 址技术的移动通讯体制中比较成熟 完善 应用最广泛的一种系统 目前我国已建成 覆盖全国的 GSM 数字蜂窝移动通信网络 由于在信息传递方面性能稳定 可靠 而且 随着手机的普及 把手机作为信息传递的载体 以 GSM 网络作为数据无线传输网络 与单片机结合起来构成应用系统 将会在远程数据传输 远程监控等领域有着强大的 生命力 天道科技发展有限公司就是看到了这一前景开发出远程控制电表 为了能及 时的融入公司 实习公司产品 为公司以后的发展作出贡献 公司安排我做了这样一 个实习项目 该远程控制器是根据短信息的收发原理 利用无线入网 GPRS 模块 结合单片机 控制系统 实现网络覆盖范围内的远距离移动控制 该项目需要完成三部分内容 1 GPRS 模块的使用 短消息收发控制 2 单片机与 GPRS 模块通讯 包括短消息信息 的分析处理 3 单片机实现的控制系统 根据不同的短信命令 控制不同外围设备 由于控制器可由手机来完成 远程控制终端也不受地域限制 只要有网络即可 这 提高了远程控制的实用性 二 技术资料分析 2 1 TC35i 模块 目前 国内已经开始使用的 GSM 模块有 Falcom 的 A2D 系列 Wavecome 的 WMO2 系列 西门子的 TC35 系列 爱立信的 DM10 DM20 系列 中兴的 ZXGM18 系列等 而且这些模块的功能 用法差别不大 其中西门子的 TC35 系列模块性价 比很高 并且已经有国内的无线电设备入网证 所以本设计选用的是西门子 TC35 系列的 TC35i 这是西门子推出的最新的无线模块 功能上与 TC35 兼容 设计紧凑 大大缩小了用户产品的体积 TC35i 与 GSM 2 2 兼容 双频 GSM900 GSMl800 RS232 数据口 符合 ETSI 标准 GSM0707 和 GSM0705 且易于升级为 GPRS 模块 该模块集射频电路和基带于一体 向用户提供标准的 AT 命令接口 为数据 语音 短消息和传真提供快速 可靠 安全的传输 方便用户的应用开发及设计 广泛应 用如图 2 1 的系统 3 图 2 1 GSM 网络 2 1 12 1 1 主要技术指标主要技术指标 TC35i 主要特性与技术指标包括以下几点 频段为双频 GSM900MHz 和 GSMl800MHz phase 2 2 支持数据 语音 短消息和传真 高集成度 54 5mm 36mm 3 6mm 质量为 9g 电源电压为单一电压 3 3 4 8V 可选波特率 300bps 115kbps 动波特率 4 8 115kbps 电流消耗 休眠状态为 3 5mA 空闲状态为 25mA 发射状态为 300mA 平均 2 5A 峰值 温度范围 正常操作 20 55 存放 30 85 SIM 电压为 3V 1 8V TC35i 有 40 个引脚 通过一个 ZIF Zero Insertion Force 零阻力插座 连接器 引出 这 40 个引脚可以划分为 5 类 即电源 数据输入 输出 SIM 卡 音频接口和控 制 第 1 14 脚为电源部分 1 5 为电源电压输入端 Vbatt 6 10 为电源地 GND 11 12 为充电引脚 13 为对外输出电压 共外电路使用 14 为 ACCU TEMP 接负 温度系数的热敏电阻 24 29 为 SIM 卡引脚 分别为 CCIN CCRST CCIO CCCLK CCVCC 和 CCGND 33 40 为语音接口 用来接电话手柄 15 30 31 和 32 脚为控制部分 15 为点火线 IGT Ignition 当 TC35i 通电后必须 给 IGT 一个大于 100ms 低电平 模块才启动 30 为 RTC backup 31 为 Power down 32 为 SYNC 16 23 为数据输入 输出 分别为 DSR0 RING0 RxD0 TxD0 CTS0 RTS0 DTR0 和 DCD0 TC35I 外围电路设图 2 2 4 图 2 2 TC35I 外围电路 TC35i 的数据输入 输出接口实际上是一个串行异步收发器 符合 ITU T RS232 接口标准 它有 固定的参数 8 位数据位和 1 位停止位 无校验位 波特率 00bps 115kbps 之间可选 硬件握手 信号用 RTS0 CTS0 软件流量控制用 XON XOFF CMOS 电平 支持标准的 AT 命令集 2 1 22 1 2 ATAT 指令介绍指令介绍 GSM 引擎模块提供的命令接口符合 GSM07 05 和 GSM07 07 规范 GSM07 07 中定义 的 AT Command 接口 提供了一种移动平台与数据终端设备之间的通用接口 SM07 05 对短消息作了详细的规定 在短消息模块收到网络发来的短消息时 能够通过串口发 送指示消息 数据终端设备可以向 GSM 模块发送各种命令 与 SMS 有关的 GSM AT 指令 如图 2 4 所列 GSM AT 指令集 是由诺基亚 爱立信 摩托罗拉和 HP 等厂家共同为 GSM 系统研制的 其中包含了对 SMS 的控制 利用 GSM 手机的串行接口 单片机向手机 收发一系列的 AT 命令 就能达到控制手机收发 SMS 的目的 用于 SMS 收发控制的主要 AT 命令见表 1 AT 指令 功 能 ATE0RESET AT CMGC Send an SMS command 发出一条短消息命令 AT CMGD Delete SMS message 删除 SIM 卡内存的短消息 AT CMGF Select SMS message format 选择短消息信息格式 0 PDU 1 文本 AT CMGL List SMS message from preferred store 列出 SIM 卡中的短消息信息格 式 PDU text 0 REC UNREAD 为未读 1 REC READ 为已读 2 STOU NSENT 为待发 3 STO SENT 为已发 4 ALL 为全部的 5 AT CMGR Read SMS message 读短消息 AT CMGS Send SMS message 发送短消息 AT CMGW Write SMS message to memory 向 SIM 内存中写入待发的短消息 AT CMGS Send SMS message from storage 从 SIM 内存中发送短消息 AT CNMI New SMS message indication 显示新收到的短消息 AT CPMS Preferred SMS message storage 选择短消息内存 AT CSCA SMS service center address 短消息中心地址 AT CSCB Select cell broadcast message messages 选择蜂窝广播消息 AT CSMP Set SMS text mode parameters 设置短消息文本模式参数 AT CSMS Select Message Service 选择短消息服务 表 2 1 与 SMS 相关的若干 GSM AT 指令 设置 AT CNMI 2 1 这组参数后 一般的模块都会有新信息提示 不会打开回报 功能 打开可能会干扰单片机处理 以上仅供参考 不同厂家模块实现形式以及支持 参数可能会有不同 需要实际测试 读取 SIM 卡或者手机内部的信息过程如下 当我 们收到这样的信息 CMTI MT 3 知道来了新信息 并且存储在手机内部第 3 个位置区 我们可用 AT CMGR 来读取 如下 AT CMGR 3 回车后 即可看到短 信内容 发送一条短信 欲发 OK 给号码编码为 0D91683137835423f2 7 位字符编码 8 位数据位发送 串 OK 编码为串 02CF25 计算 待发串长度时 015 内容长度 2 017 例如 先发 AT CMGS 017 以回车结束 收到 后 发送串 0011000D91683137835423f200020102CF25 以 ctrl z 键结束 单片机中以 16 进制数 1A 1A 两字节结束 即可完成发送 2 1 32 1 3 PDUPDU 编码规则编码规则 目前 发送短消息常用 Text 和 PDU Protocol Data Unit 协议数据单元 模式 使 用 Text 模式收发短信代码简单 实现起来十分容易 但最大的缺点是不能收发中文短 信 而 PDU 模式不仅支持中文短信 也能发送英文短信 PDU 模式收发短信可以使用 3 种编码 7 bit 8 bit 和 UCS2 编码 7 bit 编码用于发送普通的 ASCII 字符 8 bit 编 码通常用于发送数据消息 UCS2 编码用于发送 Unicode 字符 一般的 PDU 编码由 A B C D E F G H I J K L M 十三项组成 A 短信息中心地址长度 2 位十六进制数 1 字节 B 短信息中心号码类型 2 位十六进制数 C 短信息中心号码 B C 的长度将由 A 中的数据决定 D 文件头字节 2 位十六进制数 E 信息类型 2 位十六进制数 F 被叫号码长度 2 位十六进制数 G 被叫号码类型 2 位十六进制数 取值同 B H 被叫号码 长度由 F 中的数据决定 6 I 协议标识 2 位十六进制数 J 数据编码方案 2 位十六进制数 K 有效期 2 位十六进制数 L 用户数据长度 2 位十六进制数 M 用户数据 其长度由 L 中的数据决定 J 中设定采用 UCS2 编码 这里是中英文的 Unicode 字 符 2 1 42 1 4 PDUPDU 编码协议简单说明编码协议简单说明 例 1 发送 SMSC 号码是 8613800250500 对方号码是消息内容 是 Hello 从手机发出的 PDU 串可以是 08 91 68 31 08 20 05 05 F0 11 00 0D 91 68 31 96 03 29 30 F0 00 00 00 06 C8 32 9B FD 0E 01 对照规范 具体分析分段 含义 说明 08 SMSC 地址信息的长度 共 8 个八位字节 包括 91 91 SMSC 地址格式 TON NPI 用国际格式号码 在前面加 68 31 08 20 05 05 F0 SMSC 地址 8613800250500 补 F 凑成偶数个 11 基本参数 TP MTI VFP 发送 TP VP 用相对格式 00 消息基准值 TP MR 0 0D 目标地址数字个数 共 13 个十进制数 不包括 91 和 F 91 目标地址格式 TON NPI 用国际格式号码 在前面加 68 31 96 03 29 30 F0 目标地址 TP DA 8613693092030 补 F 凑成偶数个 00 协议标识 TP PID 是普通 GSM 类型 点到点方式 00 用户信息编码方式 TP DCS 7 bit 编码 00 有效期 TP VP 5 分钟 06 用户信息长度 TP UDL 实际长度 6 个字节 C8 32 9B FD 0E 01 用户信息 TP UD Hello 例 2 接收 SMSC 号码是 8613800250500 对方号码是消息内容是 你好 手机接收到的 PDU 串可以是 08 91 68 31 08 20 05 05 F0 84 0D 91 68 31 96 03 29 30 F0 00 08 30 30 21 80 63 54 80 06 4F 60 59 7D 00 21 对照规范 具体分析 08 地址信息的长度 八位字节 包括 91 91 SMSC 地址格式 TON NPI 用国际格式号码 在前面加 68 31 08 20 05 05 F0 SMSC 地址 8613800250500 补 F 凑成偶数个 84 基本参数 TP MTI MMS RP 接收 无更多消息 有回复地址 0D 回复地址数字个数 共 13 个十进制数 不包括 91 和 F 91 回复地址格式 TON NPI 用国际格式号码 在前面加 68 31 96 03 29 30 F0 回复地址 TP RA 8613693092030 补 F 凑成偶数个 00 协议标识 TP PID 是普通 GSM 类型 点到点方式 08 用户信息编码方式 TP DCS UCS2 编码 30 30 21 80 63 54 80 时间戳 TP SCTS 2003 3 12 08 36 45 8 时区 06 用户信息长度 TP UDL 实际长度 6 个字节 4F 60 59 7D 00 21 用户信息 TP UD 你好 若基本参数的最高位 TP RP 为 0 则没有回复地址的三个段 从 Internet 上发出的短 消息常常是这种情形 7 注意 号码和时间的表示方法 不是按正常顺序顺着来的 而且要以 F 将奇数 补成偶数 如果用户信息 TP UD 中存在一个头 基本参数的 TP UDHI 为 1 在所有编 码方式下 用户信息长度 TP UDL 都等于头长度与编码后字节数之和 如果采用 GSM 03 42 所建议的压缩算法 TP DCS 的高 3 位为 001 则该长度也是压缩编码后字节数或 头长度与压缩编码后字节数之和 2 22 2 MCS 51MCS 51 型系列单片机介绍型系列单片机介绍 MCS 一 51 型系列单片机具有 40 个引脚双列直插式封装的器件 其中许多引 脚具有第二功能 但各种不同的单片机芯片又各有不同 其引脚如图2 5 所示 图中管脚可以分为 4 类 电源类管脚 2 个 时钟类管脚 2 个 并行 I O 类管 32 个 控制类管脚 4 个 1 电源类引脚 VCC 40 脚 十 5V 芯片工作电源的输入端 VSS 20 脚 接地端 图 2 3 51 系列单片机的引脚结构 2 控制信号引脚 RST VPD 9 脚 RST 为复位信号输入端 当RST 端保持两个机器周期 24 个时钟周期 的高电平时 可对单片机实现复位操作 该引脚的第二功能是作为内 部电源的输入端 VDD 当电源 VCC 一旦发生掉电或电压降低到低于电平规定值 时 可通过它为单片机内部RAM 提供电源 以保护片内 RAM 中信息不丢失 使系 统在上电后能继续正常运行 ALE RROG 30 脚 ALE 为地址锁存允许输出信号 在访问外部存储器时 ALE 用来锁存 N 扩展地址低 8 位的地址信号 在不访问外部存储器时 ALE 以 时钟振荡频率的 1 6 的固定频率输出 因而它又可用作外部定时及其它需要 但 请注意 每当 CPU 访问外部数据存储器时 将减少一个ALE 脉冲 ALE 能驱动 8 个 TTL 接口 此引脚的第二功能 PBOG 是对 8751 型单片机内部 EPROM 编程时 的编程脉冲输入端 PSEN 29 脚 外部程序存储器 ROM 的读选通信号输出端 当访问外部ROM 时 PSEN 定时产生负脉冲作为外部ROM 的选通信号 即每个机器周期 12 个时 8 钟周期 内有效两次 在访问外部RAM 或片内 ROM 时 不会产生有效的 PSEN 信 号 PSEN 可驱动 8 个 TTL 输入端 EA VDD 31 脚 面为访问内外部程序存储器控制信号 当EA 0 时 对 ROM 的访问限定在外部程序存储器 当EA 1 时 在对 ROM 的访问先从内部 4KB 开始 当地址范围超出4KB 时自动切换到外部进行访问 由此可见8031 型 单片机没有内部的 4KB 程序存储器 因此其 EA 直接接地 对于片内含EEPROM 的机型 在编程期间 此引脚用作21V 编程电源 VDD 的输入端 3 外接晶体引脚 XTAL1 19 脚 和 XTAL2 18 脚 的内部是一个振荡电路 当使用内部振荡电路 时 在这两个管脚上外接石英晶体和微调电容 当使用外部时钟时 用于接外部 时钟脉冲信号 4 输入 输出端口 P0 P1 P2 P3 8051 型单片机有 32 条 I O 线 构成 4 个 8 位双向端口 P0 口 32 39 脚 是一个 8 垃漏极开路型的双向 I O 口时 分时提供 低 8 位地址 并用作 8 位双向数据总线 P1 口 1 8 脚 是一个带内部提升电阻的8 位准双向 I O 口 P2 口 21 28 脚 是一个带内部提升电阻的8 位准双向 I O 口 在访 问外部存储器时 提供高8 位地址 在对 8751 型单片机内 PROM 进行编程和检 验时 P2 口用于接收高 8 位地址和控制信号 P3 口 10 一 17 脚 是一个带内部提升电阻的 8 位准双向 I O 口 在系统中 这 8 个引脚都有各自的第二功能 2 2 12 2 1 串口通信介绍串口通信介绍 MCS 51 单片机与外部设备之间的信息交换 即通信 有两种方式 一种是数 据各位同时传送的方法 称为并行通信 另一种是数据逐位串行地顺序传送的方 法 称为串行通信 并行通信中 信息传输线的根数和传送的数据位数相等 通 信速度快 适合于近距离的通信 串行通信仅需一对传输线即可实现通信 适合 于远距离通信 串行通信有两种基本方式 异步通信和同步通信 异步通信是以 字符为单位传送的 字符前面有一个起始位 0 后面有一个停止位 1 是一 种起止式通信方式 字符间没有固定的间隔长度 这种方式的优点是数据传送 可靠性高 能及时发现错误 缺点是通信效率比较低 典型的异步通信数据格式 为 同步通信是以数据块方式传送的 将多个字符组成一个数据块 字符间无间 隔 在数据块块首加上控制信息后一起发送出去 这种方式通信效率较高 但要 求收发双方设备有较高的同步性能 如图2 6 所示 为 MCS 51 的串口结构图 9 图 2 4 MCS 51 的串口结构图 2 2 22 2 2 LEDLED 显示器简单介绍显示器简单介绍 1 LED 显示器结构 常用的 LED 显示器有 7 段 或 8 段 8 段比 7 段多了一个小数点 如 段 和 米 字段之分 这种显示器有共阳极和共阴极两种 如图 2 7 所示 共阴极 LED 显示器的 发光二极管的阴极连接在一起 通常此公共阴极接地 当某个发光二极管的阳极为高 电平时 发光二极管点亮 相应的段被显示 同样 共阳极 LED 显示器的发光二极管 的阳极连接在一起 通常此公共阳极接正电压 当某个发光二极管的阴极接低电平时 发光二极管被点亮 相应的段被显示 图 2 5 7 段 8 段 LED 结构及外形 三 设计方案与实现 3 1 硬件设计硬件设计 在图 3 1 原理框图中 终端如手机发出的控制命令 通过 GSM 网络传输 再传给 短信息收发 TC35I 模块 模块收到后 给单片机一个新短消息提示 单片机读取短信 并回复 然后根据收到的控制命令 控制外围设备并答复 10 图 3 1 系统原理框图 GPRS 模块与单片机接口电路 单片机 AT89C51 与 TC35i 的连接要用到串口通信 由于单片机系统的电平为标准 的 TTL 电平 而 TC35i 的接口电路是标准 ITU T RS 232 工作在 CMOS 电平 2 65V 因此可使用 MAX232 转换芯片进行电平转换 MAX232 芯片是 MAXIM 公司生产的 低功耗 单电源双 RS232 发送 接收器 适用于各种 EIA 232E 和 V 28 V 24 的通 信接口 MAX232 芯片内部有一个电源电压变换器 可以把输入的 5V 电源变换成 RS 232 输出电平所需 10V 电压 所以采用此芯片接口的串行通信系统只要单一的 5V 电源就可以了 MAX232 外围需要 4 个电解电容 C1 C2 C3 C4 是内部电源转换所需电 容 取值均为 1 F 25V 宜选用钽电容并且应尽量靠近芯片 C5 为 0 1 F 的去耦电容 MAX232 的引脚 T1IN T2IN R1OUT R2OUT 为接 TTL CMOS 电平的引脚 引脚 T1OUT T2OUT R1IN R2IN 为接 RS 232 电平的引脚 此 TTL CMOS 电 平的 T1IN T2IN 引脚应接 MCS 51 的串行发送引脚 TXD R1OUT R2OUT 应接 MCS 51 的串行接收引脚 RXD 与之对应的 RS 232 电平的 T1OUT T2OUT 应 接 TC 35 的接收端 RXD R1IN R2IN 应接 TC 35 的发送端 TXD MAX232 基本接 线图如 3 2 图 3 2 串口接口电路 TC35I 模块及外围电路部分较为复杂 可用百亿公司的 GPRS modem 代替 而且 单片机串口部分只需电平转换电路即可通讯 设备部分 可用发光二极管取代 显示 部分可用 7 段数码管显示 这样整个系统大大简化 在单片机实验板中 发光二极管低电平点亮 可模拟设备的开关 数码管为共阳 极显示 低电平位选中 显示主叫号码和设备编号 串口采用 MAX232 通讯 原理图 11 见图 3 5 系统控制命令设定如下 1 发送 KXL1357 表示在原状态基础上点亮编号为 1 3 5 7 的发光二极管 2 发送 KAL 表示点亮所有的发光二极管 3 发送 GXL1246 表示在原状态基础上熄灭编号为 1 2 4 6 的发光二极管 4 发送 GAL 表示熄灭所有的发光二极管 图 3 5 51 单片机实验板电路 3 23 2 软件设计软件设计 程序流程图见图 3 6 控制器上电后要初始化 进入等待短信命令状态 如果收到 命令便执行命令 回复命令 然后继续等待下一条命令 程序流程图如下 12 图 3 6 单片机程序流程图 程序说明 初始化单片机 采用查询方式通讯 串口设置如下 MOV SCON 50H 串口 方式 1 串口初始化 MOVPCON 00H MOV TMOD 20H T1 方式 2 MOVTL1 0FDH 波特率 9600 的常数 MOVTH1 0FDH SETB TR1 GPRS 模块上电后 指示灯闪烁 表示正常工作 需要设置以下几条 AT 指令 1 发 AT 收到 OK 表示与网络连接正常 2 设置短消息中心号码 一次即可 发 AT CSCA 8613800371500 收到 OK 表示设置成功 3 设置短消息格式 发 AT CMGF 0 设置为 PDU 格式 收到 OK 表示设置成 功 4 设置 AT CNMI 2 1 指令 有新短消息会提示所在的存储区号 为防止存储器已满而没有新短消息提示 要清空部分存储区 有 AT CMGD 17 指令执行 删除第 17 条短信 收到 OK 删除成功 以上设置完成后 程序开始等待接收短信 如果接收到一条新短信 单片机会收 到 CMTI MT 13 提示 分离存储索引号程序就是从收到的提示串中获取串 13 为 读指令做准备 单片机发送 AT CMGR 13 可读取此短信 从读得的字符串中分离出 13 主叫号码 和短信内容 再根据它们计算回复短信串格式长度 并重组发送串 发出 回复短信 在处理程序中 要将短信内容解码 根据具体内容跳转不同的自定义命令 处理程序 解码程序中 将号码串解码复原 与内容串重组 然后调用显示程序 完 成后回到等待状态 程序实现如下 MOV R0 STR0 MOV DPTR SMA LCALL SETSTR MOV R0 STR0 MOV R1 TEL LCALL STRCAT MOV R0 STR1 MOV DPTR SMB LCALL SETSTR MOV R0 STR0 MOV R1 STR1 LCALL STRCAT MOV R0 STR0 MOV R1 WORD LCALL STRCAT MOV R0 STR1 MOV R0 2 INC R0 MOV R0 1AH INC R0 MOV R0 1AH MOV R0 STR0 MOV R1 STR1 LCALL STRCAT 3 33 3 超级终端中与超级终端中与 GPRSGPRS 模块的通讯模块的通讯 将 GPRS 模块连接到 PC 机 COM1 上电后指示灯闪烁 表示工作正常 新建超级终端 点击开始 所有程序 附件 通讯 超级终端 弹出连接描述对话框 输入名称 例 sh 选择图标点击确定 弹出连接到对话框 输入区号选择地区和串口 例 COM1 点击确定 弹出 COM1 属性对话框 可设定通信协议 这里波特率设置 9600 8 位数据通信 无奇偶校验 确定后 弹出 sh 超级终端 界面 依次运行各 AT 指令如图 3 7 各串以回车 换行字符结束 23 图 3 6 超级终端中 AT 命令的实现 3 43 4 TCTC 与与 GPRSGPRS 模块的通讯模块的通讯 将 GPRS 模块连接到 PC 机 COM1 上电后指示灯闪烁 表示工作正常 在 TC 中运 行 TC 发送函数 依次输入 AT AT CMGF 0 AT CNMI 2 1 等 AT 命令 测试结果 如图 3 8 至图 3 10 从测试结果可以看出 在回复命令过程中 首先把命令串回送过来以回车键结束 然后才是执行结果串 以回车 换行字符开始 并以其结束 图 3 7AT CNMI 指令在 TC 中的实现 图 3 8 AT 命令的字符格式输出 24 图 3 9 AT 命令的十进制格式输出 TC 发送函数 在子函数 void send char str int tx 中 str 是待发串 tx 参数是为模拟短消息发送 而设置的 tx 1 时 将在发送串结尾自动加回车键 tx 2 时将在发送串结尾自动加 ctrl z 键 在接收串的过程中 void receive char str int x 中 x 的大小决定串口查询最 大次数的多少 此函数可把收的字符以十进制格式打印出来 接收到的串存在 str 中 程 序如下 include include include include void send char str int tx void initcom1 void receive char str int x main char str0 200 initcom1 while 1 scanf s str0 send str0 1 receive str0 15 void initcom1 8 位数据位 无奇偶校验 波特 率 9600b s outportb 0 x3fb 0 x80 delay 100 outportb 0 x3f8 0 x0c delay 100 outportb 0 x3f9 0 x00 delay 100 outportb 0 x3fb 0 x03 delay 100 outportb 0 x3fc 0 x03 delay 100 outportb 0 x3f9 0 x00 delay 100 发送串子函数 void send char str int tx 26 int i 0 k tend 3 char ch unsigned char data k strlen str while tend 1 do data inportb 0 x3fd data while data 0 if i k ch str i outportb 0 x3f8 ch i else if tx 1 outportb 0 x3f8 0 x0d tend 1 tx 1 end of r else if tx 2 outportb 0 x3f8 0 x1a tend tx 2 end of ctrl z 接收串子函数 void receive char str int x int i 0 t 0 j 0 rend 0 char ch unsigned char data for i 0 i 256 i do data inportb 0 x3fd data t while data 0 if t 5 ch inportb 0 x3f8 putchar ch printf d n ch str j ch t 0 else rend if rend x break str j 0 3 53 5 单片机与单片机与 GPRSGPRS 模块的通讯模块的通讯 将 GPRS 模块连接到单片机串口上 上电后指示灯闪烁表示正常工作 将 DPTR 依次设为各数据表初始地址 在 WAVE6000 中硬件仿真 运行此程序 观察 DATA 数 据窗口如图 STR0 EQU 30H STR1 EQU 40H ORG 0000H AJMP MAIN ORG 0100H MAIN MOV SCON 50H 串口 方式 1 串口初始化 MOV PCON 00H MOV TMOD 20H T1 方式 2 MOV TL1 0FDH 波特率 9600 的常数 27 MOV TH1 0FDH SETB TR1 MOVR0 STR0 MOVDPTR ATT LCALLSETSTR MOVR0 STR0 LCALLTXSTR MOVR0 STR1 MOVR6 2 LCALLRXSTR GLOOP AJMPGLOOP ATT DB 03H 41H 54H 0DH AT ATF DB 0AH 41H 54H 2BH 43H 4DH 47H 46H 3DH 30H 0DH AT CMGF 0 NMI DB 0CH 41H 54H 2BH 43H 4EH 4DH 49H 3DH 32H 2CH 31H 0DH AT CNMI 2 1 SETSTR CLR A MOVC A A DPTR MOV R3 A MOV R0 A MOV R2 0 LOOP INC R2 INC R0 MOV A R2 MOVC A A DPTR MOV R0 A DJNZ R3 LOOP RET TXSTR MOV A R0 MOV R3 A LOOPT INC R0 MOV A R0 MOV SBUF A WAITT JNB TI WAITT CLR TI DJNZ R3 LOOPT RET RXSTR MOV A R0 PUSH A MOV R3 00H HERE JNB RI HERE RXR CLR A MOV R4 A MOV R5 A WAITR JB RI RI1 DJNZ R5 WAITR DJNZ R4 WAITR DJNZ R6 WAITR AJMP RXEND RI1 CLR RI MOV A SBUF INC R0 MOV R0 A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025房地产项目室内外装饰设计施工监理合同
- 2025年中小企业融资连带担保合同范本
- 2025年度图书馆图书采购与可持续发展合同
- 2025年风力发电场电线电缆配套供应协议
- 2025版历史遗迹拆除与文化遗产保护合同范本
- 2025年度高新技术项目融资服务合同范本二
- 2025年度塑料包装袋环保回收利用采购合同
- 2025版新型节能电器贴牌生产销售合同
- 2025年二层商铺楼房租赁合同及商业地产市场调研与分析服务协议
- 2025年度健身房室内涂料施工协议
- 高产小麦品种介绍
- HemiView森林冠层图像分析系统
- 创新方法教程题库题库(449道)
- 建设工程消防验收评定规则
- 山东省临沂市兰山区2022-2023学年小升初数学自主招生备考卷含答案
- 电气设备交接试验方案
- D500-D505 2016年合订本防雷与接地图集
- 北邮社电机拖动与调速技术教学包课后题解
- 学校门卫岗位职责及管理制度
- JJG 1105-2015氨气检测仪
- GB/T 17421.7-2016机床检验通则第7部分:回转轴线的几何精度
评论
0/150
提交评论