|
20-08-2008, 01:13 AM | #1 |
Đệ tử 1 túi
Tham gia ngày: Mar 2008
Bài gửi: 15
: |
help me!
Em mới học Pic, nhưng lại không biết cách mở rộng cổng Pic vơi 8255. Mong các anh giúp đỡ. Cảm ơn rất nhiều.
|
20-08-2008, 01:19 AM | #2 |
Đệ tử 1 túi
Tham gia ngày: Mar 2008
Bài gửi: 15
: |
Em dùng pic 16f877a.
giải mã địa chỉ của 8255: PortA=0x0000 PortB=0x0001 PortC=0x0002 CW=0x0003 chân WR, RD nối với chân của PIC A0,A1 nối với RC0,RC1 CS nối với RD0 em chỉ làm thử giao tiếp với 8255 để nháy led ở cổng A. Nhưng không biết định nghĩa địa chỉ của 8255 trong ccs như thế nào. Cảm ơn rất nhiều. |
20-08-2008, 01:57 AM | #3 | |
Trưởng lão PIC bang
|
Trích:
Để ghi ra port A của 8255, bạn thực hiện lần lượt: Reset = "0", đặt địa chỉ A1A0 = "00", đặt dữ liệu ra D0 .. D7, RD = "1", WR = "0", và CS = "0". Bạn chỉ cần thao tác bit và byte, không có gì đặc biệt trong CCS C cho việc này cả. Đây chỉ là một ví dụ về cách thực hiện việc ghi ra port A của 8255. Để sử dụng được 8255, bạn cần phải đặt chế độ hoạt động cho các port của nó trước bằng việc ghi vào từ điều khiển (control word) ở địa chỉ A1A0 = "11". Bạn tìm đọc datasheet của 8255 sẽ biết cách thực hiện các thao tác khác. 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 thay đổi nội dung bởi: namqn, 20-08-2008 lúc 02:07 AM. |
|
21-08-2008, 10:31 PM | #4 |
Đệ tử 1 túi
Tham gia ngày: Mar 2008
Bài gửi: 15
: |
cam ơn trưởng lão nhiều. em đã làm được rồi ạ
|
22-08-2008, 10:23 PM | #5 |
Đệ tử 5 túi
Tham gia ngày: Jun 2008
Bài gửi: 112
: |
Bác Nam cho em hỏi thêm tí nha !! Bên trong của IC 8255 còn có một thanh nghi điều khiển ,dùng để thiết lập các chế độ vào ra khác nhau cho 3 cổng Pa,Pb và Pc đó là các chế độ 1,chế độ 2,3 và chế độ BSR( trong datasheet nói rõ ).để có thể thiết lập thanh nghi điều khiển thì A0=1,A1=1 . Với cách kết nối phần cứng mà bác hướng dẫn thì làm thế nào để thiết lập được thanh nghi điều khiển...?????????????
__________________
** xin hãy cho tôi là tượng đá ** Để muôn đời không nhớ thương ai ..!! |
22-08-2008, 11:36 PM | #6 | |
Trưởng lão PIC bang
|
Trích:
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 |
|
23-08-2008, 09:08 AM | #7 |
Đệ tử 5 túi
Tham gia ngày: Jun 2008
Bài gửi: 112
: |
Nhưng bác ơi làm thế nào để xác định được địa chỉ của từ điều khiển và nghi dữ liệu vào đó.
Phải chăng khi ta cho 2 bit A0A1 = 11 , thì byte dữ liều đầu tiên ta gửi đến cổng vào của 8255 sẽ được nghi vào thanh nghi điều khiển ???? em vẫn mơ hồ ở vấn đề này ?
__________________
** xin hãy cho tôi là tượng đá ** Để muôn đời không nhớ thương ai ..!! |
23-08-2008, 06:41 PM | #8 | |
Trưởng lão PIC bang
|
Trích:
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 |
|
14-09-2008, 09:05 PM | #9 | |
Đệ tử 5 túi
Tham gia ngày: Mar 2008
Nơi Cư Ngụ: Bình Thạnh, TPHCM
Bài gửi: 98
: |
!!!
Trích:
Thanks bác nhá!
__________________
------------------------------------------------------------------- Cung cấp bo mạch thực hành Arduino và các mạch sáng tạo. Mời tham quan: https://www.facebook.com/eshop1109 Cung cấp dịch vụ order hàng từ Aliexpress Liên hệ: https://www.facebook.com/Mua-h%E1%BB...5265931515571/ |
|
15-09-2008, 09:15 AM | #10 |
Đệ tử 5 túi
Tham gia ngày: Jun 2008
Bài gửi: 112
: |
Thắc mắc 8255????
Giả sử em muốn cấu hình cho 8255 như sau: Pa là đầu vào ,Pb là đầu ra ,Pcl ( 4 biet thấp của Pc) là đầu vào _PCh (4 bit cao của Pc ) là đầu ra .vậy thì em phải cho A0A1 = 11 để nghi giá trị thiết lập vào thanh nghi điều khiển ,với yêu cầu trên thì cần phải nạp giá trị vào thanh nghi điều khiển là : 0b10010000 ( 90h )
sau khi thiết lập được như trên rồi em muốn xuất tín hiệu ra cổng Pb và đọc dữ liệu từ cổng PCl thì phải làm thế nào và khi đó 2 bit A0,A1 sẽ ở trạng thái như thế nào? cổng dữ liệu chỉ có 1 ,làm thế nào để pic có thể hiểu được là em cần đọc giá trị tại PCl .... trong 8051 khi giao tiếp với 8255 thì mỗi cổng PA,Pb,Pc và các chế độ khác nhau đều có một địa chỉ riêng để gửi và nhận dữ liệu lên rất rễ ràng sử dụng Như bac Nam hướng dẫn thì em vẫn mơ hồ quá . Mong bác và mọi người trên diễn đàn hiể u về vấn đề này chỉ bảo ************** Thanks....................
__________________
** xin hãy cho tôi là tượng đá ** Để muôn đời không nhớ thương ai ..!! |
15-09-2008, 06:19 PM | #11 | |
Trưởng lão PIC bang
|
Trích:
- Xuất ra PB: A1 = '0', A0 = '1', RD = '0', WR = '1', CS = '0', ghi dữ liệu ra data bus (các chân PIC nối với data bus phải được thiết lập như ngõ ra, TRISx = 0x00) - Đọc về từ PCL: A1 = '1', A0 = '0', RD = '1', WR = '0', CS = '0', đọc dữ liệu từ data bus (các chân PIC nối với data bus phải được thiết lập như ngõ vào, TRISx = 0xFF). Như bạn có thể thấy, mỗi port vẫn có địa chỉ riêng (quy định bởi A1A0), và vẫn có thể đọc/ghi từ data bus (cần chú ý thiết lập các bit TRISx thích hợp). Thông tin về cách làm việc của 8255 được nêu rõ ràng trong datasheet của 8255, đề nghị bạn xem lại kỹ hơn. 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 |
|
23-09-2013, 12:47 AM | #12 |
Nhập môn đệ tử
Tham gia ngày: Jan 2013
Bài gửi: 4
: |
bạn inventor_bk ơi, mình có thề xin code và file mô phỏng proteus của bạn dc ko. mình làm mà nó không chạy
mail mình là hoainam170392@gmai.com thank bạn |
|
|