Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: HeptaXbee.cpp
- Revision:
- 4:ede5c519e238
- Parent:
- 3:c3e667ee70f1
- Child:
- 5:c441a88f6952
--- a/HeptaXbee.cpp Sat Aug 05 14:21:01 2017 +0000
+++ b/HeptaXbee.cpp Wed Aug 23 06:18:34 2017 +0000
@@ -6,137 +6,245 @@
{
rcmd = 0;
cmdflag = 0;
+ //xbee.baud(115200);
}
-void HeptaXbee::xbee_recieve(int *xrcmd, int *xcmdflag) {
+void HeptaXbee::xbee_recieve(int *xrcmd, int *xcmdflag)
+{
xbee.attach(this,&HeptaXbee::commandget,Serial::RxIrq);
//xbee.printf("ssXbeedata= %d,%d",HeptaXbee::rcmd,HeptaXbee::cmdflag);
*xrcmd = HeptaXbee::rcmd;
*xcmdflag = HeptaXbee::cmdflag;
}
-void HeptaXbee::initialize(){
+void HeptaXbee::initialize()
+{
HeptaXbee::rcmd = 0;
HeptaXbee::cmdflag = 0;
}
-void HeptaXbee::commandget(){
+void HeptaXbee::commandget()
+{
HeptaXbee::rcmd=xbee.getc();
HeptaXbee::cmdflag = 1;
//xbee.printf("Xbeedata= %d,%d",rcmd,cmdflag);
}
void HeptaXbee::xbee_transmit(char* output_data,size_t output_n,
- char data1[],char data2[],char data3[],char data4[],char data5[],char data6[],char data7[],char data8[],char data9[],char data10[],char data11[],char data12[],char data13[],char data14[],
- int n1,int n2,int n3,int n4,int n5,int n6,int n7,int n8,int n9,int n10,int n11,int n12,int n13,int n14,int data_num)
+ char data1[],char data2[],char data3[],char data4[],char data5[],char data6[],char data7[],char data8[],char data9[],char data10[],char data11[],char data12[],char data13[],char data14[],
+ int n1,int n2,int n3,int n4,int n5,int n6,int n7,int n8,int n9,int n10,int n11,int n12,int n13,int n14,int data_num)
{
int N=0,i=0,ii;
- if(data_num>=1){
- for(i = 0; i <= n1-1; i++){
- output_data[N+i] = data1[i];
+ if(data_num>=1) {
+ for(i = 0; i <= n1-1; i++) {
+ output_data[N+i] = data1[i];
}
N=i;
}
-
- if(data_num>=2){
- for(i = 0; i <= n2-1; i++){
- output_data[N+i] = data2[i];
+
+ if(data_num>=2) {
+ for(i = 0; i <= n2-1; i++) {
+ output_data[N+i] = data2[i];
}
N=N+i;
}
- if(data_num>=3){
- for(i = 0; i <= n3-1; i++){
- output_data[N+i] = data3[i];
+ if(data_num>=3) {
+ for(i = 0; i <= n3-1; i++) {
+ output_data[N+i] = data3[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=4) {
+ for(i = 0; i <= n4-1; i++) {
+ output_data[N+i] = data4[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=5) {
+ for(i = 0; i <= n5-1; i++) {
+ output_data[N+i] = data5[i];
}
N=N+i;
}
- if(data_num>=4){
- for(i = 0; i <= n4-1; i++){
- output_data[N+i] = data4[i];
+ if(data_num>=6) {
+ for(i = 0; i <= n6-1; i++) {
+ output_data[N+i] = data6[i];
}
N=N+i;
}
- if(data_num>=5){
- for(i = 0; i <= n5-1; i++){
- output_data[N+i] = data5[i];
+ if(data_num>=7) {
+ for(i = 0; i <= n7-1; i++) {
+ output_data[N+i] = data7[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=8) {
+ for(i = 0; i <= n8-1; i++) {
+ output_data[N+i] = data8[i];
}
N=N+i;
}
- if(data_num>=6){
- for(i = 0; i <= n6-1; i++){
- output_data[N+i] = data6[i];
+ if(data_num>=9) {
+ for(i = 0; i <= n9-1; i++) {
+ output_data[N+i] = data9[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=10) {
+ for(i = 0; i <= n10-1; i++) {
+ output_data[N+i] = data10[i];
}
N=N+i;
}
- if(data_num>=7){
- for(i = 0; i <= n7-1; i++){
- output_data[N+i] = data7[i];
+ if(data_num>=11) {
+ for(i = 0; i <= n11-1; i++) {
+ output_data[N+i] = data11[i];
}
N=N+i;
}
- if(data_num>=8){
- for(i = 0; i <= n8-1; i++){
- output_data[N+i] = data8[i];
+ if(data_num>=12) {
+ for(i = 0; i <= n12-1; i++) {
+ output_data[N+i] = data12[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=13) {
+ for(i = 0; i <= n13-1; i++) {
+ output_data[N+i] = data13[i];
}
N=N+i;
}
- if(data_num>=9){
- for(i = 0; i <= n9-1; i++){
- output_data[N+i] = data9[i];
+ if(data_num>=14) {
+ for(i = 0; i <= n14-1; i++) {
+ output_data[N+i] = data14[i];
}
- N=N+i;
+ }
+ for(ii=0; ii<output_n; ii++) {
+ xbee.putc(output_data[ii]);
+
}
- if(data_num>=10){
- for(i = 0; i <= n10-1; i++){
- output_data[N+i] = data10[i];
+ xbee.printf("\n");
+}
+void HeptaXbee::puts( char *s )
+{
+ while ( char c = *s++ )
+ xbee.putc( c );
+}
+void HeptaXbee::printf( char *format, ... )
+{
+ char s[ 100 ];
+ va_list args;
+
+ va_start( args, format );
+ vsnprintf( s, 100, format, args );
+ va_end( args );
+
+ xbee.puts( s );
+}
+char HeptaXbee::getc()
+{
+ char character;
+ character = xbee.getc();
+ return character;
+}
+
+char HeptaXbee::putc(char cc)
+{
+ xbee.putc(cc);
+}
+/*
+void HeptaXbee::xbee_transmit_SD(char* output_data,size_t output_n,
+ char data1[],char data2[],char data3[],char data4[],char data5[],char data6[],char data7[],char data8[],char data9[],char data10[],char data11[],char data12[],char data13[],char data14[],
+ int n1,int n2,int n3,int n4,int n5,int n6,int n7,int n8,int n9,int n10,int n11,int n12,int n13,int n14,int data_num)
+{
+ int N=0,i=0,ii;
+ if(data_num>=1) {
+ for(i = 0; i <= n1-1; i++) {
+ output_data[N+i] = data1[i];
+ }
+ N=i;
+ }
+
+ if(data_num>=2) {
+ for(i = 0; i <= n2-1; i++) {
+ output_data[N+i] = data2[i];
}
N=N+i;
}
- if(data_num>=11){
- for(i = 0; i <= n11-1; i++){
- output_data[N+i] = data11[i];
- }
- N=N+i;
- }
- if(data_num>=12){
- for(i = 0; i <= n12-1; i++){
- output_data[N+i] = data12[i];
- }
- N=N+i;
- }
- if(data_num>=13){
- for(i = 0; i <= n13-1; i++){
- output_data[N+i] = data13[i];
+ if(data_num>=3) {
+ for(i = 0; i <= n3-1; i++) {
+ output_data[N+i] = data3[i];
}
N=N+i;
}
- if(data_num>=14){
- for(i = 0; i <= n14-1; i++){
- output_data[N+i] = data14[i];
+ if(data_num>=4) {
+ for(i = 0; i <= n4-1; i++) {
+ output_data[N+i] = data4[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=5) {
+ for(i = 0; i <= n5-1; i++) {
+ output_data[N+i] = data5[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=6) {
+ for(i = 0; i <= n6-1; i++) {
+ output_data[N+i] = data6[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=7) {
+ for(i = 0; i <= n7-1; i++) {
+ output_data[N+i] = data7[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=8) {
+ for(i = 0; i <= n8-1; i++) {
+ output_data[N+i] = data8[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=9) {
+ for(i = 0; i <= n9-1; i++) {
+ output_data[N+i] = data9[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=10) {
+ for(i = 0; i <= n10-1; i++) {
+ output_data[N+i] = data10[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=11) {
+ for(i = 0; i <= n11-1; i++) {
+ output_data[N+i] = data11[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=12) {
+ for(i = 0; i <= n12-1; i++) {
+ output_data[N+i] = data12[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=13) {
+ for(i = 0; i <= n13-1; i++) {
+ output_data[N+i] = data13[i];
+ }
+ N=N+i;
+ }
+ if(data_num>=14) {
+ for(i = 0; i <= n14-1; i++) {
+ output_data[N+i] = data14[i];
}
}
- for(ii=0;ii<output_n;ii++){
- xbee.putc(output_data[ii]);
-
+ for(ii=0; ii<output_n; ii++) {
+ xbee.putc(output_data[ii]);
}
- xbee.printf("\n");
-}
-void HeptaXbee::puts( char *s ) {
- while ( char c = *s++ )
- xbee.putc( c );
+ xbee.printf("\n");
}
-void HeptaXbee::printf( char *format, ... ) {
- char s[ 32 ];
- va_list args;
-
- va_start( args, format );
- vsnprintf( s, 32, format, args );
- va_end( args );
-
- xbee.puts( s );
-}
-char HeptaXbee::getc(){
- char character;
- character = xbee.getc();
- return character;
- }
\ No newline at end of file
+*/
\ No newline at end of file