⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 synch.c

📁 This a framework to test new ideas in transmission technology. Actual development is a LDPC-coder in
💻 C
字号:
/*************************************************************************** *    synch.c  - Software Radio module to synch / desynch *                           ------------------- *   begin                :  02/10/24 *   authors              :  Linus Gasser *   emails               :  linus.gasser@epfl.ch ***************************************************************************//*************************************************************************** *                                Changes *                                ------- * date - name - description * 02/10/24 - ineiti - begin * 03/01/10 - ineiti - putting synch and desynch together * 04/03/08 - ineiti - adjusted description * **************************************************************************//*************************************************************************** *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU General Public License as published by  * *   the Free Software Foundation; either version 2 of the License, or     * *   (at your option) any later version.                                   * *                                                                         * ***************************************************************************//** *  Before two mobiles can communicate together, they need to have a common * time. This is usually done with a synchronisation-signal sent by one * mobile, that is picked up by another, which then synchronises on this * signal. In 3GPP, this is called 'primary synchronisation'. *  There is one synch_send, but one synch_rcv for each of: * - STM-cards * - complex-cards (which never existed) * - ICS-cards *  This is due to the different data-structures from each of the cards, and * the fact that the synchronisation is best done on the raw signal... */#include "spc.h"#define DBG_LVL 0int rcv_complex_ics_module_init(void);void rcv_complex_ics_module_exit( void );int rcv_complex_module_init(void);void rcv_complex_module_exit( void );int rcv_module_init(void);void rcv_module_exit( void );int send_module_init(void);void send_module_exit( void );/* * This function is called upon "insmod" and is used to register the * different parts of the module to the SPM. */int spc_module_init(void) {  // Initialise the synch-generator module  if ( send_module_init() ) {    PR_DBG( 0, "Couldn't initilialise send-module!\n" );    return -1;  }  // Initialise the synch-reception module  if ( rcv_module_init() ) {    PR_DBG( 0, "Couldn't initialise rcv-module!\n" );    send_module_exit();    return -1;  }  // Initialise the complex synch-reception module  if ( rcv_complex_module_init() ) {    PR_DBG( 0, "Couldn't initialise rcv-module!\n" );    send_module_exit();    rcv_module_exit();    return -1;  }  // Initialise the complex ics synch-reception module  if ( rcv_complex_ics_module_init() ) {    PR_DBG( 0, "Couldn't initialise rcv-module!\n" );    rcv_complex_module_exit();    send_module_exit();    rcv_module_exit();    return -1;  }  return 0;}/* * This is called upon rmmod */void spc_module_exit( void ) {  PR_DBG( 2, "Synch is going\n" );  rcv_complex_ics_module_exit();  rcv_complex_module_exit();  rcv_module_exit();  send_module_exit();}module_init( spc_module_init );module_exit( spc_module_exit );

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -