1. Trang chủ
  2. » Giáo án - Bài giảng

Project mẫu AVR LED DON

32 69 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • Project mẫu AVR (phần 1)

Nội dung

Project mẫu AVR (phần 1) 1.Đèn LED nhấp nháy 1s Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size : Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC.0 //dinh nghi LED la PORTC.0 void main(void) { // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0x01; //LED duoc noi vao PORTC.0 vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0x01; //chon trang thai cho phep xuat dieu khien led while (1) { LED = ~LED;//dao trang thai led ( 1-> va 0-> 1) delay_ms(500); //tre 500ms }; } 2.8 đèn LED nhấp nháy 1s  Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size :0 Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC //dinh nghia LED la PORTC void main(void) { // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0xFF; //LED duoc noi vao PORTC vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0xFF; //chon trang thai cho phep xuat dieu khien led while (1) { LED = ~LED;//dao trang thai led ( 1-> va 0-> 1) delay_ms(500); //tre 500ms }; } 3.4 LED sáng LED tắt luân phiên  Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size :0 Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC //dinh nghia LED la PORTC void main(void) { // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0xFF; //LED duoc noi vao PORTC vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0xFF; //chon trang thai cho phep xuat dieu khien led while (1) { LED = 0x0F;//dao trang thai led ( 1-> va 0-> 1) delay_ms(500); //tre 500ms LED = 0xF0; delay_ms(500); }; } LED sáng từ trái sang phải  Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size :0 Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC //dinh nghia LED la PORTC void main(void) { char i; //khai bao mot bien su dung de dem so lan dich bit // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0xFF; //LED duoc noi vao PORTC vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0xFF; //chon trang thai cho phep xuat dieu khien led while (1) { for(i=0;i { LED = ~(1 >i); //dich so 128 di i don vi ( bit cao nhat la 1)sau dao trang thai bit delay_ms(500); //tre 500ms } }; } 6.LED từ phải qua trái từ trái qua phải  Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size :0 Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC //dinh nghia LED la PORTC void main(void) { char i; //khai bao mot bien su dung de dem so lan dich bit // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0xFF; //LED duoc noi vao PORTC vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0xFF; //chon trang thai cho phep xuat dieu khien led while (1) { for(i=0;i { LED = (0x7f>>i); //dich so 128 di i don vi ( bit cao nhat la 1)sau dao trang thai bit delay_ms(500); //tre 500ms } for(i=0;i { LED = (0xfe< } delay_ms(500); //tre 500ms }; } 6.LED từ phải qua trái từ trái qua phải  Sơ đồ mạch điện: Sơ đồ mạch điện  Chương trình mẫu: Chip type : ATmega16 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size :0 Data Stack size : 256 *****************************************************/ #include "mega16.h" #include "delay.h" //khai bao thu vien ham tao tre #define LED PORTC //dinh nghia LED la PORTC void main(void) { char i; //khai bao mot bien su dung de dem so lan dich bit // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=1 PORTC=0xFF; //LED duoc noi vao PORTC vi vay chon trang thai led sau mach duoc cap nguon la LED tat DDRC=0xFF; //chon trang thai cho phep xuat dieu khien led while (1) { for(i=0;i { LED = (0x7f>>i); //dich so 128 di i don vi ( bit cao nhat la 1)sau dao trang thai bit delay_ms(500); //tre 500ms } for(i=0;i { LED = (0xfe< } }; } 7.INT_8Leds_1Button  Sơ đồ mạch điện: delay_ms(500); //tre 500ms // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // Global enable interrupts #asm("sei") pin_state = 3; while (1) { switch (pin_state) { case 0: while(1){ LED = 0xFF; my_delay(DELAY_VALUE, 0); if (pin_state != 0) break; LED = 0x00; my_delay(DELAY_VALUE, 0); if (pin_state != 0) break; } break; case 1: while(1){ LED = 0b10101010; my_delay(DELAY_VALUE, 1); if (pin_state != 1) break; LED = 0b01010101; my_delay(DELAY_VALUE, 1); if (pin_state != 1) break; } break; case 2: LED = 0xFF; while(1){ if (LED == 0){ LED = 0xFF; my_delay(DELAY_VALUE, 2); } if (pin_state != 2) break; LED = (LED

Ngày đăng: 16/12/2019, 17:09

TỪ KHÓA LIÊN QUAN

w