PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Ðề tài đã khoá
 
Ðiều Chỉnh Xếp Bài
Old 11-10-2007, 02:57 PM   #1
Sangcao
Đệ tử 1 túi
 
Tham gia ngày: May 2006
Bài gửi: 25
:
Bác nào giúp em với:! Em muon truyền 1 tín hiệu 4 - 20mA bằng dây dẫn khoảng cách 1000m, đang định sd 485 nhưng nghe có vẽ ko ổn lắm, sợ nhiễu. tín hiệu thu về cũng là 4-20mA. Ko biết bác nào có cánh hay hơn ko thì giúp mình với! cảm ơn nhiều nhé!
Sangcao vẫn chưa có mặt trong diễn đàn  
Old 11-10-2007, 05:03 PM   #2
vandungevn
Đệ tử 5 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 116
:
Send a message via Yahoo to vandungevn
Timer có nhiều kiểu chia tần, dùng chia trước và sau (prescale và postscale)
là chia trước và chia sau, có nhiều cách đặt tỉ lệ cho Timer từ 1:1 - 1:256 tức là cách chia này giúp cho ta nhận được xung kích vào Timer sẽ được chậm đi n lần ( 1:n ) so với 1Tcy (Fosc/4), và như vậy ta sẽ được xung kich chậm hơn:
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4); // 4Mhz => dùng dao động nội, chế độ prescal 1:4 => clock cho Timer0 la Fosc/4/4 = Fosc/16.
Khi này ta có Fosc/4 => Tcy = 1us. Ttimer0 = Fosc/16 => 4us
Timer0 tràn 8 bit => 4x8bit = 1024us.
8 bit có 256 trạng thái chứ không phải 255 trạng thái, do đó x256,

Còn cách thứ 2 Postscale (Only Timer2) thì nó sẽ đếm số lần tràn của Timer2,
Nghĩa là
1:2 - 2 làn tràn cho ra 1 lần xung .....
1:16 - 16 làn Timer2 tràn
giả sử Áp dụng với Timer2 thay Timer0 ở trên và với postscale 1:8 ta sẽ thu được đầu ra là : 4x256x8 = 8192 us
__________________
Hãy chung sức vì nền Điện Tử Viêt Nam...! Sản Phẩm thương hiệu Việt "Made in Viet Nam"
Nguyen Van Dung - Nguyễn Văn Dũng. Mobile : (+84) 97 329 1368
Nick name : VanDungEvn ( Yahoo + Skype )
Tư vấn & thiết kế điện tử + Làm mạch in + Hoàn thiện sản phẩm điện tử. Mạch nạp 89-PIC-AVR.
Email: vandungevn@gmail.com Website: www.dientuphuongdung.com
Xóm Mới - Nguyên Xá - Minh Khai - Từ Liêm - Hà Nôi - Viet Nam.
vandungevn vẫn chưa có mặt trong diễn đàn  
Old 12-10-2007, 09:01 AM   #3
nhh
Đệ tử 9 túi
 
nhh's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 174
:
Send a message via Yahoo to nhh
Tất nhiên dùng 16F877 được, phí phạm nữa là đằng khác.

Tài liệu tiếng Việt về stepper motor, bạn vào phần điều khiển motor trong diễn đàn này tìm.

Stepper motor của bạn nếu công suất bé có thể dùng ULN lái.
Tham khảo điều khiển stepper motor ở đây:http://www.interq.or.jp/japan/se-inoue/e_step.htm
__________________
Ngày mai bắt đầu từ ngày hôm nay

Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này:
http://www.picvietnam.com/forum//showthread.php?t=1263
nhh vẫn chưa có mặt trong diễn đàn  
Old 12-10-2007, 09:41 AM   #4
Nguoidumuc204
Nhập môn đệ tử
 
Nguoidumuc204's Avatar
 
Tham gia ngày: Oct 2007
Bài gửi: 6
:
output_high(pin_xx);
output_low (pin_xx);

