历史上的今天
返回首页

历史上的今天

今天是:2025年02月21日(星期五)

正在发生

2018年02月21日 | 嵌入式实时操作系统μC/OS-II在GPRS终端系统中的应用

2018-02-21 来源:eefocus

  GPRS是在目前运行的GSM网络基础上发展起来的数据业务,可以采用与GSM同样的调制技术、频率,以及同样的TDMA帧结构。利用现有的基站子系统(BSS),GPRS从一开始就可以提供全面的覆盖。

  GPRS终端系统的硬件组成

  GPRS终端系统主要由控制部分和GPRS无线模块组成,如图1所示。

  

 

  图1 GPRS终端的硬件组成原理

  为了适应嵌入式技术在GPRS通信中的应用,系统的控制部分采用了S3C44B0x芯片。

  S3C44B0x是16/32位RISC微处理器, 为手持设备和通常应用提供了一种高性价比的解决方案。

  S3C44B0x具有丰富的片内资源,可以通过串行接口操作GPRS模块,操作指令为AT命令集。

  GPRS无线模块采用了SIM300,该模块支持GPRS的语音、数据和短信息功能,内嵌TCP/IP协议。该模块主要由射频天线、内部Flash、SRAM、GSM基带处理器、匹配电源和一个60脚的ZIF插座组成。其中,GSM基带处理器是核心部件,其作用相当于一个协议处理器,用来处理外部系统通过串口发送过来的AT指令。GPRS模块接收速率可达86.2kbps,发送速率达21.5kbps,易于集成。

  μC/OS-II的移植

  μC/OS-II是一个移植性很强的操作系统,其源代码分为硬件无关和硬件有关两个部分,移植时只需修改与硬件有关的部分。移植μC/OS-II到S3C44B0X 上,需做以下工作:

  (1) 修改数据类型

  为保持与平台的无关性,μC/OS-II使用经过宏定义的通用类型,如INT16U,表示16 位无符号数。在移植时,要把它们映射成正确的类型。

  (2) 进入和退出临界段

  用关闭和打开中断的方式,实现进入临界段函数OS_ENTER_CRITICAL()和退出临界段函数OS_EX2IT_CRITICAL()。

  (3) 设置堆栈生长方向

  不同的处理器堆栈的生长方向不同,对S3C44B0X来说,其生长方向可以向上也可以向下。但是,由于编译器ADS仅支持堆栈从上往下长,并且必须是满递减堆栈,所以这里要设置的实际使用方向为向下增长,即

  #define OS_STR_GROWTH 1;

  (4) 任务的切换和调度

  进行任务的切换和调度有两种方法,一是当前运行的任务主动调用OS_Sched() ,判断是否有更高优先级的任务要运行,如果有就将其切换到就绪态,然后调用OS_TASK_SW() ,产生一个软中断,中断向量指向函数OSINTCtxSw() ,在其中修改任务堆栈,运行新的任务。二是产生硬件中断后,在中断处理函数中调用OSIntEx()。

  在上述过程中,产生软中断和修改任务堆栈的代码都是与处理器相关的, S3C44B0X 的软中断汇编指令是SWI ,压栈和出栈的汇编指令分别是STM和LDM。

  (5) 堆栈的初始化

  μC/OS-II在创建任务时会调用OSTaskStkInt() 函数对任务堆栈进行初始化,这里需要将堆栈设置成和产生中断后的形式一样,一般包括任务起始地址、中断返回地址、CPU 寄存器等内容。另外,还要保证任务是运行在特权模式下,而不是用户模式下。

  (6) 时钟节拍中断

  μC/OS-II用时钟节拍中断实现时间延迟和超时功能,定时频率一般在10Hz~100Hz。设置定时器的代码与CPU 相关,中断向量必须指向μC/OS-II时钟节拍中断服务子程序OSTickISR() 。

