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

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 4,19 MB

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