采用嵌入式S3C2410芯片的电话短信模块设计

发布者:春林初盛最新更新时间:2013-02-19 来源: dzsc关键字:S3C2410  电话短信模块  Bootloader 手机看文章 扫描二维码
随时随地手机看文章
    引言

  随着嵌入式技术和通信技术的发展,在手机领域,智能手机已成为手机发展的主流趋势。目前在智能手机领域,从处理器选型、操作系统选择以及应用程序开发都是研究的热点。在高校计算机相关专业的课程中也越来越多地涉及到智能手机的相关内容,越来越多的学生也都投入到智能手机的学习和开发阵营中来。因此,为这些学生提供相关的实验设备显得很必要。本文提出基于三星S3C2410芯片为核心构建智能手机硬件实验平台,并结合无线通信模块实现智能手机电话短消息功能。为学生进行智能手机相关的实验提供了平台,通过本平台,学生可以自己动手完成智能手机设计时的各种软件开发,改变了传统的验证式的实验平台模式,有利于学生创新能力的培养。

  1 智能手机软硬件实验平台设计

  手机的硬件实现方式主要有3种:

  (1)只用基带芯片,通常称作功能手机;

  (2)基带芯片加协处理器,这类产品是在功能手机的基础上增强了多媒体处理功能;

  (3)基带处理器加应用处理器。这是智能手机所采用的设计,基带处理器用于通信,应用处理器用于多媒体和其他应用。

  在设计智能手机硬件平台时,需要注意以下几个方面:

  (1)应用处理器应具有足够高的主频用以保证系统的运行速度,使各种应用能够运行畅通;

  (2)系统应有足够的内存空间用以保存应用程序和用户数据;

  (3)具备良好的人机交互界面,用户可以方便地进行操作。基带处理器性能稳定,保证用户实时通信。

  1.1 硬件平台设计

  硬件主要包括调试接口、存储系统、GSM/GPRS通信模块、人机交互模块。核心控制器芯片采用三星公司的S3C2410处理器,频率稳定运行在203 MHz.作为实验平台,完成智能手机的基本功能,不要求大量数据处理,因而203 MHz的主频能够保证系统的运行速度。系统采用64 MB SDRAM和64 MB NANDFLASH作为存储系统,从而保证系统和用户的存储空间。通信上,应用处理器通过UART2连接基带处理器即GSM/GPRS通信模块,GSM/GPRS模块采用SIMCOM公司的SIM300模块,该模块具备完善的GSM/GPRS三频/四频解决方案,支持GSM通话及短消息收发和 GPRS数据传输,可以方便地通过AT命令进行控制。系统通过LCD显示图形操作界面,采用触摸屏代替传统键盘操作,界面更友好,操作更方便。同时提供扩展接口用于学生扩展智能手机的其他功能,如利用以太网接口实现网页浏览等。整个系统的硬件框图如图1所示。

图1  整个系统的硬件框图

  1.2 系统软件平台设计

  系统软件平台的功能是为应用程序开发提供平台。系统软件以嵌入式Linux操作系统和嵌入式GUI Qtopia为基础来设计的,整个软件平台的架构如图2所示。