Hai câu lệnh trên chỉ làm cho chân ra xx là cao hay thấp, ứng với mức logic 1 hoặc 0.trong bài trên ta muốn cho sáng tất một port thì chỉ càn câu lệnh :
Code:
void main (void )
{
   set_tris_b(0);      // cả port B là port ra
   set_tris_c(0);     // cả port C là port ra
   port_b(0x00);    // khởi tạo giá trị đầu port B là 0 ( Tất cả led đều tắt )
   port_c(0x00);   // khởi tạo giá trị đầu port B là 0 ( Tất cả led đều tắt )
   delay_ms(100);
   while(1)
  {
        port_b(0xff);   
        delay_ms(1000);
        port_c(0xff); 
        delay_ms(1000);
   }  
}

thay đổi nội dung bởi: namqn, 12-10-2007 lúc 05:57 PM. Lý do: Bài lại sai lỗi chính tả !!
Nguoidumuc204 vẫn chưa có mặt trong diễn đàn  
Old 12-10-2007, 06:12 PM   #5
vandungevn
Đệ tử 5 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 116
:
Send a message via Yahoo to vandungevn
Những function : delay() , rs232(), i2c thì tìm ở đâu vậy ???

bạn xem rõ hơn trong phần help của nó nhé, hoặc tạo new project = PIC Wizard xem trong đó có nói về Những function : delay() , rs232(), i2c ......!
__________________
Hãy chung sức vì nền Điện Tử Viêt Nam...! Sản Phẩm thương hiệu Việt "Made in Viet Nam"
Nguyen Van Dung - Nguyễn Văn Dũng. Mobile : (+84) 97 329 1368
Nick name : VanDungEvn ( Yahoo + Skype )
Tư vấn & thiết kế điện tử + Làm mạch in + Hoàn thiện sản phẩm điện tử. Mạch nạp 89-PIC-AVR.
Email: vandungevn@gmail.com Website: www.dientuphuongdung.com
Xóm Mới - Nguyên Xá - Minh Khai - Từ Liêm - Hà Nôi - Viet Nam.
vandungevn vẫn chưa có mặt trong diễn đàn  
Old 12-10-2007, 10:28 PM   #6
manhckgtcck45
Nhập môn đệ tử
 
Tham gia ngày: Jul 2007
Bài gửi: 5
:
Các anh ơi giúp e với. Các anh có thể chỉ cho em cách sử dụng ngắt ngoài để đếm thời gian của sự thay đổi tín hiệu vào port B không?
manhckgtcck45 vẫn chưa có mặt trong diễn đàn  
Old 13-10-2007, 12:13 AM   #7
thongtr
Đệ tử 2 túi
 
Tham gia ngày: Jul 2007
Bài gửi: 27
:
Send a message via Yahoo to thongtr
cá pac ơi giúp em!! em bi lỗi gì vậy!
Hình Kèm Theo
File Type: bmp untitled.bmp (234.5 KB, 35 lần tải)
__________________
thongtr0601@yahoo.com!!
Giúp nhau cùng tiến bộ.....
thongtr vẫn chưa có mặt trong diễn đàn  
Old 13-10-2007, 09:09 AM   #8
nhh
Đệ tử 9 túi
 
nhh's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 174
:
Send a message via Yahoo to nhh
Trích:
Nguyên văn bởi thongtr View Post
cá pac ơi giúp em!! em bi lỗi gì vậy!
Bạn không nhận thấy chương trình đòi dấu "}" à?
__________________
Ngày mai bắt đầu từ ngày hôm nay

Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này:
http://www.picvietnam.com/forum//showthread.php?t=1263
nhh vẫn chưa có mặt trong diễn đàn  
Old 13-10-2007, 12:52 PM   #9
thongtr
Đệ tử 2 túi
 
