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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 05-03-2006, 05:53 PM   #1
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
Lập nhóm PIC16F877A

Như các bác đều biết con 16F877A này phổ biến nhất dòng 16F.PIC việt nam chuyên thảo luận về PIC,ra đời khá lâu....( )nhưng số lượng về những bài viết từ cơ bản đến nâng cao cho con pic này nói chung và những con khác nói riêng về phần lập trình hầu như rất ít nếu không nói là cả tháng ( ) không thấy bài nào nói về module mới.
Trái ngược với picvietnam, dientuvietnam là forum chung về điện tử nhưng nói về pic cực nhiều,một phần vì nó lớn tuổi hơn picvietnam.NHH không có ý so sánh gì ở đây cả, NHH chỉ nghĩ là làm sao kêu gọi mọi người đóng góp nhiều bài viết xây dựng cho picvietnam đủ mạnh để khi tịt ngòi thì có thể tìm được cách gỡ rối ngay trong chính diễn đàn của mình!
Lý do là vậy cho sự ra đời của thread này.Mong rằng sẽ có nhiều hơn những bài viết về con 16F877A này để chúng ta có thể làm chủ nó trong một thời gian sớm nhất.
Xin các bác xem xét và cho ý kiến về thread này!
Nào các bác, ta bắt đầu thôi!
File Kèm Theo
File Type: pdf PIC16F877A-pin diagram.pdf (35.5 KB, 16136 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, 07-03-2006 lúc 06:10 PM.
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 06:00 PM   #2
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
Ngắt ngoài với RB0

Đây là chương trình đếm số lần switch on từ 1 đến 9 hiển thị lên LED 7 đoạn,dùng ngắt ngoài RB0 và kỹ thuật bảng.

Code:
;========================================
;Auhor:		NHH
;Date:		02/03/06
;Hardware:	PIC16F877A ,Crystal 10MHz
;========================================
	TITLE 		"Count button on by Interrupt RB0"
	PROCESSOR	PIC16f877A 
	INCLUDE<P16f877A.inc> 
	__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _CPD_OFF &_LVP_OFF
;========================================
	COUNT	EQU	0x20	
w_temp		EQU	0x71		; variable used for context saving 
status_temp	EQU	0x72		; variable used for context saving
pclath_temp	EQU	0x73		; variable used for context saving			

;=============================================================================
;CHUONG TRINH CHINH
;=============================================================================
	ORG 0000h
	GOTO 	MAIN
	ORG 0004h
	GOTO	INTERRUPT

;==============================INTERRUPT PROGRAM===========================		
INTERRUPT
	movwf w_temp	 ; save off current W register contents
	movf STATUS,w 	; move status register into W register
	movwf status_temp	 ; save off contents of STATUS register
	movf PCLATH,w	 ; move pclath register into w register
	movwf pclath_temp 	; save off contents of PCLATH register
;******************************************************************************
	BCF	INTCON,INTF	;xoa co int
	INCF	COUNT,F
	MOVLW	d'10'
	SUBWF	COUNT,W
	BTFSS	STATUS,0
	GOTO	$+2
	GOTO	NODISPLAY
	MOVF	COUNT,W
	CALL	TABLE
	MOVWF	PORTD
	retfie 			; return from interrupt
NODISPLAY			;khong hien thi neu vuot qua 9
	MOVLW	d'10'
	CALL	TABLE
	MOVWF	PORTD
	RETFIE

;******************************************************************************
	movf pclath_temp,w 		; retrieve copy of PCLATH register
	movwf PCLATH 		; restore pre-isr PCLATH register contents
	movf status_temp,w 		; retrieve copy of STATUS register
	movwf STATUS 		; restore pre-isr STATUS register contents
	swapf w_temp,f
	swapf w_temp,w 		; restore pre-isr W register contents
	retfie 			; return from interrupt
;==============	CHUONG TRINH CHINH===============
MAIN
	BCF 	STATUS,RP1
	BSF 	STATUS,RP0 		; chon BANK 1
	MOVLW	b'11111111'		;RB0=Input
	MOVWF	TRISB
	CLRF	TRISD
	BCF	OPTION_REG,INTEDG	;interrupt canh xuong
	BCF 	STATUS,RP0 		; chon BANK 0
	BSF	INTCON,GIE		;cho phep interrupt toan cuc
	BSF	INTCON,INTE		;cho phep interrupt RB0
	
	CLRF	COUNT	
	MOVLW	d'0'
	CALL	TABLE	
	MOVWF	PORTD
	
	GOTO	$
;----------------------------------------------------------
; Bang tra ve Digital tu 0 den 9 va OFF
; Chi so dau truy cap la 0
; Bang o PAGE 0

	ORG 0x80
TABLE
;----------------------------------------------------------
	ADDWF 	PCL, F 		; bat dau tai 0x80
	RETLW 	b'00111111' 		; 0
	RETLW 	b'00000110' 		; 1
	RETLW 	b'01011011' 		; 2
	RETLW 	b'01001111' 		; 3
	RETLW 	b'01100110' 		; 4
	RETLW 	b'01101101' 		; 5
	RETLW 	b'01111101' 		; 6
	RETLW 	b'00000111' 		; 7
	RETLW 	b'01111111' 		; 8
	RETLW 	b'01101111' 		; 9
	RETLW 	b'00000000' 		; OFF
		
	END
Hình Kèm Theo
File Type: gif Count button on_RB0.gif (4.3 KB, 1760 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, 09-03-2006 lúc 12:11 PM.
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 06:11 PM   #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
Hex file ngắt ngoài RB0

:020000040000fa
:020000002028b6
:080008000528f1000308f200d5
:100010000a08f3008b10a00a0a302002031c1128e2
:10002000152820088020880009000a3080208800d8
:10003000090073088a0072088300f10e710e09002e
:1000400003138316ff3086008801011383128b1778
:0c0050000b16a0010030802088002d2835
:1001000082073f3406345b344f3466346d347d34bb
:0801100007347f346f34003422
:02400e00323f3f
:00000001ff
__________________
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   Trả Lời Với Trích Dẫn
Old 05-03-2006, 06:18 PM   #4
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
Ngắt ngoài với RB4 đến RB7

Đấy là chương trình quét 16 phím bấm hiển thị lên LED 7 đoạn các số từ 0 đến 9 và các chữ A,b,C,d,E,F.
Xem hình ở file đính kèm!
Code:
;========================================
;Auhor:		NHH
;Date:		02/03/06
;Hardware:	PIC16F877A connect PORTB by R220
;========================================
	TITLE 		"Giai ma ban phim dung interrupt RB4...RB7"
	PROCESSOR	PIC16f877A 
	INCLUDE<P16f877A.inc> 
	__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _CPD_OFF &_LVP_OFF
;========================================
	COUNT	EQU	0x20	
w_temp		EQU	0x71		; variable used for context saving 
status_temp	EQU	0x72		; variable used for context saving
pclath_temp	EQU	0x73		; variable used for context saving			

;=============================================================================
;CHUONG TRINH CHINH
;=============================================================================
	ORG 0000h
	GOTO 	MAIN
	ORG 0004h
	GOTO	INTERRUPT

;==============================INTERRUPT PROGRAM===========================		
INTERRUPT
	movwf w_temp	 ; save off current W register contents
	movf STATUS,w 	; move status register into W register
	movwf status_temp	 ; save off contents of STATUS register
	movf PCLATH,w	 ; move pclath register into w register
	movwf pclath_temp 	; save off contents of PCLATH register
;******************************************************************************
	BCF	INTCON,RBIF
	
	MOVLW	b'00000001'
	MOVWF	PORTB
	BTFSS	PORTB,4
	GOTO	DIS_1
	MOVLW	d'0'	;0
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_1
	BTFSS	PORTB,5
	GOTO	DIS_2
	MOVLW	d'1'	;1
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_2
	BTFSS	PORTB,6
	GOTO	DIS_3
	MOVLW	d'2'	;2
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_3
	BTFSS	PORTB,7
	GOTO	DIS_4
	MOVLW	d'3'	;3
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_4
	MOVLW	b'00000010'
	MOVWF	PORTB
	BTFSS	PORTB,4
	GOTO	DIS_5
	MOVLW	d'4'	;4
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_5
	BTFSS	PORTB,5
	GOTO	DIS_6
	MOVLW	d'5'	;5
	CALL	TABLE
	MOVWF	PORTC
	retfie 

DIS_6
	BTFSS	PORTB,6
	GOTO	DIS_7
	MOVLW	d'6'	;6
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_7
	BTFSS	PORTB,7
	GOTO	DIS_8
	MOVLW	d'7'	;7
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_8
	MOVLW	b'00000100'
	MOVWF	PORTB
	BTFSS	PORTB,4
	GOTO	DIS_9
	MOVLW	d'8'	;8
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_9
	BTFSS	PORTB,5
	GOTO	DIS_A
	MOVLW	d'9'	;9
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_A
	BTFSS	PORTB,6
	GOTO	DIS_b
	MOVLW	d'11'	;A
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_b
	BTFSS	PORTB,7
	GOTO	DIS_C
	MOVLW	d'12'	;b
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_C
	MOVLW	b'00001000'
	MOVWF	PORTB
	BTFSS	PORTB,4
	GOTO	DIS_d
	MOVLW	d'13'	;C
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_d
	BTFSS	PORTB,5
	GOTO	DIS_E
	MOVLW	d'14'	;d
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_E
	BTFSS	PORTB,6
	GOTO	DIS_F
	MOVLW	d'15'	;E
	CALL	TABLE
	MOVWF	PORTC
	retfie 
DIS_F
	BTFSS	PORTB,7
	GOTO	$+4
	MOVLW	d'16'	;F
	CALL	TABLE
	MOVWF	PORTC
	retfie 




;******************************************************************************
	movf pclath_temp,w 		; retrieve copy of PCLATH register
	movwf PCLATH 		; restore pre-isr PCLATH register contents
	movf status_temp,w 		; retrieve copy of STATUS register
	movwf STATUS 		; restore pre-isr STATUS register contents
	swapf w_temp,f
	swapf w_temp,w 		; restore pre-isr W register contents
	retfie 			; return from interrupt
;==============	CHUONG TRINH CHINH===============
MAIN
	BCF 	STATUS,RP1
	BSF 	STATUS,RP0 	; chon BANK 1
	MOVLW	b'11110000'	;RB0=Input
	MOVWF	TRISB
	CLRF	TRISC
	
	BCF 	STATUS,RP0 	; chon BANK 0
	BSF	INTCON,GIE
	BSF	INTCON,RBIE	;cho phep ngat RB4...RB7

	MOVLW	d'10'
	CALL	TABLE
	MOVWF	PORTC
LOOP		
	MOVLW	b'00001111'
	MOVWF	PORTB	
	GOTO	LOOP
;----------------------------------------------------------
; Bang tra ve Digital tu 0 den 9 va  A....F
; Chi so dau truy cap la 0
; Bang o PAGE 0

	ORG 0x90
TABLE
;----------------------------------------------------------
	ADDWF 	PCL, F 		; bat dau tai 0x80
	RETLW 	b'00111111' 		; 0
	RETLW 	b'00000110' 		; 1
	RETLW 	b'01011011' 		; 2
	RETLW 	b'01001111' 		; 3
	RETLW 	b'01100110' 		; 4
	RETLW 	b'01101101' 		; 5
	RETLW 	b'01111101' 		; 6
	RETLW 	b'00000111' 		; 7
	RETLW 	b'01111111' 		; 8
	RETLW 	b'01101111' 		; 9
	RETLW 	b'00000000' 		; NODISPLAY
	RETLW 	b'01110111' 		; A
	RETLW 	b'01111100' 		; B
	RETLW 	b'00111001' 		; C
	RETLW 	b'01011110' 		; d
	RETLW 	b'01111001' 		; E
	RETLW 	b'01110001' 		; F
			
	END
Hình Kèm Theo
File Type: gif Giai ma ban phim.gif (5.9 KB, 1466 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, 09-03-2006 lúc 12:12 PM.
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 06:21 PM   #5
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
Talking Hex file ngắt ngoài RB4...RB7

Code:
:020000040000FA
:020000007A285C
:080008000528F1000308F200D5
:100010000A08F3000B1001308600061E132800307A
:10002000902087000900861E192801309020870043
:100030000900061F1F280230902087000900861F34
:100040002528033090208700090002308600061E14
:100050002D280430902087000900861E33280530A3
:10006000902087000900061F39280630902087005D
:100070000900861F3F2807309020870009000430C0
:100080008600061E47280830902087000900861E3B
:100090004D280930902087000900061F53280B3097
:1000A000902087000900861F59280C309020870077
:1000B000090008308600061E61280D309020870058
:1000C0000900861E67280E30902087000900061F51
:1000D0006D280F30902087000900861F722810308D
:1000E00090208700090073088A0072088300F10ECF
:1000F000710E090003138316F03086008701831206
:100100008B178B150A30902087000F3086008528CA
:1001200082073F3406345B344F3466346D347D349B
:1001300007347F346F34003477347C3439345E34A0
:040140007934713469
:02400E00323F3F
:00000001FF
Hy vọng rằng đến khi nhh post bài tiếp theo thì đã nhận được 20 bài viết mới từ các bác về chú Pic này!
__________________
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   Trả Lời Với Trích Dẫn
Old 05-03-2006, 06:45 PM   #6
chuabietgi
Đệ tử 1 túi
 
chuabietgi's Avatar
 
Tham gia ngày: Nov 2005
Bài gửi: 17
:
Chào bác!
Em mới làm quen với PIC nên có thể gọi là chưa biết gì.
Em ủng hộ hai tay cho luồng mà bác mở ra.Nó rất hữu ích cho những thằng chưa biết gì như em.Em sẽ ngâm cứu những gì bác viết và cũng hy vọng em cũng sẽ post lại những gì mà em đã học được.
Thanks bác nhiều!
Bác có thể cho em hỏi về kỹ thuật bảng 1 tí được không ạ!
Và bác dùng phần mềm gì để mô phỏng cho pic như hình trên vậy,trông nó rất hấp dẫn!
chuabietgi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 07:01 PM   #7
picpicpic
Đệ tử 2 túi
 
picpicpic's Avatar
 
Tham gia ngày: Jan 2006
Bài gửi: 36
:
Chào các bác!
Em cũng ủng hộ luồng này của bác.Hy vọng các bác sẽ có nhiều bài viết tốt để anh em tham khảo!
__________________
************************************************** **
The only wrong thing would be to deny what your heart truly feels!
************************************************** **
picpicpic vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 07:22 PM   #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
Thanks các bác đã ủng hộ!
Trích:
Bác có thể cho em hỏi về kỹ thuật bảng 1 tí được không ạ!
Và bác dùng phần mềm gì để mô phỏng cho pic như hình trên vậy,trông nó rất hấp dẫn!
Cái kỹ thuật bảng anh F đã viết một bài rất dễ hiểu,bạn có thể tải ở file đính kèm.
Còn phần mềm mô phỏng mà nhh dùng là Protues,hình như nó là cái mô phỏng xịn nhất về điện tử thì phải.Bạn có thể qua dientuvietnam.net search và load về dùng.
Mong rằng bạn sẽ có nhiều bài viết về chú này!
File Kèm Theo
File Type: rar KyThuatBang.rar (190.4 KB, 5020 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
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-03-2006, 07:26 PM   #9
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
À tiện thể xin hỏi các bác có bác nào có cái crack của protues 6.8 không.
Cái 6.7 tại hạ đang xài dù đã crack nhưng nó vẫn còn lủng củng dùng nhiều khi phát bực vì nó không cho save nếu để lâu!
Thanks!
__________________
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   Trả Lời Với Trích Dẫn
Old 05-03-2006, 10:19 PM   #10
Longlife
Nhập môn đệ tử
 
Longlife's Avatar
 
Tham gia ngày: Nov 2005
Bài gửi: 1
:
Chương trình mô phỏng

Nếu bạn mới dùng PIC thì mô phỏng bằng PIC simulator IDE v5.21, giao diện thân thiện dễ sử dụng.
__________________
http://icdesign.vnbb.com/
Longlife vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-03-2006, 09:16 AM   #11
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Đôi lời giải thích với các bạn như sau:

- picvietnam hay dientuvietnam hoặc diendandientu cũng chỉ là nơi để trao đổi và học tập. F cũng là mod của dientuvietnam và diendandientu. Do vậy, khi phát triển hoạt động, chúng ta phát triển cho cộng đồng điện tử VN. Vì vậy không có sự khác biệt và so sánh.

- Điều F quan tâm ở đây, đó là chúng ta có một nơi chuyên để thảo luận những vấn đề chúng ta quan tâm, và đi sâu vào đó. Ở dientuvietnam hay diendandientu, đó là những diễn đàn rộng, vì vậy, có rất nhiều người có những kiến thức khác nhau về điện tử tập hợp lại, và nó hình thành được nhiều bài viết khi ứng dụng PIC vào những vấn đề thực tế, và kinh nghiệm thực tế được trao đổi và thảo luận.

- Trong khi đó ở picvietnam, nó là một lớp học online, do chính những thành viên tự học và tự dạy cho nhau. Có thể về mặt thảo luận và đề tài ứng dụng, thì việc trao đổi không nhiều. Nhưng F sẽ phân tích dưới đây để các bạn thấy được vấn đề tại sao picvietnam vẫn được xây dựng và tồn tại, và đó là lời động viên của F dành cho các bạn.

Diễn đàn của chúng ta chủ yếu nghiên cứu các tool, các công cụ, các vấn đề lý thuyết, thuật toán, và tập trung vào việc khai thác PIC. Ví dụ như trong luồng đố vui của dientuvietnam, một câu đố vui đó, có thể ứng dụng cho rất nhiều loại vi điều khiển, không chỉ riêng gì PIC, nhưng lực lượng người dùng PIC online hiện nay đã và đang phát triển rất mạnh. Chính vì vậy, vấn đề thảo luận này được đặt trong luồng về PIC, và do những người dùng PIC phát triển ra.

Nhưng đó là nhưng bài toán mang tính chất ứng dụng vào thực tế. Và bài toán ứng dụng thì không thể trang bị tool, công cụ, lý thuyết, để phát triển tất cả những sản phẩm sau này.

Các bạn để ý một điều rằng, hầu như các bạn sinh viên học PIC, khởi đầu ở picvietnam, sau đó bắt đầu học dần lên, và có thể tự học, tự làm, rồi bắt đầu "đủ công lực" sẽ đem nhưng học thuật, hiểu biết của mình, phát triển ở các diễn đàn khác.

Trong khi đó, picvietnam cung cấp các công cụ làm việc, những bài học cơ bản, nhằm mục đích phát triển riêng về PIC. Vd như khi nói về điều khiển LED ma trận, hoặc khi điều khiển LCD, LED 7 đoạn... tất cả những cái đó là những ứng dụng thực tế. Trong khi đó, trên picvietnam, chúng ta thảo luận về cái gỉ? PORT I/O và kỹ thuật bảng.

Đứng trên vị trí của PIC mà nói, chỉ cần PORT I/O và kỹ thuật bảng, đã đủ và dư sức để có thể làm được LED ma trận, led 7 đoạn và LCD... có phải vậy không?

Chính vì điều này, chúng ta nghiên cứu các công cụ, các bước cơ bản, các thuật toán tính toán cơ sở để có thể phát triển các giải thuật trên PIC.

Ở các luồng thảo luận về PIC khác, ít người chú ý đến việc tính toán các hàm delay, nhưng ở đây, chúng ta viết khá nhiều cách để xây dựng hàm delay. Chúng ta cũng viết nhiều bằng MPASM để hiểu PIC và đi vào các tương tác gần nhất với PIC.

Có thể điều này hơi mang tính chất academic với các bạn, và nó hơi mơ hồ!

Nhưng không, chính những gì chúng ta làm và chuẩn bị ở đây, đó là những công cụ, những có sở nền tảng vững chắc. Chúng ta sẽ đi chậm, nhưng rồi chúng ta sẽ có những nghiên cứu xử lý thuật toán, và những bài toán dần dần đang được nhóm PIC vietnam thực hiện.

Ví dụ như một niềm tự hào của picvietnam, đó là bộ thư viện ORCAD. Kể cả những trang nước ngoài cũng không làm được. Bộ thư viện này đã có ít nhất 100 lượt người tải về sử dụng, chưa kể những người download bằng đường link trực tiếp.

Có ít nhất 300 lượt người duyệt bài và link vào trang. Các bạn hãy thử tưởng tượng rằng 1 người hết 5 phút để vẽ một con linh kiện. Vậy 10 người là 50 phút (coi như 1 giờ cho chẵn). Thì 100 người là 10 giờ (một ngày làm việc).

Đó là thời gian 1 tháng sau khi nó được đưa lên. Cứ 1 tháng thì nó tiết kiệm 1 ngày làm việc.

Đây chính là xu hướng mà picvietnam sẽ đi và sẽ phát triển xã hội bằng việc mỗi một việc làm của picvietnam sẽ tiết kiệm một ngày làm việc cho toàn cộng đồng. Hãy vững tin về điều đó. Chúng ta sẽ làm được nhiều và rất nhiều.

Sắp tới, bộ tiny bootloader sẽ được picvietnam chuẩn hoá, kèm theo việc giới thiệu về I2C bằng CCS C (I2C bằng MPASM đã được bạn Mạnh phổ biến rồi). Tiến tới là multi master I2C. Đó là hai công việc picvietnam đang làm và sắp xong.

Giao tiếp RS232 cũng đã tạm ổn (chưa được ổn cho lắm hehehe...) Nhưng sẽ xong. Như vậy, sau khi xong tinybootloader cũng đồng thời xong luôn phần cứng cho RS232. Cứ như vậy, từng bước, từng bước, chúng ta không đi sau mà đi sâu các bạn ạ.

Những câu hỏi và trả lời không thể làm thành cơ sở thư viện được, chỉ có những bài viết như nhh vừa gửi mới có thể hình thành cơ sở, thư viện, và tài liệu hữu ích cho sự phát triển mà thôi. Đó là hướng đi của picvietnam.

Mong rằng các bạn hiểu và vững tin theo ý nghĩa này của picvietnam.

Chúc vui.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-03-2006, 02:25 PM   #12
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
Talking

Các ứng dụng của nhh được xây dựng dựa trên một số thông tin cơ bản:
_ Về phần cứng: đó là các thông tin về phím nhấn, thông tin về LED 7 đoạn, thông tin về cấu tạo, tổ chức các PORT I/O và các ngắt ngoài của PORT B, ...
_ Về phần mềm: đó là thông tin về kĩ thuật bảng, thông tin về chương trình ngắt và cách xử lí ngắt, một số thao tác lập trình với PIC (khai báo biến,...) ...
_ Về kĩ năng: đó là các kĩ năng phân tích tìm hiểu thông tin trong tài tiệu (datasheet chẳng hạn), kĩ năng xây dựng ứng dụng dựa trên các thông tin thu thập được.
Ứng dụng của nhh rất hay, nhưng nhìn chung lại, hầu hết mọi ứng dụng đều được xây dựng dựa trên một số thông tin và kĩ năng cơ bản. Trường hợp ứng dụng của nhh cũng không ngoại lệ.
Bây giờ, nhh thử tưởng tượng coi, nếu một thành viên mới tìm hiểu PIC, đọc ứng dụng của nhh thì số lượng thông tin thu thập được là bao nhiêu. Sẽ có rất nhiều thắc mắc: làm sao mà viết chương trình như vậy thì con PIC sẽ hiển thị được con số đó ra LED 7 đoạn, làm sao mà viết như vậy thì PIC sẽ nhận diện được sự thay đổi muắc logic ở PORT B để tạo ra ngắt.
Đó là cái mà picvietnam đang cố gắng lí giải thông qua các tutorial được viết rất cơ bản, thông qua các module, các công cụ, ...đó là một phần vai trò của picvietnam trong các diễn đàn điện tử. Hướng đi này có thể hơi khác biệt, nhưng không hề lạc hướng.

Nếu tìm hiểu thêm một số thông tin về timer, nhh có thể xây dựng được một ứng dụng mới: một đồng hồ điện tử.. Chỉnh giờ được luôn (bạn đã có được các module cơ bản về xử lí nút bấm, về hiển thị LED 7 đoạn, rồi một số module về kĩ thuật lập trình, ...). Thử coi. Phần cứng cũng đã có sẵn rồi, chỉ còn mỗi việc viết chương trình.

PIC16F877A nếu chỉ để tìm hiểu thì được, chứ nếu để xây dựng các ứng dụng thực tế thì có đôi khi ... hơi phí phạm, vì hiếm khi nào ta sử dụng được hết các chức năng của nó trong một ứng dụng. Việc xây dựng các module và trang bị các thông tin cơ bản có thể cho phép ta sử dụng bất cứ PIC nào mà không hề cảm thấy bỡ ngỡ.
__________________

ntc vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-03-2006, 04:06 PM   #13
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
Thanks bác F và mod NTC!
Vậy thì phần tutorial cơ bản bác sẽ viết bên đó,còn về vọt những ứng dụng viết được anh em có thể post bên "PIC6F877A từ dễ đến khó" hoặc trong luồng này cũng tốt!
NHH sẽ cố gắng viết những ứng dụng bậy bạ từ những cái tutorial của bác mod!
Cùng nhau phá PIC bà con ơi!
À phiền bác F sửa lại giúp tiêu đề cái thread này,do sơ ý nên em viết nhầm tên Pic !
Thanks!
__________________
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   Trả Lời Với Trích Dẫn
Old 06-03-2006, 04:09 PM   #14
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 Longlife
Nếu bạn mới dùng PIC thì mô phỏng bằng PIC simulator IDE v5.21, giao diện thân thiện dễ sử dụng.
Cái này mình cũng có dùng,nhưng dùng nó chỉ để hiểu pic làm gì với mấy cái thanh ghi khi chạy chương trình.Dùng protues mô phỏng thì sẽ thấy kết quả trực quan và sống động hơn!
__________________
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   Trả Lời Với Trích Dẫn
Old 07-03-2006, 07:52 PM   #15
picpicpic
Đệ tử 2 túi
 
picpicpic's Avatar
 
Tham gia ngày: Jan 2006
Bài gửi: 36
:
Chào cả nhà!
picpicpic đã copy và cho chạy thử bài viết của bác nhh,kết quả rất tốt!Bác có viết vài ý về các cách ngắt của con pic này được không?
Hẹn câu trả lời của các bác!
__________________
************************************************** **
The only wrong thing would be to deny what your heart truly feels!
************************************************** **
picpicpic vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


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 ve I2C ( pic16f877a ) mafd_47a MPASM 26 07-05-2024 08:55 AM
TUT về USART trong PIC16F877A mafd_47a MPASM 11 04-05-2024 04:43 AM
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
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à 12:10 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