图2  整个软件平台的架构[page]

  1.2.1 Bootloader

  Bootloader是系统上电后运行的第一段代码,主要工作是完成硬件的初始化和为加载操作系统准备好条件。它的实现是依赖于硬件的,不同体系结构开发板的Bootloader变化很大。为了更好地支持目标板的硬件设备,该系统选择在ADS1.2集成开发环境下开发自己的Bootloa-der. Bootloader的实现过程主要分为以下2个阶段:

  (1)主要进行与CPU内核以及存储设备密切相关的初始化处理工作,这部分的代码通常用ARM汇编指令编写,包含在start.S文件中。通常包括一些步骤:

  ①硬件初始化工作。包括关闭看门狗;屏蔽所有中断;设置处理器时钟和工作频率;初始化外部寄存器;初始化堆栈指针。

  ②为阶段(2)准备RAM空间,并把阶段(2)的代码拷贝倒RAM,跳转倒阶段(2)的入口点。

  (2)完成一般的启动流程以及提供目标板设备的驱动支持,这部分会被拷贝倒RAM中执行,这段代码通常由C语言来实现,具有较强的可读性和移植性。

  通常包括一下步骤:

  ①通过set_gpios()函数完成通用I/0设置;

  ②通过mere_map_init(),mmu_init()函数完成内存映射和内存管理单元初始化;

  ③初始化MTD设备,使用mtd_dev_init()函数;

  ④拷贝NAND FLASH中的Kernel映像文件和根文件系统映像到RAM空间中;

  ⑤跳转到内核的第一条指令处。

  至此,Bootloader的任务结束,接下来的任务由操作系统完成。

    1.2.2 操作系统的剪裁、移植

  操作系统负责对整个的外围设备进行管理和对各个软件任务进行调度。这对于智能手机而言是非常重要的。操作系统采用开源、免费的Linux,基于嵌入式Linux 2.6版本进行移植,主要移植过程包括建立开发环境、下载内核源码、修改配置文件、配置内核、编译内核、编译模块几个步骤,因为移植的过程大致相同,这里只做简单介绍:

  (1)宿主机上的交叉编译工具采用arm-linux-gcc-3.4.1 ;

  (2)修改commom-smdk.c文件,为NANDFLASH设置分区;

  (3)修改配置文件fs/Kconfig,使内核支持启动时挂载devfs;

  (4)配置内核;

  (5)编译内核与模块,用Busy-box工具制作yaffs文件系统。

  1.2.3 嵌入武GUI Qtopia的移植

  嵌入式GUI用于开发短信、电话应用程序图形界面,本文采用Trolltech公司的Qtopia作为图形界面库,采用版本是Qtopia-core-opensou rce-src-4.4.3.移植的主要工作有:

  (1)修改qmouselinuxtp_qws.h文件,使Qtopia支持触摸屏;

  (2)配置、编译、安装;

  (3)拷贝相关的库文件到开发板,并设置环境变量。

  2 应用程序设计

  电话和短信应用程序是智能手机最基本也是最核心的应用。电话短信应用程序设计的主要工作包括:电话短信应用程序的流程设计、通信模块和应用处理器的串口通信以及电话和短消息应用程序界面开发。

  2.1 电话/短信应用程序流程

  应用程序采用定时器函数来控制整个程序的流程。定时器每200 ms触发1次。

  新电话、新短信的检测流程如图3所示,应用程序初始化需要对GSM/GPRS通信模块与应用处理器之间的接口进行初始化,此外还要定义1个200 ms触发的定时器。系统初始化完毕之后,定时器触发开始读串口数据进行判断。当串口无数据时,等待下一次定时器出发;当串口有数据时,将串口的数据进行判断;当数据中有新短信提示符时,按照PDU短信的解码格式对该短信进行解码,并调用UI界面提示用户新短信到达,询问用户是否阅读;当数据中有新电话提示符时,调用UI界面,询问用户是否接听。

图3  新电话、新短信的检测流程

  当需要发送短信或拨号时,应用程序流程如图4所示。当用户调用发信界面编辑好短信,并输入完收信方,点击发送钮时,应用程序首先判断短信中心号码和接收信息号码是否正确,若不正确,提示用户错误;若号码和号码格式均正确,便对要发送的短信内容按照进行PDU短信格式进行编码,并向串口写AT命令以便将该短信发送出去。拨号和挂断电话的流程很简单,只需要向串口写入ATD+所拨号码以及ATH就可,当拨号错误时,提示用户拨号错误。

关键字:S3C2410  电话短信模块  Bootloader 引用地址:采用嵌入式S3C2410芯片的电话短信模块设计

上一篇:基于嵌入式的杯突试验机测控系统设计与实现
下一篇:基于STM32的机器人伺服控制器设计

推荐阅读最新更新时间:2024-03-16 13:18

基于 LWIP 的嵌入式网络系统设计与实现
      0 引言   ARM(Advanced RISC Machines)是目前在嵌入式领域里应用最广泛的RISC微处理器结构,以低成本、低功耗、高性能的特点占据了嵌入式系统应用领域的领先地位,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。S3C2410 芯 片是由韩国 SAMSUNG 公司推出的基于 ARM920T 核的通用处理器,是为应用于小型掌上设备嵌入式系统应用而提供的微控制解决方案。SMDK2410 开发板是 SAMSUNG 公司推出 的基于此芯片的示例板,其网络部分使用的是 CS8900A 芯片。   鉴于 ARM 处理器多方面的优势,现在已有多款操作系统实现了对其的支持,包
[嵌入式]
Stm32 Bootloader整理
一. 基本概念 1.IAP IAP是In Applica ti on Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的 通信 口对产品中的 固件 程序进行更新升级。 通常在用户需要实现IAP功能时,即用户程序运行中作自身的更新操作,需要在设计固件程序时编写两个项目代码,第一个项目程序不执行正常的功能操作,而只是通过某种通信管道(如USB、 USART )接收程序或数据,执行对第二部分代码的更新;第二个项目代码才是真正的功能代码。 2.Bootloader 在上述IAP的概念中,bootloader就是其第一个项目程序。b
[单片机]
Stm32 <font color='red'>Bootloader</font>整理
基于S3C2410处理器的移动电子邮件终端介绍
  该系统为基于无线局域网WLAN(Wireless Loeal Area Network)的无线电子邮件终端,用户可以方便地通过手写笔,在触摸屏上输入邮件内容,通过USB无线网卡收发电子邮件。当使用键盘输入时,插上USB键盘也能完成输入信息功能,在Email发送和接收方面,采用标准的STMP协议和POP3协议,考虑到一般的嵌入式设备Flash存储容量有限,该系统提供了U盘存储功能,用户能够将邮件转存在大容量的U盘。与传统的邮件客户端相比,采用无线网卡,无需连接网线即可实现Email的收发,适用于偏远山区及环境恶劣的地方;采用嵌入式终端,可移动性强,方便用户实时进行邮件操作。   1 系统硬件设计   基于开发的方便性和简便性
[单片机]
基于<font color='red'>S3C2410</font>处理器的移动电子邮件终端介绍
LM3S系列单片机,用BootLoader升级代码应用笔记
首先需要说明的是.xcl和.icf的区别: .xcl和.icf都是IAR环境下外部链接器文件,.xcl是IAR 4.--版本的,.icf是5.--版本的,两种文件格式有很大不同。 周立功官网上的资料《 LM3S系列单片机串行(UART)升级方案解决 》里面的bootloader源码以及相关的pdf都是针对IAR 4.--版本而言的,我用的是IAR V5.3,当资料里讲到 配置连接文件 一节时,我就感觉相当的迷茫,因为对于IAR V5.3,连接文件是不支持4.--版本的.xcl文件的。.xcl和.icf都是告诉编译器单片机内存怎么分配的,全局变量放在哪里,局部变量放在哪里等等。 对于使用了IAR 5.--版本连编写程序的用户
[单片机]
PIC32MZ 通过U盘在线升级 -- USB Host bootloader
上一篇博文介绍的PIC32MZ HID bootloader是其中之一,这次将要介绍的是PIC32MZ U盘bootloader,也是其中之一。大概在今年6月份,我有尝试过实现PIC32MZ U盘bootloader, 但没有成功。放假了,效率果然不一样,之前一直没能完成,这次也轻松搞定。PIC32MZ U盘bootloader也是在harmony的bootloader例程基础上修改而成。开发环境如下, 1. IDE: MPLABX IDE 4.01 2. Compiler: XC32 v1.40 3. Library: Harmony 1.07 4. Example: c:/microchip/harmony/v
[单片机]
LED驱动分析s3c2410_gpio_setpin()
s3c2410_gpio_setpin()在gpio.c中  作用:设置相应GPIO口的值, 如pin=S3C2410_GPB5 to=0 则:设置S3C2410_GPB5的输出值为0 如pin=S3C2410_GPB5 to=1 则:设置S3C2410_GPB5的输出值为1  void s3c2410_gpio_setpin(unsigned int pin, unsigned int to) {  void __iomem *base = S3C2410_GPIO_BASE(pin);  unsigned long offs = S3C2410_GPIO_OFFSET(pi
[单片机]
基于S3C2410的WLAN智能住宅控制终端的设计
摘要:信息技术在建筑行业的高速发展使得智能住宅和智能小区迅速崛起并成长为巨大的新兴产业。文章提出了一个基于S3C2410的高性能、低价格的WLAN智能住宅控制终端的设计方案。该方案依托成熟的无线局域网技术,可实现智能小区建设所需的安全防范、管理自动化和信息自动化的功能。 关键词:WLAN;S3C2410;智能小区;智能住宅 1 前言 信息技术在建筑行业的逐步渗透,带动了智能大厦、智能住宅以至于智能小区的高速发展。这一新兴产业集现代建筑技术、电子技术、通讯技术与控制技术为一体,正在迅速崛起并成长壮大。 智能住宅小区须具备以下的基本特征和功能: ●安全自动化(Security Automation SA): 防盗监控、
[网络通信]
TMS320C6000系列二次Bootloader的设计与实现
  引 言   随着DSP(数字信号处理器)系统的广泛应用,其程序规模也随之不断扩大,使用芯片本身自带的Boot-loader通过Flash存储器来引导DSP程序,往往受到程序大小和结构的制约,比如程序很大超过厂商固化boot的范围,再如中断向量表的不同位置对程序boot跳转的影响,等等,因此越来越需要更加灵活的引导方式。   系统上电后,由引导程序将DSP的应用程序从该存储器引导到DSP应用板上的高速存储器(如内部SRAM、SDRAM等)中。由于Flash存储器具有电信号删除功能,且删除速度快,集成度高,因此已成为此种存储器的首选。由于Flash存储器的存取速度较慢,写入Flash存储器的程序将在系统上电时被DSP装载到快速
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved