0,0 → 1,149 |
/* |
* Wi232.h |
* |
* Created on: 11.06.2011 |
* Author: cebra |
*/ |
|
#ifndef WI232_H_ |
#define WI232_H_ |
|
|
void discoverWi232(void); |
void Wi232_USB(void); |
void Wi232_FC(void); |
void InitWi232(void); |
int16_t WriteWi232(uint8_t Wi232Register, uint8_t RegisterValue); |
int16_t readWi232(uint16_t Wi232Register); |
extern uint8_t Wi232_hardware; |
|
/*Non-volatile Registers*/ |
/* Name Address Description Default*/ |
|
#define regNVTXCHANNEL 0x00 /*Transmit channel setting 0*/ |
#define regNVRXCHANNEL 0x01 /*Receive channel setting 0*/ |
#define regNVPWRMODE 0x02 /*Operating mode settings +13 dBm widebandmode*/ |
#define regNVDATARATE 0x03 /*UART data rate 2400bps*/ |
#define regNVNETMODE 0x04 /*Network mode (Normal/Slave) Normal*/ |
#define regNVTXTO 0x05 /*Transmit wait timeout ~16ms*/ |
#define regNVNETGRP 0x06 /*Network group ID 0x00*/ |
#define regNVUSECRC 0x08 /*Enable/Disable CRC Enabled*/ |
#define regNVUARTMTU 0x09 /*Minimum transmission unit. 64 bytes*/ |
#define regNVSHOWVER 0x0A /*Enable/Disable start-up message Enabled*/ |
#define regNVCSMAMODE 0x0B /*Enable/Disable CSMA Enabled*/ |
#define regNVSLPMODE 0x0D /*Power state of module Awake*/ |
|
/*Non-volatile Read Only Registers*/ |
|
/* Name Address Description*/ |
|
#define regMAC0 0x22 /*These registers form the unique 48-bit MAC address.*/ |
#define regMAC1 0x23 |
#define regMAC2 0x24 |
#define regOUI0 0x25 |
#define regOUI1 0x26 |
#define regOUI2 0x27 |
|
/*Volatile Read/Write Registers*/ |
/* Name Address Description*/ |
#define regTXCHANNEL 0x4B /* Transmit channel setting*/ |
#define regRXCHANNEL 0x4C /* Receive channel setting*/ |
#define regPWRMODE 0x4D /* Operating mode settings*/ |
#define regDATARATE 0x4E /* UART data rate*/ |
#define regNETMODE 0x4F /* Network mode (Normal or Slave)*/ |
#define regTXTO 0x50 /* Transmit wait timeout*/ |
#define regNETGRP 0x51 /* Network group ID*/ |
#define regUSECRC 0x53 /* Enable/Disable CRC*/ |
#define regUARTMTU 0x54 /* Minimum transmission unit.*/ |
#define Reserved 0x55 |
#define regCSMAMODE 0x56 /* Enable/disable CSMA*/ |
#define regSLPMODE 0x58 /* Power state of module*/ |
#define regDiscover 0x78 /* Versionsregister*/ |
|
|
|
/*Wideband Channels*/ |
/*regNVTXCHAN (0x00) regTXCHAN (0x4B)*/ |
/* Channel Number Frequency*/ |
#define wChan0 0x00 /*868.300 MHz*/ |
#define wChan1 0x01 /*868.95 MHz*/ |
|
/*Narrowband Channels*/ |
/*regNVRXCHAN (0x01) regRXCHAN (0x4C)*/ |
/* Channel Number Frequency*/ |
#define nChan0 0x00 /*868.225 MHz*/ |
#define nChan1 0x01 /*868.375 MHz*/ |
#define nChan2 0x02 /*868.850 MHz*/ |
#define nChan3 0x03 /*869.050 MHz*/ |
#define nChan4 0x04 /*869.525 MHz*/ |
#define nChan5 0x05 /*869.850 MHz*/ |
|
/* Power Mode*/ |
/*regNVPWRMODE (0x02) regPWRMODE (0x4D)*/ |
/* PM1 PM1 PM0 Mode*/ |
#define NbModeN2 0x00 /*0 0 0 Narrowband Mode – -2dBm power setting (typical)*/ |
#define WbModeP2 0x01 /*0 0 1 Wideband Mode – +2dBm power setting (typical)*/ |
#define WbModeP7 0x02 /*0 1 0 Wideband Mode – +7dBm power setting (typical)*/ |
#define WbModeP13 0x03 /*0 1 1 Wideband Mode – +13dBm power setting (typical)*/ |
#define WbModeN2 0x04 /*1 0 0 Wideband Mode – -2dBm power setting (typical)*/ |
#define NbModeP2 0x05 /*1 0 1 Narrowband Mode – +2dBm power setting (typical)*/ |
#define NbModeP7 0x06 /*1 1 0 Narrowband Mode – +7dBm power setting (typical)*/ |
#define NbModeP13 0x07 /*1 1 1 Narrowband Mode – +13dBm power setting (typical)*/ |
|
/* Wi232 UART Baudrate*/ |
/*regNVDATARATE (0x03) regDATARATE (0x4E)*/ |
/* Baud Rate BR2 BR1 BR0*/ |
#define Wi232_2400 0x00 /*0 0 0* (default 2400)*/ |
#define Wi232_9600 0x01 /*0 0 1*/ |
#define Wi232_19200 0x02 /*0 1 0*/ |
#define Wi232_38400 0x03 /*0 1 1*/ |
#define Wi232_57600 0x04 /*1 0 0*/ |
#define Wi232_115200 0x05 /*1 0 1*/ |
#define Wi232_10400 0x06 /*1 1 0*/ |
#define Wi232_31250 0x07 /*1 1 1*/ |
|
/* NetworkMode*/ |
/*regNVNETMODE (0x04) regNETMODE (0x4F)*/ |
#define NetMode_Normal 0x01 /* Normalmode (default)*/ |
#define NetMode_Slave 0x00 /* Slavemode*/ |
|
/*Transmit Wait Timeout*/ |
/*regNVTXTO (0x05) regTXTO (0x50)*/ |
#define TWaitTimeFull 0x00 /* full Buffer required*/ |
#define TWaitTime16 0x10 /* 16 ms Delay (default)*/ |
|
/*Network Group*/ |
/*regNVNETGRP (0x06) regNETGRP (0x51)*/ |
#define NetWorkGroup 0x00 /* default 0, valid 0-127*/ |
|
|
/*CRC Control*/ |
/*regNVUSECRC (0x08) regUSECRC (0x53)*/ |
#define CRC_Disable 0x00 /* no CRC check*/ |
#define CRC_Enable 0x01 /* CRC check (default)*/ |
|
/*UART minimum transmission unit*/ |
/*regNVUARTMTU (0x09) regUARTMTU (0x54)*/ |
|
#define UartMTU64 64 /* default=64, valid 1-144*/ |
|
/*Verbose mode*/ |
/*regNVSHOWVER (0x0A)*/ |
|
#define ShowVers_En 0x01 /* show Startupmessage (default)*/ |
#define ShowVers_Dis 0x01 /* do not show Startupmessage*/ |
|
/*CSMA enable*/ |
/*regNVCSMAMODE (0x0B) regCSMAMODE (0x56)*/ |
#define CSMA_En 0x01 /* enable CSMA Carrier-sense multiple access (default)*/ |
#define CSMA_Dis 0x00 /* disable CSMA */ |
|
/*Sleep control*/ |
/*regNVSLPMODE (0x0D) regSLPMODE (0x58)*/ |
#define Sleep_Awake 0x00 /* Sleepmode = Awake (default)*/ |
#define Sleep 0x01 /* Sleepmode = Sleep*/ |
#define Sleep_Stby 0x02 /* Sleepmode = Standby*/ |
|
|
|
#endif /* WI232_H_ */ |