⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 simple program in using SPI as master in AVR atmega32
💻 C
字号:
#define F_CPU 10000000UL
#include <stdio.h>
#include <avr/io.h>
#include <avr/iom32.h>
#include <util/delay.h>
#include <avr/pgmspace.h>
#define  loop_until_bit_is_clear(sfr, bit)   do { } while (bit_is_set(sfr, bit)) 
#define  sbi(port, bit) (port) |= (1 << (bit))
#define pi 3.141592654

#define  sbi(port, bit) (port) |= (1 << (bit))
#define  cbi(port, bit) (port) &= ~(1 << (bit))



int main(void)
{


DDRB = (1<<PINB5)|(1<<PINB7)|(1<<PINB4);

/* Enable SPI, Master, set clock rate fck/16 */
SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);
DDRA=0; // PORTA as input

	while (1){
	cbi(PORTB, 4);
	SPDR = PINA;// read the data from PORTA and transmit it through SPI
/* Wait for transmission complete */
  while(!(SPSR & (1<<SPIF))){}
  sbi(PORTB, 4);
	 }
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -