Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung
Chào Mừng bạn đến với diễn đàn của lớp 32CĐ Cơ - Điện Tử ĐHCN Việt-Hung

Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung

Sân chơi dành cho sinh viên giao lưu học tập
 
Trang ChínhPortalCalendarGalleryTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập

Share | 
 

 code lap trinh pic

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
Admin
vip
vip
avatar

Tổng số bài gửi : 366
vi phạm : 0
Join date : 15/04/2010
Age : 27
Đến từ : Bình Lục-Hà Nam

Bài gửiTiêu đề: code lap trinh pic   Sat Nov 26, 2011 9:07 pm

#include <16f877a.h>
#include
#fuses HS, NOWDT, NOLVP, NOBROWNOUT, NOPROTECT, NOPUT, NODEBUG, NOBROWNOUT
#use delay(clock=4000000)
//#use rs232(baud=9600,parity=N,xmit=PIN_B5,rcv=PIN_B2,bits=9) //thiêt lâp cong COM
//------Dinh nghia cac bien-----------
#define Clk ra0
#define Data ra1
#define Rck ra2
#define Oe ra3
//-----------------------------------------------------------------------
void dich_595(unsigned char num1, unsigned char num2);
void Init_595(void);
void Out_595(unsigned char num1,unsigned char num2);
//-------------------------------------------------------------------------
void main(void)
{
set_tris_a(0x00);
output_a(0);
Init_595();
while (True)
{
Out_595(0xD2,0x6E); //xuat du lieu de test
delay_ms(5000);
Out_595(0x00,0x00);
delay_ms(5000);
Out_595(0x2D,0xE6);
delay_ms(5000);

}
}
void Init_595(void)
{
Clk=0;
Clk=1;
Data=0;
Oe=1;
}
void Out_595(unsigned char num1,unsigned char num2)
{
char i;
unsigned int data;
data = ((unsigned int)num1<<Cool | num2; //gop 2 byte num1 va num2 gan cho data (16bit)
Oe = 1; //cam xuat du lieu ra khi chua chuyen doi xong
for(i = 0;i<16;i++)
{
if(data & 0x8000)//truyen bit co trong so cao truoc
Data = 1;
else
Data = 0;
Clk = 1; //xung nhip
Clk =0;
data =data<<1; //dich tra 1 bit
}
Rck = 1; //chot du lieu
Rck = 0;
Oe = 0; //cho phep xuat du lieu ra
}

Mot chuong trinh dung chuc nang PWM cua pic 16f877a


#include <16f877a.h>
#include
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP
#use delay(clock=20000000)
#byte PR2=0x92 //Gia tri nap cho thanh ghi PR2 (quyet dinh chu ki xung)
#byte CCPR1L=0x15 //Gia tri nap cho thanh ghi CCP1L (quyet dinh do rong xung)
#byte CCPR1H=0x16
#byte mode=0x17 //Thanh ghi chon che do cho chuc nang CCP
#byte T2CON=0x12 //Thanh ghi dieu khien bo chia sau
#byte TMR2=0x11 //Gia tri dem cua timer2
#byte PIR1=0x0c
#bit over=0x0c.1 //"over"=1 khi gia tri trong TMR2=PR2 bit nay nam trong PIR1
#bit on=0x12.2 //Bit dieu khien Timer hoat dong trong T2CON


int8 i;
void setPWM()
{
T2CON=0x01; //Thiet lap bo chia tan 1:16 (prescaler)
PIR1=0;
TMR2=0; //Gia tri ban dau cho thanh ghi dem
PR2=255; //Gia tri trong thanh ghi PR2 de timer2 so sanh
mode=0b1100; //Thiet lap CCP1 lam viec o che do PWM************
CCPR1L=0x00;
CCPR1H=0x00;
on=1;
}
void main(void)
{
i=0;
trisc=0x00;
setPWM();
while(1)
{
CCPR1L=i;
if(TMR2==255& over==1)
{
i=i+1;
if(i==250)
i=0;
over=0;
}
}
}

code: ;chuong trinh 1.1
;portbtest.asm
;dieu khien led noi voi portb sang xen ke
processor p16f877a ;khai bao vi dieu khien
include ;header file
__CONFIG _CP_OFF &_WDT_OFF &_BODEN_OFF &_PWRTE_ON &_XT_OSC &_WRT_OFF &_LVP_OFF &_CPD_OFF
;cofiguration--------------------------------------------------------------------------------------
;_cp_off_ :tat chuc nang bao ve chuong trinh (code protect)
;_wdt_off : tat watchdog timer
;_bode_off :khong cho phep power-out reset
;_pwrte_on : cho phep brown-up timer
;_xt_ost : dao dong thach anh
;_wrt_off : tat chuc nang chong ghi
;_lvp_off : tat che do nap dien ap thap
;_cpd_off : tat chuc nang bao ve ma eeprom (code protect data eeprom)
;----------------------------------------------------------------------------------------------------
org 0x000
GOTO start
start
BCF STATUS,RP0
BCF STATUS,RP1 ;chon bank0
CLRF PORTB
BSF STATUS,RP0 ;chon bank1
CLRF TRISB ;thiet lap portb la output
BCF STATUS,RP0 ; chon bank0
MOVLW 0xaa
MOVWF PORTB
loop
GOTO loop
END
Về Đầu Trang Go down
Xem lý lịch thành viên http://loveanhthao.co.cc
 

code lap trinh pic

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn đàn lớp 32CĐ Cơ-Điện Tử ĐHCN Việt - Hung :: Thông Báo-
Chuyển đến 
Đăng NhậpNhanh
.:Đăngkí:. | .: Quên mật khẩu:.