ATmega128实例程序要点

  • 格式:doc
  • 大小:244.00 KB
  • 文档页数:45

1 1、流水灯 ................................................................................................................................................................. 1

2、AD转换+数码管显示 ........................................................................................................................................ 2

3、对EEPROM进行读写操作 ............................................................................................................................... 8

4、定时器0(轮循方式) ...................................................................................................................................... 9

5、定时器0中中断 ............................................................................................................................................... 10

6、定时器1测试程序 ........................................................................................................................................... 12

7、定时器1测试程序之二 ................................................................................................................................... 14

8、串口通信(USART0) .................................................................................................................................... 15

9、串口通信(USART1) .................................................................................................................................... 17

10、ATMEGA128 SPI驱动 .................................................................................................................................. 20

11、PWM波形输出 ............................................................................................................................................... 21

12、定时器1数码管显示(1s) .......................................................................................................................... 22

13、定时器1:定时计数(1s) ........................................................................................................................... 27

14、外部中断0-3 ................................................................................................................................................... 32

15、定时器3 pwm输出 ........................................................................................................................................ 34

16、定时器0,快速PWM模式 ........................................................................................................................... 35

17、定时器0,相位修正(调整)模式 .............................................................................................................. 36

18、定时器1pwm波形输出 ................................................................................................................................. 38

19、定时器3,OCRB3输出PWM波形,占空比可调 ..................................................................................... 39

1、流水灯

/*

硬件环境:atmega128开发板

软件环境:CodeVisionAVR-C

*/

#include

#define uchar unsigned char

#define uint unsigned int

uchar cnt;

void timer1_init()

{

TCCR1B=0X00; //先停止定时器1

TCNT1H=0XF0; //设定定时器初值

TCNT1L=0XBE;

TCCR1A=0X00; //启动定时器1

TCCR1B=0X05; //使用1024分频

}

interrupt [TIM1_OVF] void timer1_ovf_isr(void)

{

TCNT1H=0XF0; //重载定时器初值

TCNT1L=0XBE;

DDRE|=1<<2;

PORTE|=1<<2;

DDRA=0xff;

2 PORTA=cnt; //输出led的值到端口B

cnt++;

if(cnt==255)

cnt=0;

}

void main()

{

//DDRB=0XFF;

SREG|=0X80;

TIMSK=0X04;

timer1_init();

while(1)

{;

}

}

2、AD转换+数码管显示

/***************************************************************************/

/*ADC测试程序 */

/*目标器件:ATmega128 */

/*晶振:RC 8MHZ */

/*编译环境:ICCAVR 7.13A */

/*E-Mail:number007cool@ */

/*时间:2010年11月13日 */

//Aref接AVCC(+5V),采用Aref作参考电压

/*用数码管显示AD转换的结果*/

/***************************************************************************/

/*********************************包含头文件********************************/

#include

#include

/********************************数码管段码表*******************************/

extern const unsigned char tab[]={0x3f,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,

0x7F,0x6F};

/*********************************全局变量**********************************/

unsigned int adc_rel=0;

/****************************************************************************

函数功能:ADC初始化函数

入口参数:

出口参数:

****************************************************************************/