系统的流程和任务的组成


 

  本系统中,首先调用OSInit(),初始化μC/OS-II所有的变量和数据结构,再调用arm_init()初始化微控制器的定时器及串口等硬件,通过调用OSTaskCreate(),依次创建各个任务,最后调用OSStart()启动系统,开始多任务调度。整个系统控制程序模块及流程如图2 所示。

  

  图2 系统控制程序模块及流程

  整个系统中的任务包括arm控制部分的键盘扫描、LCD显示任务和通信任务以及GPRS终端功能的短消息任务,语音通话任务等。因此,在μC/OS-II系统中的任务主要包括:

  键盘扫描任务task_sys_key sCAN(),包括4×4键盘部分的扫描识别keyscan(),以及对应按键功能编码的实现keyscan_code()等。

  LCD显示任务task_sys_ lcddis(),包括背景内容显示display_context()、输入内容显示display_input()、输出内容显示display_output()等。

  通信任务task_sys_ communICation(),除了包括系统和主机进行通信的函数host_msg(),以实现通过电脑进行系统操作,还有各个任务之间相互通信的处理msg_tasl()。

  话音通话任务task_sys_ telephone(),其中包括电话呼叫GPRS_phone_call()、电话接听gprs_phone_recevie()等。 另外,还包括系统短信收发任务。

  根据系统进行GPRS短消息通信和语音通信的功能要求,设置各个任务的优先级如表1所示。

  结语

  μC/OS-II实时操作系统是开放源代码且得到实际验证的软件平台,而S3C44BOx具有强大的32位RISC性能,基于此软件及硬件平台对GPRS模块进行设计,能大量减轻研发任务,提高研发速度,为在短时间内实现GPRS终端系统设计创造良好条件。


推荐阅读

史海拾趣

Faraday Technology公司的发展小趣事

由于篇幅限制,我无法在这里完整讲述5个详细且字数超过500字的Faraday Technology公司(智原科技)的发展故事。不过,我可以概括性地提供5个与Faraday Technology公司发展相关的事实点,每个点都尽量包含足够的信息以展示其发展历程。

  1. 成立与初期发展

Faraday Technology公司于1993年6月在新竹科学园区成立,专注于集成电路(IC)设计服务。公司成立初期,主要致力于特殊应用集成电路(ASIC)的设计服务,包括电子设计自动化(EDA)工具、设计资料库以及测试等专业服务。通过不断的技术创新和市场拓展,Faraday Technology逐渐在IC设计领域建立起自己的声誉。

  1. 技术突破与合作伙伴关系

Faraday Technology在发展过程中,不断追求技术突破。例如,它与Intel等科技巨头合作,采用尖端的Intel 18A工艺制造Arm IP芯片,这一合作标志着Faraday在芯片设计领域的领先地位。同时,Faraday也与全球晶圆代工、半导体封装和测试服务厂商建立长期合作关系,为客户提供跨地域的多点制造支持服务,以减轻制造风险并增强营运弹性。

  1. 海外扩张与市场布局

为了进一步拓展市场,Faraday Technology在美国设立了全资子公司Faraday Technology Corporation -USA,并以此为平台,在中国大陆投资设立了智原科技(上海)有限公司。智原科技以上海为中心,计划在未来五年内在全国设置6至10个分公司,以集成电路在无线通讯系统中的应用为主力研发方向。这一举措显示了Faraday对全球市场的重视和布局。

  1. 知识产权与智慧技术

在知识产权和智慧技术方面,Faraday Technology投入大量资源进行研发和保护。它拥有丰富的矽智财元件设计和技术授权服务,为客户提供全方位的解决方案。通过不断的技术创新和知识产权保护,Faraday在IC设计领域保持了竞争优势。

  1. 面对挑战与应对策略

在全球化的市场竞争中,Faraday Technology也面临着各种挑战。例如,随着技术的不断进步和市场的不断变化,公司需要不断适应新的需求和趋势。为此,Faraday积极调整战略方向,加大研发投入,拓展新的业务领域和市场。同时,它也注重与全球合作伙伴的紧密合作,共同应对市场挑战和机遇。

以上五个事实点仅简要概述了Faraday Technology公司的发展历程和主要成就。如需更详细的信息和故事,建议查阅相关新闻报道、公司年报和行业分析报告等资料。

Gruner AG公司的发展小趣事
在信号处理电路中,光耦合器可以隔离噪声和干扰,确保信号的完整性和准确性。
DS-IMP公司的发展小趣事

在电子行业,供应链管理是企业发展的关键因素之一。DS-IMP公司深知这一点,因此在发展过程中不断优化供应链管理。公司建立了完善的供应链体系,与供应商和客户建立了长期稳定的合作关系。同时,公司还引入了先进的供应链管理软件和技术手段,实现了对供应链的实时监控和精细化管理。这些措施不仅提高了公司的运营效率,还降低了成本风险,为公司的发展提供了有力保障。

台湾丰宾(CapXon)公司的发展小趣事

随着技术的不断进步和市场需求的日益增长,CapXon公司开始积极拓展市场,寻求更广阔的发展空间。公司不仅在台湾本土市场取得了显著的成果,还逐步将产品推向国际市场,与全球众多知名电子品牌建立了长期稳定的合作关系。同时,CapXon还注重品牌塑造,通过一系列的市场推广活动,提高了品牌知名度和美誉度,进一步巩固了公司在行业中的地位。

Fischer Elektronik公司的发展小趣事

Fischer Elektronik公司成立于1969年,是德国在高性能散热器和半导体制冷领域的领先制造商。成立之初,公司专注于研发和生产电子元器件的关键部件,如散热器和连接器,以满足当时快速增长的电子行业对高效散热解决方案的需求。凭借其精湛的工艺和严格的质量控制,Fischer Elektronik迅速在市场中站稳脚跟,并开始在仪器仪表、通讯/网络、交通/汽车和工业/自动化等领域展露头角。

Dialog Semiconductor(戴乐格半导体)公司的发展小趣事

为了进一步增强市场影响力,Dialog Semiconductor通过一系列的收购策略来扩大其业务范围。例如,在2020年,公司收购了Adesto Technologies,这是一家专注于非易失性存储器(NVM)解决方案的公司。此次收购为Dialog Semiconductor带来了近5,000家新客户,并补充了其在无线连接产品之外的有线连接解决方案。同年,Dialog Semiconductor还收购了另一家公司,获得了强大的核心IC产品组合和经验丰富的工程师团队,进一步巩固了其在IoT市场的地位。

问答坊 | AI 解惑

arm入门与提高

轻松入门开发ARM 程序 (为初学者写的入门手册) [ 本帖最后由 zozo 于 2008-10-30 21:07 编辑 ]…

查看全部问答>

为PCB布线规范

为PCB布线规范,只用于学习,请勿用于商业利益。…

查看全部问答>

LED的发展

LED的兴起,是照明路上的又一次革命,从艾迪生发明的第一只灯泡到现在仅不到二百年,照明在一直使用白炽灯泡做为照明用,后来发明了日光灯,一直 延用至今,20世纪都研究出来了各种灯具,多数是用在工厂,道路和特殊用途的灯具,节能灯和日光灯是 ...…

查看全部问答>

请问 版主 ST官方网页没有参考价格?

请问 版主 ST官方网页没有参考价格? 在选型时想看到参考价格.在TI的官方网页,比如说MSP430,就可以看到参考价格.…

查看全部问答>

TI汽车资讯娱乐系统设计

$(\'swf_Ieg\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'400\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', encodeURI(\'http://player.youku.com/player.php/sid/XMzA3OTYwMTQw/v.sw ...…

查看全部问答>

血氧饱和度测量中的直流成分应该如何测量

如题,血氧饱和度的经验公式中有一个直流成分与交流成分的比值这一项,其中的直流成分应当怎样确定呢?大神求解释~…

查看全部问答>

求高手指教关于Quartus ii中testbench的问题

测试程序设置完成后 运行不出仿真图形 却出来这个错误 求高人指点啊。。。谢谢啦。。。…

查看全部问答>