Tham gia ngày: Jul 2007
Bài gửi: 27
:
Send a message via Yahoo to thongtr
mình cũng a thêm đấu } vào rồi nhưng cũng ko có tác dụng!! với lại mình đưa chuột tới đấu } cuối cùng đó thì nó hiện ra màu xanh và nhìn lên trên thì thấy màu xanh đó ứng với đấu { dưới hàm void main(void) !!!
mình cũng ko biết bị chuyện nữa!!
File Kèm Theo
File Type: rar VIdu2.rar (524 Bytes, 153 lần tải)
__________________
thongtr0601@yahoo.com!!
Giúp nhau cùng tiến bộ.....
thongtr vẫn chưa có mặt trong diễn đàn  
Old 13-10-2007, 02:05 PM   #10
nhh
Đệ tử 9 túi
 
nhh's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 174
:
Send a message via Yahoo to nhh
Trích:
Nguyên văn bởi thongtr View Post
mình cũng a thêm đấu } vào rồi nhưng cũng ko có tác dụng!! với lại mình đưa chuột tới đấu } cuối cùng đó thì nó hiện ra màu xanh và nhìn lên trên thì thấy màu xanh đó ứng với đấu { dưới hàm void main(void) !!!
mình cũng ko biết bị chuyện nữa!!
- Bạn thiếu dấu ngoặc kép của line1[].

- Chưa include file lcd.c

- Chú ý phép gán = và phép so sánh bằng ==

Việc chạy mô phỏng đúng ko hẳn thực tế sẽ đúng nhưng chạy mô phỏng sai thì chạy trên mạch thật sai là cái chắc.
File Kèm Theo
File Type: rar VIdu2.rar (4.6 KB, 249 lần tải)
__________________
Ngày mai bắt đầu từ ngày hôm nay

Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này:
http://www.picvietnam.com/forum//showthread.php?t=1263

thay đổi nội dung bởi: nhh, 13-10-2007 lúc 05:34 PM.
nhh vẫn chưa có mặt trong diễn đàn  
Old 13-10-2007, 05:21 PM   #11
ghosttn
Nhập môn đệ tử
 
Tham gia ngày: Oct 2007
Bài gửi: 9
:
Xin loi vi chen ngang các anh

Em muon' cho 595 ra 8 bit 1 luc nhung lam mai khong duoc. Em sai ởi chỗ nào
do mới học em chỉ có thể nghĩ đơực như vậy thôi. các anh tối ưu code+ mạch hộ em với.
====================================

#include <16f877a.h>
#use delay(clock=4M)
int8 i;
void input_byte(){
for(i=0;i<=7;i++){
output_bit(pin_B0,0); //1.tao xung cho pin_sck
output_bit(pin_B1,i%=2);//2.dich du lieu vao luc pin_sck o trang thai suon
output_bit(pin_B0,1); //3.ket thuc xung tai pin_sck
}
}
void output_byte(){
output_bit(pin_B2,0); //1.tao xung clock cho pin_rck
delay_ms(100); //2.dung lai de xem
output_bit(pin_B2,1); //3.ket thuc xung tai pin_rck
}

void main(){
set_tris_b(0);
output_bit(pin_B4,0);//khoi dong 595 pin_/OE

while(1){
output_bit(pin_B3,1);//cho phep ghi du lieu pin_MR =1
input_byte();
output_byte();
output_bit(pin_B3,0);//all pin out 595= level low
}//end while
}// end main
==========================
Hình Kèm Theo
File Type: bmp cc.bmp (404.4 KB, 50 lần tải)

thay đổi nội dung bởi: ghosttn, 13-10-2007 lúc 05:46 PM. Lý do: sai
ghosttn vẫn chưa có mặt trong diễn đàn  
Old 14-10-2007, 01:12 AM   #12
thanco112
Đệ tử 1 túi
 
Tham gia ngày: Sep 2007
Bài gửi: 12
:
hỏi về ngắt

Các bác cho em hỏi về các loại ngắt của con 16f877 này với ạ. Tên của nó này, chế độ hoạt động của nó như thế nào (khi nào thì ngắt ấy ạ). Em gà, mới nghiên cứu pic, các bác giúp cho!

GLOBAL
INT_RTCC
INT_RB
INT_EXT
INT_AD
INT_TBE
INT_RDA
INT_TIMER1
INT_TIMER2
INT_CCP1
INT_CCP2
INT_SSP
INT_PSP
INT_BUSCOL
INT_EEPROM
INT_TIMER0

Thanks các bác nhiều
thanco112 vẫn chưa có mặt trong diễn đàn  
Old 22-10-2007, 02:45 PM   #13
vandungevn
Đệ tử 5 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 116
:
Send a message via Yahoo to vandungevn
Hiển thị dùng 595 trên CCS

Dưới đây là một chương trình đưa một byte bằng 74hc595 dùng trên CCS

Code:
void display(unsigned char dataout)
{
	unsigned char temp;
	//dataout = 0xa4;
	output_low(pin_c0); 
for(i=0;i<8;i++)
{       
	temp = dataout;
	temp = temp&0x80;
	if(temp==0x80)
	{
	output_high(pin_c1);    // Data
	}
	else
	{
	output_low(pin_c1);  	// Data
	}
	output_high(pin_c0); 	// Clock
	dataout *=2;  
	output_low(pin_c0);	// Clock
}
output_high(pin_c2);		// Latch
output_low(pin_c2);		// Latch
}
chúc bạn thành công.!
__________________
Hãy chung sức vì nền Điện Tử Viêt Nam...! Sản Phẩm thương hiệu Việt "Made in Viet Nam"
Nguyen Van Dung - Nguyễn Văn Dũng. Mobile : (+84) 97 329 1368
Nick name : VanDungEvn ( Yahoo + Skype )
Tư vấn & thiết kế điện tử + Làm mạch in + Hoàn thiện sản phẩm điện tử. Mạch nạp 89-PIC-AVR.
Email: vandungevn@gmail.com Website: www.dientuphuongdung.com
Xóm Mới - Nguyên Xá - Minh Khai - Từ Liêm - Hà Nôi - Viet Nam.

thay đổi nội dung bởi: namqn, 14-01-2008 lúc 09:32 PM.
vandungevn vẫn chưa có mặt trong diễn đàn  
Old 26-10-2007, 07:06 PM   #14
Yeu PIC
Nhập môn đệ tử
 
Tham gia ngày: Oct 2007
Bài gửi: 1
:
trong ct mình dùng hai file của bộ compiler: lcd.c và ds1307.c
khi biên dịch thành file .hex thì bị những lỗi về delay như thế này:
Nguyên nhân do đau vậy!
Hình Kèm Theo
File Type: bmp untitled.bmp (69.3 KB, 41 lần tải)
Yeu PIC vẫn chưa có mặt trong diễn đàn  
Old 03-11-2007, 05:14 PM   #15
toanck86
Đệ tử 1 túi
 
Tham gia ngày: Apr 2007
Bài gửi: 20
:
em cũng muốn hỏi về counter, và cho hỏi đếm xung encoder bằng counter có được không nhỉ, bác nào làm về phần này cho em xin code & đề tài với
toanck86 vẫn chưa có mặt trong diễn đàn  
Ðề tài đã khoá


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
TUT về USART trong PIC16F877A mafd_47a MPASM 16 19-02-2025 05:32 AM
TUT ve I2C ( pic16f877a ) mafd_47a MPASM 28 28-01-2025 10:45 PM
Lập nhóm PIC16F877A nhh Cơ bản về vi điều khiển và PIC 285 08-03-2017 11:08 PM
Bộ so sánh và PWM cho PIC16F877A anhquangngai Cơ bản về vi điều khiển và PIC 24 08-09-2012 09:00 AM
Pic16f877a TỪ DỄ TỚi KhÓ ntc Cơ bản về vi điều khiển và PIC 373 23-05-2009 10:24 PM


Múi giờ GMT. Hiện tại là 05:56 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam