PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và 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

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

Ðề tài đã khoá
 
Ðiều Chỉnh Xếp Bài
Old 22-11-2007, 12:45 PM   #1
Jerry
Đệ tử 5 túi
 
Jerry's Avatar
 
Tham gia ngày: Sep 2006
Bài gửi: 101
:
movlw .100 = nạp giá trị 100 decimal vào thanh ghi w
Jerry vẫn chưa có mặt trong diễn đàn  
Old 04-12-2007, 10:28 AM   #2
byte
Nhập môn đệ tử
 
Tham gia ngày: Nov 2007
Bài gửi: 5
:
anh ơi bài 4 đâu anh. E cũng đã mất bao nhiêu ngày với cái con 595 rồi. Cuối cùng vẫn chẳng biết sử dụng nó. Anh post lên cho anh em nhé. Thanhks
byte vẫn chưa có mặt trong diễn đàn  
Old 04-12-2007, 11:18 AM   #3
ntc
Đệ tử 8 túi
 
ntc's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: HCM city
Bài gửi: 264
:
Send a message via Yahoo to ntc
http://www.picvietnam.com/forum//sho...?t=238&page=10

Bài số #146

Mình hướng dẫn làm cái digital clock củ chuối, kaka.

Chúc vui.
__________________

ntc vẫn chưa có mặt trong diễn đàn  
Old 29-02-2008, 09:54 PM   #4
background
Nhập môn đệ tử
 
background's Avatar
 
Tham gia ngày: Jan 2008
Bài gửi: 4
:
Thanks! nhiều nha, tui đang rất cần ^^!
background vẫn chưa có mặt trong diễn đàn  
Old 01-03-2008, 10:26 AM   #5
tinhgiac_vp
Đệ tử 2 túi
 
Tham gia ngày: Oct 2007
Bài gửi: 42
:
các tiền bối chỉ dùm với. Làm sao để cho MPLAB chạy từng lệnh và kết quả của lệnh đó. Em mò mãi mà không được.
tinhgiac_vp vẫn chưa có mặt trong diễn đàn  
Old 06-03-2008, 05:11 AM   #6
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi tinhgiac_vp View Post
các tiền bối chỉ dùm với. Làm sao để cho MPLAB chạy từng lệnh và kết quả của lệnh đó. Em mò mãi mà không được.
Sau khi đã biên dịch thành công project, bạn vào mênu Debugger, chọn Select Tool, rồi chọn MPLAB SIM. Khi đó, phía bên phải của thanh công cụ của MPLAB IDE sẽ có các nút cho phép bạn thực hiện việc mô phỏng. Nếu bạn đã từng dùng chức năng debug trong một phần mềm mô phỏng nào đó thì có lẽ sẽ nhận ra ngay tác dụng của từng nút. Khi chạy từng lệnh (stepping) bạn có thể đi vào chương trình (Step Into), hay chỉ chạy chương trình con như 1 lệnh (Step Over).

Để xem kết quả của các lệnh đã chạy, bạn có thể đến mênu View, chọn lệnh Watch. Cửa sổ Watch với nhiều frame khác nhau cho phép bạn xem các thanh ghi SFR hay các symbol đã được định nghĩa trong chương trình đang được debug. Bạn chỉ cần chọn SFR hay symbol trong danh sách thả xuống và nhấn vào nút tương ứng (Add SFR hay Add Symbol).

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn  
Old 06-03-2008, 01:16 AM   #7
nhong
Đệ tử 1 túi
 
Tham gia ngày: Jan 2008
Bài gửi: 15
:
Em làm bài tập pic đầu tiên với 16F877A bật tắt đèn led.

đầu tiên em cho nháy 1s một thì thấy nó nháy loạn cả lên rồi kết thúc bằng sáng trơ ra hoặc tắt ngóm(sau khoảng 4-5s) mà có lúc cả chân RB6 chân nó cũng sáng nữa(em chỉ cho nó nháy chân RB7 thôi) là sao?

sau đó em sửa cho nháy 2s một, nhưng khi nạp vào con pic rồi chạy thì thấy thằng led nó cứ sáng trơ ra chứ chẳng bật tắt gì cả là sao các bác.

với cả khi nạp cho pic mà cắm nhầm chiều vào mạch nạp thì có nguy hiểm không, rồi em cho verify trong winpic800 thì luôn bị lỗi(lúc program xong verify thì không sao cả), lại phải erase đi rồi program lại , như thế có hại ko. lỗi thế này
Error: verifying address0x000000 verified:0x3FFF Read:0x3000

