y>

Công Nghệ Cơ Điện Tử, Phát Triển Dự Án Cơ Điện Tử, Robotics, Tự Động Hóa, PLC, Vi Điều Khiển...
Monday, 2024-11-18, 2:25 AM
Main

Sign Up

Login
Welcome Guest | RSS
MENU
DANH MỤC
Họ 89C51 [3]
AVR [0]
PIC+dsPIC [5]
ARM [0]
  LẬP TRÌNH S7 300
 
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 1
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 2
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 3
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 4
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 5
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 6
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 7
LẬP TRÌNH S7-300 CƠ BẢN- BÀI 8
ĐIỀU KHIỂN GIÁM SÁT HỆ THỐNG TRỘN LIỆU TRONG CÔNG NGHIỆP
Main » Articles » LẬP TRÌNH VI ĐIỀU KHIỂN » PIC+dsPIC

Ex01_Điều khiển Led

Điều khiển LED vào ra là bài tập cơ bản khi bắt đầu học lập trình bất kỳ dòng vi điều khiển nào. EX01 này sẽ thực hiện điều khiển 7 led nối vào PORTB của PIC16F877. Thực hiện nhiều hiệu ứng khác nhau.
* Sơ đồ phần cứng:

*Code CCS:

+ Chương trình 1:
#include <16F877A.h>
#include <def_877a.h>
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)

void main()
{
   int k;
   TRISB= 0;
   PORTB=0xFF;
   delay_ms(1000);
   PORTB=0;
   for(k=0; k<20;k++)
   {
   switch(PORTB)
   {
      case 0:  PORTB=0xFF;
               delay_ms(200);
               break;
      case 0xFF:  PORTB=0;
                  delay_ms(200);
                  break;
   }  
   }
   PORTB= 0b01010101;
   while(1)
   {
   PORTB=~PORTB;
   delay_ms(200);
   }

}
/////////////////////////////////////////////////
+Chương trình 2:

#include <16F877A.h>
#include <def_877a.h>
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
int k=0;
char savebank;

void main()
{

   TRISB= 0;//output
   PORTB=0;
   delay_ms(1000);
   do
   {
   PORTB=~PORTB;
   delay_ms(200);
   k++;
   }
   while(k<20)
   k=0;//xóa k
   savebank= STATUS&&0b01100000;
   asm 
      {
      bsf STATUS,RP0 // lua chon bank nho trong OSCCON
      bcf STATUS,RP1 // thank ghi
      bcf OSCCON,6 // lua chon dao dong noi LFINTOSC tan so 31kHz
      bcf OSCCON,5 
      bcf OSCCON,4
      bsf OSCCON,0// cho phep su dung dao dong noi
   }
   STATUS &= 0b10011111; // tra lai gia tri cac bit RP0, RP1
   STATUS |= saveBank;
   do {
   PORTB = ~PORTB; 
   Delay_ms(10); 
   k++; 
   }
   while(k<20); 
}

Category: PIC+dsPIC | Added by: dvtran (2013-07-14)
Views: 702 | Rating: 0.0/0
Total comments: 0
Name *:
Email *:
Code *:

Tìm kiếm
Cửa sổ đăng nhập
Lịch

website tham khảo
  • dientumaytinh.com
  • microcontroller51
  • www.indiabix.com
  • finalyearthesis
  • tutorial.cytron
  • dharmanitech.com
  • kmitl.ac.th
  • electro-hobby
  • Copyright dientran108 © 2024 Free web hostinguCoz