![]() |
Nhờ các bác cho em hỏi về cách định địa chỉ gián tiếp, thanh ghi SFR, INDF và những vấn đề liên quan
|
Trích:
|
xin cho minh hoi: cac ban dung chuong trinh gi ma mo phong duoc cac mach dien dem len vay, hay dong ho do ma. cam on nhieu
|
lap trinh pic 16f876a
cac anh oi , cho em noi la : lap trinh voi pic 16f877a cung giong het voi lap trinh cho con pic 16f876a phai khong? a`, phan mem asm de viet cho pic down o dau vay cac anh
|
Câu hỏi 1: Đúng, ngoại trừ PIC16F877A có một số chân và thanh ghi tương ứng mà PIC16F876A không có.
Câu hỏi 2: vào link sau download MPLAB IDE, trong đó có trình hợp dịch, bộ mô phỏng, và một số thứ khác http://www.microchip.com/stellent/id...&part=SW007002 Thân, |
tôi thấy tất cả các diễn đàn đều rất hay. Cả chuyện bác F muốn giúp các bạn học qua một công việc cụ thể nữa. Tất cả đều là ý tưởng tốt. Nhưng tôi có chút ý kiến. Học về 1 con 16f877a này cũng tốt. Nhưng chúng ta học bằng các dự án như bác F làm thì tốt hơn học "chay" thế này. Nhưng mới cái bắt đầu mà bác F đã yêu cầu nặng anh em quá. Anh em sv chủ yếu là ít tiền. Đấy là cái thứ nhất (kể cả vài trăm ngàn thôi cũng khó khăn), thứ 2 tôi thấy công việc ấy cũng hơi nặng so với sức chung của mọi người. Hy vọng các anh em admin quan tâm hơn nữa.
Thân. |
Trích:
INDF là nơi chứa kết quả hoặc giá trị mà FSR trỏ đến (tương tự @R0 hoặc @R1). |
Giup em ve bus trong Proteus
Anh nhh chỉ giúp em cách vẽ bus nhiều tín hiệu cùng đi chung với nhau như dây màu xanh nước biển anh vẽ trong proteus với, em đang bí phần đó
Thanks |
Trích:
Sau khi đưa 2 linh kiện ra, bạn nhấp vào biểu tượng bus.Click vào điểm 1, rồi double click vào điểm 2 để kết thúc.Nếu muốn vẽ điểm trung gian thì cứ click vào điểm đó là được.Sau đó nối dây bình thường. Để chương trình nhận ra chân nào của VDK nối đến chân nào của led 7 thanh, bạn cần đặt nhãn cho các cặp chân tương ứng trên 2 linh kiện này. Vào biểu tượng wire label: Click vào 1 dây bạn muốn đặt label: Làm tương tự cho dây còn lại: Tiếp tục cho các cặp chân khác. Chúc thành công ! |
Cám ơn anh rất nhiều
|
Trích:
Đó là chuyện hồi trước F học, bây giờ các bạn có nhiều công cụ để học, thoải mái hơn, thông tin nhiều hơn. Điều đó là tốt hơn rất nhiều. Như vậy học chay hay không chay, tùy thuộc vào mỗi người. Có người thì thông minh theo kiểu tưởng tượng (vd F cũng là kiểu đó, cho nên ngồi tưởng tượng tốt). Có người thông minh theo kiểu trực quan (vd như F nhìn vào cái máy mà nó dập bụp bụp bụp, F khó mà học hiểu cái đó, nhưng có nhiều người nhìn vào cái máy thôi, lại hiểu ngay và có thể chế cái máy tương tự).... Đó là cách người ta nói về trí thông minh của loài người, mỗi người có một khả năng thông minh khác nhau. Do vậy, F không cho rằng cách học nào tốt hơn cách học nào, mà chỉ khuyên mọi người chọn cách học tốt nhất cho chính mình. Về vấn đề tài chính để học. Sự thực là picvietnam đã hỗ trợ 120K (theo giá thị trường) cho một đề tài nghiên cứu của các bạn, mà đề tài đó theo kinh nghiệm thực hành của các bạn kể trên khi khoảng 200 - 300K. Đúng là con số khá lớn đối với một số bạn sinh viên. Nhưng nếu các bạn không nhân những cơ hội này đầu tư vào để học, để thực hành, thì các bạn sẽ tốn nhiều cái 100K vào những việc vô bổ khác. Hãy can đảm nói với bạn gái của mình rằng, anh muốn dành một chút tiền để đầu tư vào việc học. Nếu các bạn thực sự học và làm việc, khi các bạn kết thúc dự án, và có kết quả khả dĩ vì những tìm hiểu học tập của các bạn. F sẽ mua lại mô hình đó cho các bạn. (miễn sao đừng bán mắc cho F, vì F không có tiền nhiều đâu, chỉ là giúp đỡ các bạn thực sự khó khăn thôi, hihi..). Nói để các bạn thấy việc này. Để làm cái mô hình của F ở bên Hàn, giáo sư đã phải bỏ 5000$ tới thời điểm này mà chưa ra cái hình thù gì cả. Trong khi đó, ở VN mà làm thì cái mô hình F đang làm về haptics 1 bậc tự do, thì thực ra chỉ là 2 cái động cơ, mấy miếng nhôm lớn. Cùng lắm chỉ 3 triệu động là căng. Tất nhiên động cơ và driver mua mới thì tốn kém, còn mua ở nhà mình chơi đồ cũ, nhưng có ảnh hưởng gì nhiều đâu. Vậy nên việc nghiên cứu ở nước ngoài, còn khó khăn hơn ta nhiều, về nhiều khía cạnh, nhất là chi phí đầu tư thử nghiệm. Có những cái quá cao cấp, thì chúng ta không làm được, nhưng tốn 500K đi nữa, để học một bộ điều khiển mà 90% các bộ điều khiển công nghiệp phải sử dụng thì F không nghĩ nó là quá nhiều. Và nó rẻ ngang với việc theo một lớp học PIC. Trong khi học cái này thì có thể giữ được mô hình, lại có thêm 2 con PIC... Các bạn tính toán thật kỹ vì cơ hội không có lần thứ hai đâu :). Đây là lần đầu tiên, F thực hiện việc này, chủ yếu để thử nghiệm mô hình dự án mở trên mạng, sau đó, tất nhiên, nếu có thể, F sẽ kêu gọi những nhà tài trợ cho các dự án kiểu như thế này. Lúc đó sẽ tốt hơn cho các bạn, nhưng bây giờ tiếng nói của F chưa đủ mạnh với những nhà tài trợ, vì ... các bạn chưa làm xong dự án :). Chúc vui. |
Trích:
==> không lẽ lúc đó con Pic sẽ vào ngắt tiếp hả anh ? À quên nữa,trong chương trình của em thấy anh viết thiếu lệnh nhảy tới đoạn pop các giá trị của thanh khi W,Status,Pclath trong ngắt nữa, theo em ta nên đặt nhãn đoạn này là Pop và thay thế các lệnh retfie ở trên bằng lệnh goto pop @nhh : anh viết rất hay,tiếp tục viết nhiều bài như thế nữa đi anh |
Bác nào biết về A/D converter trong PIC16F877A xin chỉ dùm. Tui đã đọc rồi nhưng thấy khó hiểu quá, nhất là chế độ sleep của nó và cơ chế biến đổi từ tín hiệu analog thành 10 bit đầu ra.
Cám ơn các bác nhiều! |
Trích:
+ Ngắt cạnh xuống: low to high Code:
BCF OPTION_REG,INTEDG ;interrupt cạnh xuống Code:
BSF OPTION_REG,INTEDG ;interrupt cạnh lên Vậy ở đây, khi thả button lên, tuy có thay đổi trạng thái chân RB0, vẫn không có ngắt xảy ra. Mình không viết bằng MPASM nữa, nên bạn qua luồng "PIC16F877A từ dễ tới khó", đọc các tutorial của mod Chính. Chúc thành công! |
Trích:
|
Trích:
Theo đúng nghĩa của ngắt thay đổi, sườn lên hay sườn xuống đều phải gây ngắt và việc lựa chọn sườn tác động nào để gây ngắt là do người lập trình quyết định. Các bạn có thể tham khảo ở một appnote của Microchip vận dụng ngắt onchange để dùng như ngắt ngoài sẽ rõ. |
Sao không thấy bác nào viết về ADC, PWM vậy nhỉ !
|
Giúp em với
Trích:
+Khi cấu hình là ngõ vào thì cần phải có lệnh BCF option_reg,not_RBPU để cho phép điện trở kéo lên bên trong phải không ạ? Nhưng em thấy bài quét phím 4x4 của anh em thấy không có lệnh này. +Chương trình quét phím 4x4 của anh khi mô phỏng Proteus thì chính xác nhưng khi em đem ra mạch thật test thử thì không đúng nữa.(không biết anh đã test thử trên mạch thật chưa?) à,khi em đem ra mạch thật test thì ngõ xuất LED 7 đoạn là Port D chứ không phải Port C . Mong anh giải đáp giúp em một số thăc mác trên,chờ tin anh @NHH:Anh học BK Tphcm phải không ? Nếu anh học ở đó thì anh có thể cho em gặp riêng không ? @picpicpic :Bạn qua dientuvietnam.net xem sao |
Hic,anh NHH đâu rồi trả lời giúp em đi
|
Trích:
|
Trích:
OPTION_REG REGISTER (ADDRESS 81h, 181h) Bit6: INTEDG : Interrupt Edge Select bit 1 = Interrupt on rising edge of RB0/INT pin 0 = Interrupt on falling edge of RB0/INT pin Vậy thì có bit INTEDG chọn cạnh ngắt lên hay xuống mà Newuser ? Mình cũng đã xem apnote AN552:Implementing Wake-up on Key Stroke của Microchip rồi cũng thấy không nói về bit xác định sườn ngắt chân RB4...RB7 Chắc có lẽ như bạn nói là không có bit để chọn cạnh ngắt như RB0 mà mình phải xác định trong chương trình của mình. Còn chương trình quét phím 4x4 của anh NHH trên mình đã test thử trên Proteus thì chạy tốt nhưng khi đem ra mạch thật thì không chạy được Bạn test giùm minh nhé Newuser,mình cũng đã thử viết lại nhiều lần rồi nhưng vãn chưa được. Mình có nhiều vấn đề vẫn chưa thông lắm bạn Newuser giúp mình nhé |
1 Attachment(s)
Trích:
để đảm bảo là không có ngắt không mong muốn xảy ra mỗi khi nhả phím thì bạn phải viết thêm một đoạn code kiểm tra trạng thái chân gây ngắt onchange, chắc chắn rằng trạng thái chân này đã trở về mức logic ban đầu(trạng thái trước khi nhấn phím), nếu chưa về trạng thái ban đầu thì chưa xoá cờ báo ngắt. Tôi không biết đoạn chương trình của bạn nhh, nhưng theo tôi suy đoán,Proteus đã lý tưởng hoá việc nhấn phím -->không khử nảy phím nhấn. bạn đọc appnote này xem |
Thanks newuser đúng là cái mình cần.
|
pic
em cung moi nghien cuu ve con pic6f877a , em cung thay mach nap cua may bac nhung sao ko thay co bo nguon cung cap cho no vay
|
Đề nghị bạn post tiếng việt có dấu,nếu bạn ở tpHCM bạn có thể qua cửa hàng (của PICVIETNAM ) : STH ở đường Lạc Long Quân gần chỗ giao với Âu Cơ
|
Trích:
co bac nao chay thu chuong trinh nay tren phan cung chua? Em da chay thu tren phan cung voi Thach Anh 20MHz nhung no ko chay anh em nao da co chuong trinh chay tot tren phan cung giai ma ban phim thi post len cho em xin dc ko? chuong trinh bac NHH viet thi chay rat tot khi mo phong bang Proteus nhung khi chay tren phan cung thi ko dc? Mong bac nao giup em voi?? |
sao khong co ai tra loi giup vay ?
bun wa! |
Trích:
http://www.picvietnam.com/forum/show...ted=1#post7001 |
anh có thể nói rỏ hơn về sơ đồ hoạt động của mạch ko
|
chủ đề này khá hấp dẫn!! thanks may anh
|
Em có 1 yêu cầu đặt ra nhờ anh giúp đở. em có 1 cái tivi 1 bảng quang báo được điều khiển bằng máy tính.khi nội dung hình ảnh và âm thanh hiện lên tivi thì quang báo bằt đầu chạy chữ về nội dung hình ảnh và âm thanh đó anh chỉ em cách làm đi! EM RẤT MONG ĐưỢC SỰ GIÚP Đở CỦA ANH-THÂN CHÀO ANH
|
Trích:
|
buồn quá không ai giúp đỡ hết,
Mấy anh ơi em đang làm đề tài nghiên cứu 16f877a, em gặp đề tài mừng quá đăng kí ngay vào diễn đàn liền! em làm cái đề tài là quang báo gồm 1 ma trận 8x160 tức gồm 20 matrận led 8x8, bảng quang báo này chạy chử ngược xuôi,từ trung tâm ra,chử rớt từ bên trái qua phải-phải qua trái. các anh giúp em giải thuật với,con 2 tháng nửa là nộp rồi -em đợi tin các anh thân chào! |
xin anhh post tiếp bài cho anh em nhờ!!hôm nay ghé qua room này!thấy bài bác anhh viết hay quá!nên down Protues về tét thử ,thấy mạch chạy ok ,tự nhiên thấy yêu Pic vô cùng!!Xin anhh post thêm ít bài nữa cho anh em có cơ hội học hỏi thêm!!
|
Trong hàm init chọn như sau: dùng pre cho timer0 với tỉ lệ 1:2
Code:
void init(void){ Bác Ngô ơi giúp em với,trong CCS cờ ngắt timer0 là gì vậy? em đọc trong trong thư viện 16f877a.h kô thấy no định nghĩa chỗ này.Em liều lam đại thì nó ko chịu--->em pó tay.Và cái cho phép ngắt toàn cục ko thấy ai nói đến vậy?Và cách tính khoản giá trị nạp ban đầu cho timer? VD : em muốn tạo ra một xung với tần số là 10Khz o portD.7 . f=100Khz =>T=1/10=0.1ms=100micro giây. | chu ky may dai 1 micro s, ==> cần có 50 micro s tương đương với 50 lần đếm lên của timer ==> giá trị cần nạp cho timer la : 256 - 50=206=0xCE Nếu là 8051 thi ta nạp vào thanh TH0=0xCE ; Vậy đối với Pic 16f877A cái giá trị đó giờ phải viết vào đâu vậy bác Ngô ?giúp em với. Các bác có thể chỉ rõ hơn về vấn đề timer này khi dùng CCS ko vậy? Thanks các bác . |
Trích:
Chúc vui |
mới học->mong các bác giúp dỡ
Bác nào có thể giảng giúp em về phần khởi tạo cho Pic ko? Đằng sau __CONFIG viết nhưng cái gì?em ko hiểu được,mong các bác chỉ giáo
|
Trích:
Thân, |
em đang tìm hiểu về pic16f877a,viết bằng MPASM,nhưng em ko hiểu đàng sau _CONFIG phải khai báo những gì,căn cứ vào đầu? Mong bác chỉ giáo dùm
|
Trích:
Code:
__CONFIG _HS_OSC & _CP_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _LVP_OFF & _DEBUG_OFF |
Múi giờ GMT. Hiện tại là 08:51 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam