/** * @addtogroup PIOS PIOS Core hardware abstraction layer * @{ * @addtogroup PIOS_OPAHRS OPAHRS Functions * @{ * * @file pios_opahrs_proto.c * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. * @brief PPM Input functions * @see The GNU Public License (GPL) Version 3 * */ #include "pios_opahrs_proto.h" #include /* memset */ void opahrs_msg_v0_init_rx (struct opahrs_msg_v0 * msg) { /* Make sure we start with bad magic in the rx buffer */ msg->head.magic = 0; msg->head.type = 0; msg->tail.magic = 0; } void opahrs_msg_v0_init_user_tx (struct opahrs_msg_v0 * msg, enum opahrs_msg_v0_tag tag) { msg->head.magic = OPAHRS_MSG_MAGIC_HEAD; msg->head.type = OPAHRS_MSG_TYPE_USER_V0; msg->payload.user.t = tag; msg->tail.magic = OPAHRS_MSG_MAGIC_TAIL; } void opahrs_msg_v0_init_link_tx (struct opahrs_msg_v0 * msg, enum opahrs_msg_link_tag tag) { msg->head.magic = OPAHRS_MSG_MAGIC_HEAD; msg->head.type = OPAHRS_MSG_TYPE_LINK; msg->payload.link.t = tag; msg->tail.magic = OPAHRS_MSG_MAGIC_TAIL; } void opahrs_msg_v1_init_rx (struct opahrs_msg_v1 * msg) { /* Make sure we start with bad magic in the rx buffer */ msg->head.magic = 0; msg->head.type = 0; msg->tail.magic = 0; } void opahrs_msg_v1_init_user_tx (struct opahrs_msg_v1 * msg, enum opahrs_msg_v1_tag tag) { msg->head.magic = OPAHRS_MSG_MAGIC_HEAD; msg->head.type = OPAHRS_MSG_TYPE_USER_V1; msg->payload.user.t = tag; msg->tail.magic = OPAHRS_MSG_MAGIC_TAIL; } void opahrs_msg_v1_init_link_tx (struct opahrs_msg_v1 * msg, enum opahrs_msg_link_tag tag) { msg->head.magic = OPAHRS_MSG_MAGIC_HEAD; msg->head.type = OPAHRS_MSG_TYPE_LINK; msg->payload.link.t = tag; msg->tail.magic = OPAHRS_MSG_MAGIC_TAIL; } /** * @} * @} */