Esempio n. 1
0
void mrf24j40_handle_isr() {

uns8 intstat;

	// first we need to get a copy of intstat to find out what happened
	intstat = mrf24j40_short_addr_read(INTSTAT);
	
	// mrf24j40 intstat register is cleared on read
	if (test_bit(intstat, INTSTAT_RXIF)) {
	        #ifndef __PIC32MX__
        		serial_print_str("R");
                #endif        		
		// handle receive
		mrf24j40_receive_callback();
	}
	if (test_bit(intstat, INTSTAT_TXNIF)) {
	        #ifndef __PIC32MX__	
        		serial_print_str("Tx complete txstat=0x");
        	#endif	
		uns8 stat = mrf24j40_short_addr_read(TXSTAT);
		mrf24j40_transmit_callback(stat & 0b00000001,	// success = 0
		                                  stat >> 6,	// retries
		                                  test_bit(stat, TXSTAT_CCAFAIL)); // due to cca failure?
	        #ifndef __PIC32MX__		                                  
        		serial_print_int_hex(stat);
	        	serial_print_nl();
                #endif	        	
	}

}	
Esempio n. 2
0
void mrf24j40_set_extended_address(uns8 *_extended_address) {
	uns8 count;
	uns8 mem_pos = EADR7;
	#ifndef __PIC32MX__
        	serial_print_str("Setting EA to: ");
    #endif        	
	for (count = 0; count < 8; count++) {
		extended_address[count] = _extended_address[count];
		mrf24j40_short_addr_write(mem_pos--, extended_address[count]);
		#ifndef __PIC32MX__
        		serial_print_int_hex(extended_address[count]);
	        	serial_putc(' ');
	    #endif	
	}
	#ifndef __PIC32MX__
        	serial_print_nl();
    #endif        	
}	
Esempio n. 3
0
void main() {
	
	configure_system();

	delay_ms(100);

	serial_print_str("\n\nPicPack Sure 2416 Led display demo\n");
	serial_print_str( "\n<");
	serial_print_str(__TIME__);
	serial_putc(' ');
	serial_print_str(__DATE__);
	serial_print_str(">\n");
	delay_ms(100);
//	sure_2416_write(0,0b00001111);
	uns8 brightness = 0;
	uns8 my_count = 0;

	while (1) {
		//delay_ms(250);
		//serial_print_str("writing...\n");
		//sure_2416_write(0,0b00001111);
		/*delay_s(5);
		sure_2416_set_pixel(0,0,1);

		delay_s(1);
		sure_2416_set_pixel(23,0,1);
		
		delay_s(1);
		sure_2416_set_pixel(23,15,1);

		delay_s(1);
		sure_2416_set_pixel(0,15,1);

		delay_s(1);
		sure_2416_set_pixel(0,0,0);

		delay_s(1);
		sure_2416_set_pixel(23,0,0);
		
		delay_s(1);
		sure_2416_set_pixel(23,15,0);

		delay_s(1);
		sure_2416_set_pixel(0,15,0);*/
		/*uns8 x,y;
		for(x = 0 ; x < 24 ; x++) {
			for(y = 0 ; y < 16 ; y++) {
				sure_2416_set_pixel(x, y, 1);
			}
		}		
		delay_ms(100);
		for(x = 0 ; x < 24 ; x++) {
			for(y = 0 ; y < 16 ; y++) {
				sure_2416_set_pixel(x, y, 0);
			}
		}		
		delay_ms(100);
		*/
		sure_2416_fill2(0);
		delay_ms(100);
		sure_2416_fill2(1);
		delay_ms(100);
		my_count++;
		if (my_count == 10) {
			serial_print_str("Setting brightness to ");
			serial_print_int(brightness);
			serial_print_nl();
			sure_2416_set_brightness(brightness++);
			if (brightness == 16) {
				brightness = 0;
			}
			my_count = 0;
		}		
	}
	
}	// main
void main() {

	trisa = 0;
	flash();
	configure_system();
	flash();
	delay_ms(100);

	serial_print_str("\n\nPicPack Sure 6432 Led display demo\n");
	serial_print_str( "\n<");
	serial_print_str(__TIME__);
	serial_putc(' ');
	serial_print_str(__DATE__);
	serial_print_str(">\n");

	serial_print_str("total buffer = ");
	serial_print_int(DRAW_TOTAL_BUFFER_SIZE);
	serial_print_nl();
	serial_print_str("wide = ");
	serial_print_int(DRAW_PIXELS_WIDE);
	serial_print_nl();
	serial_print_str("high = ");
	serial_print_int(DRAW_PIXELS_HIGH);
	serial_print_nl();
	serial_print_str("ppb = ");
	serial_print_int(DRAW_PIXELS_PER_BYTE);
	serial_print_nl();
	while (1) {
		/*delay_ms(250);
		
		draw_set_pixel(0,0,1);
		draw_paint();
		
		delay_s(1);
		draw_set_pixel(23,0,1);
		draw_paint();
		
		delay_s(1);
		draw_set_pixel(23,15,1);
		draw_paint();

		delay_s(1);
		draw_set_pixel(0,15,1);
		draw_paint();

		delay_s(1);
		draw_set_pixel(0,0,0);
		draw_paint();

		delay_s(1);
		draw_set_pixel(23,0,0);
		draw_paint();
		
		delay_s(1);
		draw_set_pixel(23,15,0);
		draw_paint();

		delay_s(1);
		draw_set_pixel(0,15,0);
		draw_paint();

		delay_s(1);
		draw_line(0, 0, 23, 15, 1);
		draw_paint();

		delay_s(1);
		draw_line(0, 15, 23, 0, 1);
		draw_paint();

		delay_s(1);
		draw_line(0, 0, 23, 15, 0);
		draw_paint();

		delay_s(1);
		draw_line(0, 15, 23, 0, 0);
		draw_paint();

		delay_s(1);
		draw_circle(12, 8, 1, 1);
		draw_paint();

		delay_s(1);
		draw_circle(12, 7, 2, 1);
		draw_paint();

		delay_s(1);
		draw_circle(12, 7, 3, 1);
		draw_paint();

		delay_s(1);
		draw_circle(12, 7, 4, 1);
		draw_paint();
		delay_s(1);
		draw_circle(12, 7, 5, 1);
		draw_paint();
		delay_s(1);
		draw_circle(12, 7, 6, 1);
		draw_paint();
		delay_s(1);
		draw_circle(12, 7, 7, 1);
		draw_paint();
		
		delay_s(1);*/
		draw_clear_screen();
		serial_print_str("Rectangle\n");
		draw_rect(1, 1, DRAW_PIXELS_WIDE - 1 -1 , DRAW_PIXELS_HIGH - 1 - 1, 2);
		/*draw_set_pixel(0,0,1);
		draw_set_pixel(DRAW_PIXELS_WIDE - 1, 0, 1);
		draw_set_pixel(DRAW_PIXELS_WIDE - 1, DRAW_PIXELS_HIGH - 1, 1);
		draw_set_pixel(0, DRAW_PIXELS_HIGH - 1, 1);
			*/	
		uns16 countp;
		for (countp = 0; countp < 200; countp++) {
			draw_paint();
		}	
		
		draw_clear_screen();
		serial_print_str("Rectangle\n");
		draw_rect(1, 1, 62, 30, 1);
		draw_circle(31, 16, 15, 3);
		for (countp = 0; countp < 1000; countp++) {
			draw_paint();
		}	
		

		

	}
	
}	// main