cuối cùng: khi nạp mới 1 con thì phải erase hết đi rồi mới program lại hả các bác

em xin cám ơn.

code viết trong ccs như này(code trong luồng ccs for pic thôi, chỉ thay nháy 1s một thành nháy 2s một và chỉnh clock từ 10 thành 4mhz thôi)

Code:
#include<16F877A.h>
#fuses NOWDT,PUT,HS,NOPROTECT
#use delay(clock=4000000)
main()
{
while(true)
	{
	output_high(PIN_B7);
	delay_ms(2000);
	output_low(PIN_B7);
	delay_ms(2000);
	}
}
PS/ nút reset làm việc tốt ạ vì khi ấn reset thì nó trở về trạng thái đầu, tất nhiên là vẫn lỗi như trên^^

thay đổi nội dung bởi: namqn, 06-03-2008 lúc 05:01 AM.
nhong vẫn chưa có mặt trong diễn đàn  
Old 13-05-2008, 02:40 PM   #8
doremino
Đệ tử 3 túi
 
Tham gia ngày: Apr 2008
Bài gửi: 48
:
Thumbs up sao không ai trả lời bài của anh "nhong" cho em học hỏi với

Trích:
Nguyên văn bởi nhong View Post
Em làm bài tập pic đầu tiên với 16F877A bật tắt đèn led.

đầu tiên em cho nháy 1s một thì thấy nó nháy loạn cả lên rồi kết thúc bằng sáng trơ ra hoặc tắt ngóm(sau khoảng 4-5s) mà có lúc cả chân RB6 chân nó cũng sáng nữa(em chỉ cho nó nháy chân RB7 thôi) là sao?

sau đó em sửa cho nháy 2s một, nhưng khi nạp vào con pic rồi chạy thì thấy thằng led nó cứ sáng trơ ra chứ chẳng bật tắt gì cả là sao các bác.

với cả khi nạp cho pic mà cắm nhầm chiều vào mạch nạp thì có nguy hiểm không, rồi em cho verify trong winpic800 thì luôn bị lỗi(lúc program xong verify thì không sao cả), lại phải erase đi rồi program lại , như thế có hại ko. lỗi thế này
Error: verifying address0x000000 verified:0x3FFF Read:0x3000

cuối cùng: khi nạp mới 1 con thì phải erase hết đi rồi mới program lại hả các bác

em xin cám ơn.

code viết trong ccs như này(code trong luồng ccs for pic thôi, chỉ thay nháy 1s một thành nháy 2s một và chỉnh clock từ 10 thành 4mhz thôi)

Code:
#include<16F877A.h>
#fuses NOWDT,PUT,HS,NOPROTECT
#use delay(clock=4000000)
main()
{
while(true)
	{
	output_high(PIN_B7);
	delay_ms(2000);
	output_low(PIN_B7);
	delay_ms(2000);
	}
}
PS/ nút reset làm việc tốt ạ vì khi ấn reset thì nó trở về trạng thái đầu, tất nhiên là vẫn lỗi như trên^^
Trả lời giúp đi các anh!!!!!

thay đổi nội dung bởi: doremino, 13-05-2008 lúc 02:41 PM. Lý do: sai
doremino vẫn chưa có mặt trong diễn đàn  
Old 13-05-2008, 06:36 PM   #9
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi nhong View Post
Em làm bài tập pic đầu tiên với 16F877A bật tắt đèn led.

đầu tiên em cho nháy 1s một thì thấy nó nháy loạn cả lên rồi kết thúc bằng sáng trơ ra hoặc tắt ngóm(sau khoảng 4-5s) mà có lúc cả chân RB6 chân nó cũng sáng nữa(em chỉ cho nó nháy chân RB7 thôi) là sao?

sau đó em sửa cho nháy 2s một, nhưng khi nạp vào con pic rồi chạy thì thấy thằng led nó cứ sáng trơ ra chứ chẳng bật tắt gì cả là sao các bác.

với cả khi nạp cho pic mà cắm nhầm chiều vào mạch nạp thì có nguy hiểm không, rồi em cho verify trong winpic800 thì luôn bị lỗi(lúc program xong verify thì không sao cả), lại phải erase đi rồi program lại , như thế có hại ko. lỗi thế này
Error: verifying address0x000000 verified:0x3FFF Read:0x3000

