#include <htc.h> device dependent interrupt definitions
/*
* LED BLINKING Example
* Author : Bruno Gavand
* Compiler : mikroC V6.0
* Date : september, 2006
* Release : 1.0
*
* this program toggles PORTB outputs
*
* see more details on http://www.micro-examples.com
*
*/
CONFIG(FOSC_INTOSCCLK);
Using Internal Clock of 8 Mhz
#define FOSC 8000000L
#define SPI_CS RA2
#define SPI_CLK RA3
#define SPI_DI RA4
Delay Function
#define _delay_us(x) { unsigned char us; \
us = (x)/(12000000/FOSC)|1; \
while(--us != 0) continue; }
spi function
unsigned int spi_in()
{ unsigned char t;
unsigned int data;
SPI_CS = 0;
for (t=0;t<16;t)
{ SPI_CLK = 0;
SPI_CLK = 1; data in
data = data
1;
data = data | SPI_DI;
}
SPI_CS = 1;
return data;
}
void main() {
int i,j;
TRISA = 0b00110011 ; set PORTA as INPUT
TRISB = 0 ; set PORTB as OUTPUT
for(i=0;i<1000;i) forever
{
PORTB=spi_in(); Show spi_in on port b
_delay_us(1000);
PORTB=0b01010101; Switch on B.0
_delay_us(100);
PORTB=0b00000000; Switch on B.0
}
}
/*
* LED BLINKING Example
* Author : Bruno Gavand
* Compiler : mikroC V6.0
* Date : september, 2006
* Release : 1.0
*
* this program toggles PORTB outputs
*
* see more details on http://www.micro-examples.com
*
*/
CONFIG(FOSC_INTOSCCLK);
Using Internal Clock of 8 Mhz
#define FOSC 8000000L
#define SPI_CS RA2
#define SPI_CLK RA3
#define SPI_DI RA4
Delay Function
#define _delay_us(x) { unsigned char us; \
us = (x)/(12000000/FOSC)|1; \
while(--us != 0) continue; }
spi function
unsigned int spi_in()
{ unsigned char t;
unsigned int data;
SPI_CS = 0;
for (t=0;t<16;t)
{ SPI_CLK = 0;
SPI_CLK = 1; data in
data = data
SPI_CS = 1;
return data;
}
void main() {
for(i=0;i<1000;i) forever
}
data = data
1;
data = data | SPI_DI;
} data = data | SPI_DI;
SPI_CS = 1;
return data;
}
void main() {
int i,j;
TRISA = 0b00110011 ; set PORTA as INPUT
TRISB = 0 ; set PORTB as OUTPUT
TRISB = 0 ; set PORTB as OUTPUT
for(i=0;i<1000;i) forever
{
PORTB=spi_in(); Show spi_in on port b
_delay_us(1000);
PORTB=0b01010101; Switch on B.0
_delay_us(100);
PORTB=0b00000000; Switch on B.0
}_delay_us(1000);
PORTB=0b01010101; Switch on B.0
_delay_us(100);
PORTB=0b00000000; Switch on B.0
There are no comments on this page. [Add comment]