cuối cùng: khi nạp mới 1 con thì phải erase hết đi rồi mới program lại hả các bác

em xin cám ơn.

code viết trong ccs như này(code trong luồng ccs for pic thôi, chỉ thay nháy 1s một thành nháy 2s một và chỉnh clock từ 10 thành 4mhz thôi)

Code:
#include<16F877A.h>
#fuses NOWDT,PUT,HS,NOPROTECT
#use delay(clock=4000000)
main()
{
while(true)
	{
	output_high(PIN_B7);
	delay_ms(2000);
	output_low(PIN_B7);
	delay_ms(2000);
	}
}
PS/ nút reset làm việc tốt ạ vì khi ấn reset thì nó trở về trạng thái đầu, tất nhiên là vẫn lỗi như trên^^
Theo hiện tượng bạn đã mô tả, có thể PIC được kích hoạt chế độ nạp chương trình ở điện áp thấp (LVP). Bạn nên thêm NOLVP vào directive #fuses.

Nếu cắm PIC ngược chiều vào socket trên mạch nạp thì còn tùy thuộc vào việc các chân của socket tại những vị trí ngược chiều đó có gây hư hại gì cho PIC hay không. Bạn chưa cho biết mạch nạp gì, socket được kết nối ra sao, thì không thể có câu trả lời chắc chắn.

Xóa chip trước khi nạp chip là thao tác cần thiết, một số phần mềm tự động thực hiện xóa chip trước khi nạp (và việc này cũng có thể được cấu hình bật/tắt), WinPic800 là phần mềm thuộc loại này.

Về lỗi verify của bạn, có lẽ mạch nạp của bạn không tốt lắm.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn  
Old 11-05-2008, 08:20 PM   #10
chutieu_719
Nhập môn đệ tử
 
Tham gia ngày: Apr 2007
Bài gửi: 6
:
em cung dang tim hieu ve pic16f877.em rat can nhieu tai lieu ve pic hon xin mong cac tien boi giup gui cho it de hoc hoi vi moi hoc ma.cam on
chutieu_719 vẫn chưa có mặt trong diễn đàn  
Old 11-05-2008, 09:22 PM   #11
dinhthem
Đệ tử 2 túi
 
Tham gia ngày: Apr 2008
Bài gửi: 41
:
các tiền bối gửi nhiều bài tiếng việt dễ hiểu lắm mà, còn bạn thích tài liệu tiếng anh thì liên lạc với mình.
dinhthem vẫn chưa có mặt trong diễn đàn  
Old 11-05-2008, 09:29 PM   #12
dinhthem
Đệ tử 2 túi
 
Tham gia ngày: Apr 2008
Bài gửi: 41
:
ủa, các bác up bài hướng dẫn viết bằng C đâu? sao em hok thấy vậy?
dinhthem vẫn chưa có mặt trong diễn đàn  
Old 11-05-2008, 09:34 PM   #13
dinhthem
Đệ tử 2 túi
 
Tham gia ngày: Apr 2008
Bài gửi: 41
:
à, em biết rồi.
thì ra nãy giờ các bác viết bằng MPLAB. cho em xin phần mềm này đc ko?
dinhthem vẫn chưa có mặt trong diễn đàn  
Old 11-05-2008, 09:39 PM   #14
dinhthem
Đệ tử 2 túi
 
Tham gia ngày: Apr 2008
Bài gửi: 41
:
các bác cho em hỏi
BANK dùng để làm gì?
tại sao mới vào ta lại chọn BANK 1
sau khi cho PORTB là cổng xuất lại chọn BANK 0
????
dinhthem vẫn chưa có mặt trong diễn đàn  
Old 12-05-2008, 12:47 AM   #15
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi dinhthem View Post
các bác cho em hỏi
BANK dùng để làm gì?
tại sao mới vào ta lại chọn BANK 1
sau khi cho PORTB là cổng xuất lại chọn BANK 0
????
Vì các PIC được chế tạo như vậy, nên chúng ta phải chọn bank của một thanh ghi để có thể truy xuất thanh ghi đó. Bạn cứ chấp nhận như vậy đi, sau này nắm rõ hơn về kỹ thuật số và vi điều khiển thì sẽ tìm hiểu thêm. Thông tin về bản đồ bộ nhớ của PIC nằm trong datasheet của PIC.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn 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
CCS C for PIC16F877A nhh Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) 405 24-04-2008 12:00 PM


Múi giờ GMT. Hiện tại là 11:49 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